forked from OSchip/llvm-project
[CMake] Only generate Components.cmake if components are specified
Generating the Components import file is useless if there are no components coming in from the runtimes configuration, so we should skip generation in that case. This also should fix the configuration error that Renato reported on llvm-dev. llvm-svn: 279893
This commit is contained in:
parent
28fa3c519c
commit
bc3940e7ec
|
@ -90,25 +90,27 @@ if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR})
|
|||
endif()
|
||||
|
||||
get_property(SUB_COMPONENTS GLOBAL PROPERTY SUB_COMPONENTS)
|
||||
list(REMOVE_DUPLICATES SUB_COMPONENTS)
|
||||
foreach(component ${SUB_COMPONENTS})
|
||||
if(NOT TARGET ${component})
|
||||
message(SEND_ERROR "Missing target for runtime component ${component}!")
|
||||
continue()
|
||||
endif()
|
||||
if(LLVM_INCLUDE_TESTS AND NOT TARGET check-${component})
|
||||
message(SEND_ERROR "Missing check target for runtime component ${component}!")
|
||||
continue()
|
||||
endif()
|
||||
if(SUB_COMPONENTS)
|
||||
list(REMOVE_DUPLICATES SUB_COMPONENTS)
|
||||
foreach(component ${SUB_COMPONENTS})
|
||||
if(NOT TARGET ${component})
|
||||
message(SEND_ERROR "Missing target for runtime component ${component}!")
|
||||
continue()
|
||||
endif()
|
||||
if(LLVM_INCLUDE_TESTS AND NOT TARGET check-${component})
|
||||
message(SEND_ERROR "Missing check target for runtime component ${component}!")
|
||||
continue()
|
||||
endif()
|
||||
|
||||
if(TARGET install-${component})
|
||||
list(APPEND SUB_INSTALL_TARGETS install-${component})
|
||||
endif()
|
||||
endforeach()
|
||||
if(TARGET install-${component})
|
||||
list(APPEND SUB_INSTALL_TARGETS install-${component})
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
configure_file(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Components.cmake.in
|
||||
${LLVM_BINARY_DIR}/runtimes/Components.cmake)
|
||||
configure_file(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Components.cmake.in
|
||||
${LLVM_BINARY_DIR}/runtimes/Components.cmake)
|
||||
endif()
|
||||
|
||||
else() # if this is included from LLVM's CMake
|
||||
include(${LLVM_BINARY_DIR}/runtimes/Components.cmake OPTIONAL)
|
||||
|
|
Loading…
Reference in New Issue