Use LINK_COMPONENTS instead of explicit target_link_libraries for components.
This avoids redundancy and potential inconsistencies.
Differential Revision: https://reviews.llvm.org/D91461
Target
)
-if(BUILD_SHARED_LIBS)
- target_link_libraries(LLVMExecutionEngine PUBLIC LLVMRuntimeDyld)
-endif()
-
add_subdirectory(Interpreter)
add_subdirectory(JITLink)
add_subdirectory(MCJIT)
OrcTargetProcess
Support
)
-
-target_link_libraries(LLVMJITLink
- PRIVATE
- LLVMObject
- LLVMOrcTargetProcess
- LLVMSupport
-)
intrinsics_gen
LINK_COMPONENTS
+ Analysis
+ BitReader
+ BitWriter
Core
ExecutionEngine
JITLink
add_subdirectory(Shared)
add_subdirectory(TargetProcess)
-
-target_link_libraries(LLVMOrcJIT
- PRIVATE
- LLVMAnalysis
- LLVMBitReader
- LLVMBitWriter
- LLVMPasses
- )
ADDITIONAL_HEADER_DIRS
"${LLVM_MAIN_INCLUDE_DIR}/llvm/FileCheck"
-)
-target_link_libraries(LLVMFileCheck LLVMSupport)
+ LINK_COMPONENTS
+ Support
+)
DEPENDS
acc_gen
acc_cpp
-)
-
-target_link_libraries(LLVMFrontendOpenACC LLVMSupport)
+ LINK_COMPONENTS
+ Support
+)