@@ -25,8 +25,8 @@ def get_arguments():
2525 buildopt = parser .add_argument_group ('general build options' )
2626 buildopt .add_argument ('-t' , '--target' , metavar = 'ARCH' , choices = ['X86' , 'AArch64' , 'PowerPC' ], default = 'X86' ,
2727 help = 'Control which targets are enabled (%(choices)s) (default: %(default)s)' )
28- buildopt .add_argument ('-p' , '--install-prefix' , metavar = 'PATH' , nargs = '?' , default = Path ( settings . LLVM_DIR , '..' , 'install' ) , const = False ,
29- help = 'install directory (default: %(default)s) ' )
28+ buildopt .add_argument ('-p' , '--install-prefix' , metavar = 'PATH' , nargs = '?' , default = None , const = False ,
29+ help = 'Install directory (default: do not install) ' )
3030 buildopt .add_argument ('-j' , '--jobs' , metavar = 'N' , type = int , default = os .cpu_count (),
3131 help = 'number of parallel build jobs (default: %(default)s)' )
3232 buildopt .add_argument ('--toolchain' , metavar = 'FILE' , default = default_toolchain ().as_posix (),
@@ -53,19 +53,21 @@ def get_arguments():
5353 return arguments
5454
5555def generate_buildoptions (arguments ):
56- install_root = Path (arguments .install_prefix )
57-
5856 base_cmake_args = [
59- f'-DCMAKE_INSTALL_PREFIX={ install_root .as_posix ()} ' ,
6057 f'-DCMAKE_BUILD_TYPE={ arguments .build_type } ' ,
6158 f'-DCMAKE_TOOLCHAIN_FILE={ arguments .toolchain } '
6259 ]
60+
6361 if sys .platform == 'win32' and platform .uname ()[4 ].lower () == 'arm64' :
6462 base_cmake_args .append ('-GNMake Makefiles' )
6563 else :
6664 generator = 'Ninja' if sys .platform == 'win32' else 'Unix Makefiles'
6765 base_cmake_args .append (f'-G{ generator } ' )
6866
67+ if arguments .install_prefix :
68+ install_root = Path (arguments .install_prefix )
69+ base_cmake_args .append (f'-DCMAKE_INSTALL_PREFIX={ install_root .as_posix ()} ' )
70+
6971 if arguments .use_ccache :
7072 base_cmake_args .append ('-DCMAKE_C_COMPILER_LAUNCHER=ccache' )
7173 base_cmake_args .append ('-DCMAKE_CXX_COMPILER_LAUNCHER=ccache' )
@@ -144,7 +146,8 @@ def main():
144146 print_header ('Building classic llvm' )
145147 build_path = configure_llvm (arguments )
146148 build_project (build_path , arguments )
147- install_project (build_path , arguments )
149+ if arguments .install_prefix is not None :
150+ install_project (build_path , arguments )
148151
149152if __name__ == "__main__" :
150153 main ()
0 commit comments