Index: cmake/modules/LLVM-Config.cmake =================================================================== --- cmake/modules/LLVM-Config.cmake +++ cmake/modules/LLVM-Config.cmake @@ -17,12 +17,15 @@ string(TOUPPER "${LLVM_ALL_TARGETS}" targets) foreach(t ${targets}) if( capitalized_lib STREQUAL t OR - capitalized_lib STREQUAL "LLVM${t}" OR - capitalized_lib STREQUAL "LLVM${t}CODEGEN" OR - capitalized_lib STREQUAL "LLVM${t}ASMPARSER" OR - capitalized_lib STREQUAL "LLVM${t}ASMPRINTER" OR - capitalized_lib STREQUAL "LLVM${t}DISASSEMBLER" OR - capitalized_lib STREQUAL "LLVM${t}INFO" ) + capitalized_lib STREQUAL "${t}" OR + capitalized_lib STREQUAL "${t}DESC" OR + capitalized_lib STREQUAL "${t}CODEGEN" OR + capitalized_lib STREQUAL "${t}ASMPARSER" OR + capitalized_lib STREQUAL "${t}ASMPRINTER" OR + capitalized_lib STREQUAL "${t}DISASSEMBLER" OR + capitalized_lib STREQUAL "${t}INFO" OR + capitalized_lib STREQUAL "${t}UTILS" OR + capitalized_lib STREQUAL "${t}INSTPRINTER" ) set(${return_var} ON PARENT_SCOPE) break() endif() @@ -200,7 +203,11 @@ # The component is unknown. Maybe is an omitted target? is_llvm_target_library(${c} iltl_result) if( NOT iltl_result ) - message(FATAL_ERROR "Library `${c}' not found in list of llvm libraries.") + # If it is not an omitted target we should assume it is a component + # that hasn't yet been processed by CMake. Missing components will + # cause errors later in the configuration, so we can safely assume + # that this is valid here. + list(APPEND expanded_components LLVM${c}) endif() else( lib_idx LESS 0 ) list(GET LLVM_AVAILABLE_LIBS ${lib_idx} canonical_lib)