XCore
)
-# List of targets whose asmprinters need to be forced to link
-# into executables on some platforms (i.e. Windows):
-set(LLVM_ASMPRINTERS_FORCE_LINK X86 PowerPC)
-
if( MSVC )
set(LLVM_TARGETS_TO_BUILD X86
CACHE STRING "Semicolon-separated list of targets to build, or \"all\".")
function(explicit_llvm_config executable)
set( link_components ${ARGN} )
- set(lfgs)
- if (MSVC)
- if( CMAKE_CL_64 )
- set(include_lflag "/INCLUDE:")
- else( CMAKE_CL_64 )
- set(include_lflag "/INCLUDE:_")
- endif()
- foreach(c ${link_components})
- if( c STREQUAL "jit" )
- set(lfgs "${lfgs} ${include_lflag}X86TargetMachineModule")
- endif( c STREQUAL "jit" )
- list(FIND LLVM_TARGETS_TO_BUILD ${c} idx)
- if( NOT idx LESS 0 )
- set(lfgs "${lfgs} ${include_lflag}${c}TargetMachineModule")
- list(FIND LLVM_ASMPRINTERS_FORCE_LINK ${c} idx)
- if( NOT idx LESS 0 )
- set(lfgs "${lfgs} ${include_lflag}${c}AsmPrinterForceLink")
- endif()
- endif()
- endforeach(c)
- endif ()
-
explicit_map_components_to_libraries(LIBRARIES ${link_components})
target_link_libraries(${executable} ${LIBRARIES})
-
- if( lfgs )
- set_target_properties(${executable}
- PROPERTIES
- LINK_FLAGS ${lfgs})
- endif()
endfunction(explicit_llvm_config)