summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorNAKAMURA Takumi <geek4civic@gmail.com>2014-02-21 14:16:52 +0000
committerNAKAMURA Takumi <geek4civic@gmail.com>2014-02-21 14:16:52 +0000
commit83782f2571d25ec035a353acce17c8b86c5cb4ad (patch)
treeb92ea4620d84cf1773767facdba3543872ba0ba4 /cmake
parent10ecde5c3442cd24c8f13bd29c20a2c48be1bad8 (diff)
downloadllvm-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.cmake22
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)