diff options
author | NAKAMURA Takumi <geek4civic@gmail.com> | 2014-02-21 14:16:52 +0000 |
---|---|---|
committer | NAKAMURA Takumi <geek4civic@gmail.com> | 2014-02-21 14:16:52 +0000 |
commit | 83782f2571d25ec035a353acce17c8b86c5cb4ad (patch) | |
tree | b92ea4620d84cf1773767facdba3543872ba0ba4 /cmake | |
parent | 10ecde5c3442cd24c8f13bd29c20a2c48be1bad8 (diff) | |
download | llvm-83782f2571d25ec035a353acce17c8b86c5cb4ad.tar.gz llvm-83782f2571d25ec035a353acce17c8b86c5cb4ad.tar.bz2 llvm-83782f2571d25ec035a353acce17c8b86c5cb4ad.tar.xz |
Teach LLVM-Config to use logical target names (1/2)
LLVM library names are now available as logical CMake targets both
to our own build and to application CMake code. Replace use of
'list(FIND)' with a simple 'if(TARGET)' to determine whether a
library is available.
Contributed by Brad King.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201852 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/modules/LLVM-Config.cmake | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/cmake/modules/LLVM-Config.cmake b/cmake/modules/LLVM-Config.cmake index 3139564932..62470d0dde 100644 --- a/cmake/modules/LLVM-Config.cmake +++ b/cmake/modules/LLVM-Config.cmake @@ -104,31 +104,25 @@ function(llvm_map_components_to_libnames out_libs) # add codegen, asmprinter, asmparser, disassembler list(FIND LLVM_TARGETS_TO_BUILD ${c} idx) if( NOT idx LESS 0 ) - list(FIND llvm_libs "LLVM${c}CodeGen" idx) - if( NOT idx LESS 0 ) + if( TARGET LLVM${c}CodeGen ) list(APPEND expanded_components "LLVM${c}CodeGen") else() - list(FIND llvm_libs "LLVM${c}" idx) - if( NOT idx LESS 0 ) + if( TARGET LLVM${c} ) list(APPEND expanded_components "LLVM${c}") else() message(FATAL_ERROR "Target ${c} is not in the set of libraries.") endif() endif() - list(FIND llvm_libs "LLVM${c}AsmPrinter" asmidx) - if( NOT asmidx LESS 0 ) + if( TARGET LLVM${c}AsmPrinter ) list(APPEND expanded_components "LLVM${c}AsmPrinter") endif() - list(FIND llvm_libs "LLVM${c}AsmParser" asmidx) - if( NOT asmidx LESS 0 ) + if( TARGET LLVM${c}AsmParser ) list(APPEND expanded_components "LLVM${c}AsmParser") endif() - list(FIND llvm_libs "LLVM${c}Info" asmidx) - if( NOT asmidx LESS 0 ) + if( TARGET LLVM${c}Info ) list(APPEND expanded_components "LLVM${c}Info") endif() - list(FIND llvm_libs "LLVM${c}Disassembler" asmidx) - if( NOT asmidx LESS 0 ) + if( TARGET LLVM${c}Disassembler ) list(APPEND expanded_components "LLVM${c}Disassembler") endif() elseif( c STREQUAL "native" ) @@ -189,12 +183,10 @@ endfunction() function(explicit_map_components_to_libraries out_libs) llvm_map_components_to_libnames(link_libs ${ARGN}) llvm_expand_dependencies(expanded_components ${link_libs}) - get_property(llvm_libs GLOBAL PROPERTY LLVM_LIBS) # Return just the libraries included in this build: set(result) foreach(c ${expanded_components}) - list(FIND llvm_libs ${c} lib_idx) - if( NOT lib_idx LESS 0 ) + if( TARGET ${c} ) set(result ${result} ${c}) endif() endforeach(c) |