diff options
Diffstat (limited to 'llvm/cmake/modules/AddLLVM.cmake')
-rw-r--r-- | llvm/cmake/modules/AddLLVM.cmake | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake index 7c26e396caf..f328e049764 100644 --- a/llvm/cmake/modules/AddLLVM.cmake +++ b/llvm/cmake/modules/AddLLVM.cmake @@ -1112,7 +1112,13 @@ endfunction(llvm_canonicalize_cmake_booleans) # variables needed for the 'lit.site.cfg' files. This function bundles the # common variables that any Lit instance is likely to need, and custom # variables can be passed in. -function(configure_lit_site_cfg input output) +function(configure_lit_site_cfg site_in site_out) + cmake_parse_arguments(ARG "" "" "MAIN_CONFIG" ${ARGN}) + + if ("${ARG_MAIN_CONFIG}" STREQUAL "") + set(ARG_MAIN_CONFIG "${CMAKE_CURRENT_SOURCE_DIR}/lit.cfg") + endif() + foreach(c ${LLVM_TARGETS_TO_BUILD}) set(TARGETS_BUILT "${TARGETS_BUILT} ${c}") endforeach(c) @@ -1158,7 +1164,7 @@ function(configure_lit_site_cfg input output) set(HOST_CXX "${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1}") set(HOST_LDFLAGS "${CMAKE_EXE_LINKER_FLAGS}") - set(LIT_SITE_CFG_IN_HEADER "## Autogenerated from ${input}\n## Do not edit!") + set(LIT_SITE_CFG_IN_HEADER "## Autogenerated from ${site_in}\n## Do not edit!") # Override config_target_triple (and the env) if(LLVM_TARGET_TRIPLE_ENV) @@ -1177,10 +1183,10 @@ function(configure_lit_site_cfg input output) "import lit.llvm\n" "lit.llvm.initialize(lit_config, config)\n") - configure_file(${input} ${output} @ONLY) - get_filename_component(INPUT_DIR ${input} DIRECTORY) - if (EXISTS "${INPUT_DIR}/lit.cfg") - set(PYTHON_STATEMENT "map_config('${INPUT_DIR}/lit.cfg', '${output}')") + configure_file(${site_in} ${site_out} @ONLY) + get_filename_component(INPUT_DIR ${site_in} DIRECTORY) + if (EXISTS "${ARG_MAIN_CONFIG}") + set(PYTHON_STATEMENT "map_config('${ARG_MAIN_CONFIG}', '${site_out}')") get_property(LLVM_LIT_CONFIG_MAP GLOBAL PROPERTY LLVM_LIT_CONFIG_MAP) set(LLVM_LIT_CONFIG_MAP "${LLVM_LIT_CONFIG_MAP}\n${PYTHON_STATEMENT}") set_property(GLOBAL PROPERTY LLVM_LIT_CONFIG_MAP ${LLVM_LIT_CONFIG_MAP}) |