[Mlir-commits] [mlir] 4c6242e - [mlir] Link libraries that aren't included in libMLIR to libMLIR (#123781)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Tue Jan 21 23:54:58 PST 2025
Author: Michał Górny
Date: 2025-01-22T07:54:54Z
New Revision: 4c6242ebf50dde0597df2bace49d534b61122496
URL: https://github.com/llvm/llvm-project/commit/4c6242ebf50dde0597df2bace49d534b61122496
DIFF: https://github.com/llvm/llvm-project/commit/4c6242ebf50dde0597df2bace49d534b61122496.diff
LOG: [mlir] Link libraries that aren't included in libMLIR to libMLIR (#123781)
Use `mlir_target_link_libraries()` to link dependencies of libraries
that are not included in libMLIR, to ensure that they link to the dylib
when they are used in Flang. Otherwise, they implicitly pull in all
their static dependencies, effectively causing Flang binaries to
simultaneously link to the dylib and to static libraries, which is never
a good idea.
I have only covered the libraries that are used by Flang. If you wish, I
can extend this approach to all non-libMLIR libraries in MLIR, making
MLIR itself also link to the dylib consistently.
[v2 with fixed `-DBUILD_SHARED_LIBS=ON` build]
Added:
Modified:
mlir/cmake/modules/AddMLIR.cmake
mlir/lib/CAPI/ExecutionEngine/CMakeLists.txt
mlir/lib/ExecutionEngine/CMakeLists.txt
mlir/lib/ExecutionEngine/SparseTensor/CMakeLists.txt
mlir/test/lib/Analysis/CMakeLists.txt
mlir/test/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
mlir/test/lib/Conversion/FuncToLLVM/CMakeLists.txt
mlir/test/lib/Conversion/MathToVCIX/CMakeLists.txt
mlir/test/lib/Conversion/OneToNTypeConversion/CMakeLists.txt
mlir/test/lib/Conversion/VectorToSPIRV/CMakeLists.txt
mlir/test/lib/Dialect/Affine/CMakeLists.txt
mlir/test/lib/Dialect/Arith/CMakeLists.txt
mlir/test/lib/Dialect/ArmNeon/CMakeLists.txt
mlir/test/lib/Dialect/ArmSME/CMakeLists.txt
mlir/test/lib/Dialect/Bufferization/CMakeLists.txt
mlir/test/lib/Dialect/ControlFlow/CMakeLists.txt
mlir/test/lib/Dialect/DLTI/CMakeLists.txt
mlir/test/lib/Dialect/Func/CMakeLists.txt
mlir/test/lib/Dialect/GPU/CMakeLists.txt
mlir/test/lib/Dialect/LLVM/CMakeLists.txt
mlir/test/lib/Dialect/Linalg/CMakeLists.txt
mlir/test/lib/Dialect/Math/CMakeLists.txt
mlir/test/lib/Dialect/MemRef/CMakeLists.txt
mlir/test/lib/Dialect/Mesh/CMakeLists.txt
mlir/test/lib/Dialect/NVGPU/CMakeLists.txt
mlir/test/lib/Dialect/SCF/CMakeLists.txt
mlir/test/lib/Dialect/SPIRV/CMakeLists.txt
mlir/test/lib/Dialect/Shape/CMakeLists.txt
mlir/test/lib/Dialect/Tensor/CMakeLists.txt
mlir/test/lib/Dialect/Test/CMakeLists.txt
mlir/test/lib/Dialect/TestDyn/CMakeLists.txt
mlir/test/lib/Dialect/Tosa/CMakeLists.txt
mlir/test/lib/Dialect/Transform/CMakeLists.txt
mlir/test/lib/Dialect/Vector/CMakeLists.txt
mlir/test/lib/IR/CMakeLists.txt
mlir/test/lib/Interfaces/LoopLikeInterface/CMakeLists.txt
mlir/test/lib/Interfaces/TilingInterface/CMakeLists.txt
mlir/test/lib/Pass/CMakeLists.txt
mlir/test/lib/Reducer/CMakeLists.txt
mlir/test/lib/Rewrite/CMakeLists.txt
mlir/test/lib/Tools/PDLL/CMakeLists.txt
mlir/test/lib/Transforms/CMakeLists.txt
mlir/test/python/lib/CMakeLists.txt
mlir/tools/mlir-opt/CMakeLists.txt
Removed:
################################################################################
diff --git a/mlir/cmake/modules/AddMLIR.cmake b/mlir/cmake/modules/AddMLIR.cmake
index 9c7b00b660ba7d..2fc84a5b287910 100644
--- a/mlir/cmake/modules/AddMLIR.cmake
+++ b/mlir/cmake/modules/AddMLIR.cmake
@@ -305,7 +305,9 @@ endfunction()
# EXCLUDE_FROM_LIBMLIR
# Don't include this library in libMLIR.so. This option should be used
# for test libraries, executable-specific libraries, or rarely used libraries
-# with large dependencies.
+# with large dependencies. When using it, please link libraries included
+# in libMLIR via mlir_target_link_libraries(), to ensure that the library
+# does not pull in static dependencies when MLIR_LINK_MLIR_DYLIB=ON is used.
# OBJECT
# The library's object library is referenced using "obj.${name}". For this to
# work reliably, this flag ensures that the OBJECT library exists.
diff --git a/mlir/lib/CAPI/ExecutionEngine/CMakeLists.txt b/mlir/lib/CAPI/ExecutionEngine/CMakeLists.txt
index 0be8f2af5dcf49..15c72a15a9a9de 100644
--- a/mlir/lib/CAPI/ExecutionEngine/CMakeLists.txt
+++ b/mlir/lib/CAPI/ExecutionEngine/CMakeLists.txt
@@ -1,6 +1,8 @@
set(LLVM_LINK_COMPONENTS
nativecodegen
native
+ orcjit
+ support
)
# Main API shared library.
diff --git a/mlir/lib/ExecutionEngine/CMakeLists.txt b/mlir/lib/ExecutionEngine/CMakeLists.txt
index 1579cc36b5d065..dd2ac75b88798a 100644
--- a/mlir/lib/ExecutionEngine/CMakeLists.txt
+++ b/mlir/lib/ExecutionEngine/CMakeLists.txt
@@ -91,8 +91,9 @@ add_mlir_library(MLIRExecutionEngine
IPO
Passes
${LLVM_JIT_LISTENER_LIB}
+ )
- LINK_LIBS PUBLIC
+mlir_target_link_libraries(MLIRExecutionEngine PUBLIC
MLIRBuiltinToLLVMIRTranslation
MLIRExecutionEngineUtils
MLIRLLVMDialect
@@ -139,8 +140,10 @@ add_mlir_library(MLIRJitRunner
JITLink
LINK_LIBS PUBLIC
- ${dialect_libs}
MLIRExecutionEngine
+)
+mlir_target_link_libraries(MLIRJitRunner PUBLIC
+ ${dialect_libs}
MLIRFuncDialect
MLIRFuncToLLVM
MLIRIR
diff --git a/mlir/lib/ExecutionEngine/SparseTensor/CMakeLists.txt b/mlir/lib/ExecutionEngine/SparseTensor/CMakeLists.txt
index 15024b2475b91f..6ef15293434534 100644
--- a/mlir/lib/ExecutionEngine/SparseTensor/CMakeLists.txt
+++ b/mlir/lib/ExecutionEngine/SparseTensor/CMakeLists.txt
@@ -11,8 +11,8 @@ add_mlir_library(MLIRSparseTensorRuntime
Storage.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRSparseTensorRuntime PUBLIC
MLIRSparseTensorEnums
mlir_float16_utils
)
diff --git a/mlir/test/lib/Analysis/CMakeLists.txt b/mlir/test/lib/Analysis/CMakeLists.txt
index 7c6b31ae8b73e5..91879981bffd2a 100644
--- a/mlir/test/lib/Analysis/CMakeLists.txt
+++ b/mlir/test/lib/Analysis/CMakeLists.txt
@@ -21,12 +21,14 @@ add_mlir_library(MLIRTestAnalysis
EXCLUDE_FROM_LIBMLIR
LINK_LIBS PUBLIC
+ MLIRTestDialect
+ )
+mlir_target_link_libraries(MLIRTestAnalysis PUBLIC
MLIRAffineDialect
MLIRAnalysis
MLIRFunctionInterfaces
MLIRMemRefDialect
MLIRPass
- MLIRTestDialect
)
target_include_directories(MLIRTestAnalysis
diff --git a/mlir/test/lib/Conversion/ConvertToSPIRV/CMakeLists.txt b/mlir/test/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
index aeade52c7ade5d..fd557e0c989f52 100644
--- a/mlir/test/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
+++ b/mlir/test/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
@@ -4,8 +4,8 @@ add_mlir_library(MLIRTestConvertToSPIRV
TestSPIRVVectorUnrolling.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRTestConvertToSPIRV PUBLIC
MLIRArithDialect
MLIRFuncDialect
MLIRPass
diff --git a/mlir/test/lib/Conversion/FuncToLLVM/CMakeLists.txt b/mlir/test/lib/Conversion/FuncToLLVM/CMakeLists.txt
index d3dbc94a99bc7e..f190b2da5a190c 100644
--- a/mlir/test/lib/Conversion/FuncToLLVM/CMakeLists.txt
+++ b/mlir/test/lib/Conversion/FuncToLLVM/CMakeLists.txt
@@ -6,12 +6,14 @@ add_mlir_library(MLIRTestFuncToLLVM
EXCLUDE_FROM_LIBMLIR
LINK_LIBS PUBLIC
+ MLIRTestDialect
+ )
+mlir_target_link_libraries(MLIRTestFuncToLLVM PUBLIC
MLIRFuncToLLVM
MLIRLLVMCommonConversion
MLIRLLVMDialect
MLIRLLVMIRTransforms
MLIRPass
- MLIRTestDialect
)
target_include_directories(MLIRTestFuncToLLVM
diff --git a/mlir/test/lib/Conversion/MathToVCIX/CMakeLists.txt b/mlir/test/lib/Conversion/MathToVCIX/CMakeLists.txt
index 933e84722fbba8..3726993b59692f 100644
--- a/mlir/test/lib/Conversion/MathToVCIX/CMakeLists.txt
+++ b/mlir/test/lib/Conversion/MathToVCIX/CMakeLists.txt
@@ -3,8 +3,8 @@ add_mlir_library(MLIRTestMathToVCIX
TestMathToVCIXConversion.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+)
+mlir_target_link_libraries(MLIRTestMathToVCIX PUBLIC
MLIRArithDialect
MLIRFuncDialect
MLIRMathDialect
diff --git a/mlir/test/lib/Conversion/OneToNTypeConversion/CMakeLists.txt b/mlir/test/lib/Conversion/OneToNTypeConversion/CMakeLists.txt
index b72302202f72b0..f0ea87946a9831 100644
--- a/mlir/test/lib/Conversion/OneToNTypeConversion/CMakeLists.txt
+++ b/mlir/test/lib/Conversion/OneToNTypeConversion/CMakeLists.txt
@@ -4,13 +4,15 @@ add_mlir_library(MLIRTestOneToNTypeConversionPass
EXCLUDE_FROM_LIBMLIR
LINK_LIBS PUBLIC
+ MLIRTestDialect
+ )
+mlir_target_link_libraries(MLIRTestOneToNTypeConversionPass PUBLIC
MLIRFuncDialect
MLIRFuncTransforms
MLIRIR
MLIRPass
MLIRSCFDialect
MLIRSCFTransforms
- MLIRTestDialect
MLIRTransformUtils
)
diff --git a/mlir/test/lib/Conversion/VectorToSPIRV/CMakeLists.txt b/mlir/test/lib/Conversion/VectorToSPIRV/CMakeLists.txt
index 09ed283ac97bc4..cb5ecc933ad82e 100644
--- a/mlir/test/lib/Conversion/VectorToSPIRV/CMakeLists.txt
+++ b/mlir/test/lib/Conversion/VectorToSPIRV/CMakeLists.txt
@@ -3,8 +3,8 @@ add_mlir_library(MLIRTestVectorToSPIRV
TestVectorReductionToSPIRVDotProd.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRTestVectorToSPIRV PUBLIC
MLIRVectorToSPIRV
MLIRArithDialect
MLIRFuncDialect
diff --git a/mlir/test/lib/Dialect/Affine/CMakeLists.txt b/mlir/test/lib/Dialect/Affine/CMakeLists.txt
index 33cefab9fa2edf..885bc9b4c3afc9 100644
--- a/mlir/test/lib/Dialect/Affine/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Affine/CMakeLists.txt
@@ -21,6 +21,9 @@ add_mlir_library(MLIRAffineTransformsTestPasses
Core
LINK_LIBS PUBLIC
+ MLIRTestDialect
+ )
+mlir_target_link_libraries(MLIRAffineTransformsTestPasses PUBLIC
MLIRArithTransforms
MLIRAffineAnalysis
MLIRAffineTransforms
@@ -30,7 +33,6 @@ add_mlir_library(MLIRAffineTransformsTestPasses
MLIRSupport
MLIRMemRefDialect
MLIRTensorDialect
- MLIRTestDialect
MLIRVectorUtils
)
diff --git a/mlir/test/lib/Dialect/Arith/CMakeLists.txt b/mlir/test/lib/Dialect/Arith/CMakeLists.txt
index 33615ab21a177a..0c05ed5ce62107 100644
--- a/mlir/test/lib/Dialect/Arith/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Arith/CMakeLists.txt
@@ -3,8 +3,8 @@ add_mlir_library(MLIRArithTestPasses
TestEmulateWideInt.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+)
+mlir_target_link_libraries(MLIRArithTestPasses PUBLIC
MLIRArithDialect
MLIRArithTransforms
MLIRFuncDialect
diff --git a/mlir/test/lib/Dialect/ArmNeon/CMakeLists.txt b/mlir/test/lib/Dialect/ArmNeon/CMakeLists.txt
index 21548ca57701f9..460842d2385338 100644
--- a/mlir/test/lib/Dialect/ArmNeon/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/ArmNeon/CMakeLists.txt
@@ -3,8 +3,8 @@ add_mlir_library(MLIRArmNeonTestPasses
TestLowerToArmNeon.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRArmNeonTestPasses PUBLIC
MLIRArmNeonDialect
MLIRArmNeonTransforms
MLIRIR
diff --git a/mlir/test/lib/Dialect/ArmSME/CMakeLists.txt b/mlir/test/lib/Dialect/ArmSME/CMakeLists.txt
index cdd8afe1414219..9ee93dec65943c 100644
--- a/mlir/test/lib/Dialect/ArmSME/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/ArmSME/CMakeLists.txt
@@ -3,8 +3,8 @@ add_mlir_library(MLIRArmSMETestPasses
TestLowerToArmSME.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRArmSMETestPasses PUBLIC
MLIRArithToArmSME
MLIRArmSMEToLLVM
MLIRArmSMEToSCF
diff --git a/mlir/test/lib/Dialect/Bufferization/CMakeLists.txt b/mlir/test/lib/Dialect/Bufferization/CMakeLists.txt
index a183d02cefed7b..c14a9f2cc9bb08 100644
--- a/mlir/test/lib/Dialect/Bufferization/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Bufferization/CMakeLists.txt
@@ -3,8 +3,8 @@ add_mlir_library(MLIRBufferizationTestPasses
TestTensorCopyInsertion.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+)
+mlir_target_link_libraries(MLIRBufferizationTestPasses PUBLIC
MLIRBufferizationDialect
MLIRBufferizationTransforms
MLIRIR
diff --git a/mlir/test/lib/Dialect/ControlFlow/CMakeLists.txt b/mlir/test/lib/Dialect/ControlFlow/CMakeLists.txt
index 39d9555c7405e3..03ae3c749f9917 100644
--- a/mlir/test/lib/Dialect/ControlFlow/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/ControlFlow/CMakeLists.txt
@@ -3,8 +3,8 @@ add_mlir_library(MLIRControlFlowTestPasses
TestAssert.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+)
+mlir_target_link_libraries(MLIRControlFlowTestPasses PUBLIC
MLIRControlFlowToLLVM
MLIRFuncDialect
MLIRLLVMCommonConversion
diff --git a/mlir/test/lib/Dialect/DLTI/CMakeLists.txt b/mlir/test/lib/Dialect/DLTI/CMakeLists.txt
index fddc3e342e0ac9..98cf47c78866fc 100644
--- a/mlir/test/lib/Dialect/DLTI/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/DLTI/CMakeLists.txt
@@ -5,9 +5,11 @@ add_mlir_library(MLIRDLTITestPasses
EXCLUDE_FROM_LIBMLIR
LINK_LIBS PUBLIC
+ MLIRTestDialect
+ )
+mlir_target_link_libraries(MLIRDLTITestPasses PUBLIC
MLIRDLTIDialect
MLIRPass
- MLIRTestDialect
)
target_include_directories(MLIRDLTITestPasses
diff --git a/mlir/test/lib/Dialect/Func/CMakeLists.txt b/mlir/test/lib/Dialect/Func/CMakeLists.txt
index 6adf893e44f05b..1fbe1f59e2fe5d 100644
--- a/mlir/test/lib/Dialect/Func/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Func/CMakeLists.txt
@@ -5,10 +5,12 @@ add_mlir_library(MLIRFuncTestPasses
EXCLUDE_FROM_LIBMLIR
LINK_LIBS PUBLIC
+ MLIRTestDialect
+ )
+mlir_target_link_libraries(MLIRFuncTestPasses PUBLIC
MLIRAffineDialect
MLIRPass
MLIRFuncTransforms
- MLIRTestDialect
MLIRTransformUtils
)
diff --git a/mlir/test/lib/Dialect/GPU/CMakeLists.txt b/mlir/test/lib/Dialect/GPU/CMakeLists.txt
index 48cbc4ad5505b0..4ca5974ed5a493 100644
--- a/mlir/test/lib/Dialect/GPU/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/GPU/CMakeLists.txt
@@ -36,8 +36,8 @@ add_mlir_library(MLIRGPUTestPasses
TestGpuRewrite.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRGPUTestPasses PUBLIC
${LIBS}
)
diff --git a/mlir/test/lib/Dialect/LLVM/CMakeLists.txt b/mlir/test/lib/Dialect/LLVM/CMakeLists.txt
index 6a2f0ba2756d43..616f00a94a56e5 100644
--- a/mlir/test/lib/Dialect/LLVM/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/LLVM/CMakeLists.txt
@@ -4,8 +4,8 @@ add_mlir_library(MLIRLLVMTestPasses
TestPatterns.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRLLVMTestPasses PUBLIC
MLIRAffineToStandard
MLIRFuncDialect
MLIRFuncToLLVM
diff --git a/mlir/test/lib/Dialect/Linalg/CMakeLists.txt b/mlir/test/lib/Dialect/Linalg/CMakeLists.txt
index 283e426b4e5947..eb6f581252181a 100644
--- a/mlir/test/lib/Dialect/Linalg/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Linalg/CMakeLists.txt
@@ -10,8 +10,8 @@ add_mlir_library(MLIRLinalgTestPasses
TestPadFusion.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRLinalgTestPasses PUBLIC
MLIRAffineDialect
MLIRArithDialect
MLIRArithTransforms
diff --git a/mlir/test/lib/Dialect/Math/CMakeLists.txt b/mlir/test/lib/Dialect/Math/CMakeLists.txt
index 195d392d6ad346..91e70d17853697 100644
--- a/mlir/test/lib/Dialect/Math/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Math/CMakeLists.txt
@@ -5,8 +5,8 @@ add_mlir_library(MLIRMathTestPasses
TestPolynomialApproximation.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRMathTestPasses PUBLIC
MLIRMathTransforms
MLIRPass
MLIRTransformUtils
diff --git a/mlir/test/lib/Dialect/MemRef/CMakeLists.txt b/mlir/test/lib/Dialect/MemRef/CMakeLists.txt
index 0498de3eb93178..39457ab2d0bf7c 100644
--- a/mlir/test/lib/Dialect/MemRef/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/MemRef/CMakeLists.txt
@@ -7,10 +7,12 @@ add_mlir_library(MLIRMemRefTestPasses
EXCLUDE_FROM_LIBMLIR
LINK_LIBS PUBLIC
+ MLIRTestDialect
+ )
+mlir_target_link_libraries(MLIRMemRefTestPasses PUBLIC
MLIRPass
MLIRMemRefDialect
MLIRMemRefTransforms
- MLIRTestDialect
)
target_include_directories(MLIRMemRefTestPasses
diff --git a/mlir/test/lib/Dialect/Mesh/CMakeLists.txt b/mlir/test/lib/Dialect/Mesh/CMakeLists.txt
index 07e9bb6f9f238a..7bd0493d11a7ee 100644
--- a/mlir/test/lib/Dialect/Mesh/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Mesh/CMakeLists.txt
@@ -5,8 +5,8 @@ add_mlir_library(MLIRMeshTest
TestSimplifications.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRMeshTest PUBLIC
MLIRMeshDialect
MLIRMeshTransforms
MLIRPass
diff --git a/mlir/test/lib/Dialect/NVGPU/CMakeLists.txt b/mlir/test/lib/Dialect/NVGPU/CMakeLists.txt
index 6b333bdb3c08cd..025f1a0dbc488a 100644
--- a/mlir/test/lib/Dialect/NVGPU/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/NVGPU/CMakeLists.txt
@@ -3,8 +3,8 @@ add_mlir_library(MLIRNVGPUTestPasses
TestNVGPUTransforms.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRNVGPUTestPasses PUBLIC
MLIRIR
MLIRAffineDialect
MLIRAnalysis
diff --git a/mlir/test/lib/Dialect/SCF/CMakeLists.txt b/mlir/test/lib/Dialect/SCF/CMakeLists.txt
index 792430cc84b650..791c2e681415a0 100644
--- a/mlir/test/lib/Dialect/SCF/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/SCF/CMakeLists.txt
@@ -8,8 +8,8 @@ add_mlir_library(MLIRSCFTestPasses
TestWhileOpBuilder.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRSCFTestPasses PUBLIC
MLIRMemRefDialect
MLIRPass
MLIRSCFDialect
diff --git a/mlir/test/lib/Dialect/SPIRV/CMakeLists.txt b/mlir/test/lib/Dialect/SPIRV/CMakeLists.txt
index 11760da0005cc8..0e2c1344782d96 100644
--- a/mlir/test/lib/Dialect/SPIRV/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/SPIRV/CMakeLists.txt
@@ -9,8 +9,8 @@ add_mlir_library(MLIRSPIRVTestPasses
ADDITIONAL_HEADER_DIRS
${MLIR_MAIN_INCLUDE_DIR}/mlir/Dialect/SPIRV
${MLIR_MAIN_INCLUDE_DIR}/mlir/IR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRSPIRVTestPasses PUBLIC
MLIRGPUDialect
MLIRIR
MLIRPass
diff --git a/mlir/test/lib/Dialect/Shape/CMakeLists.txt b/mlir/test/lib/Dialect/Shape/CMakeLists.txt
index 545f13db25a841..90c8c6cb223b81 100644
--- a/mlir/test/lib/Dialect/Shape/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Shape/CMakeLists.txt
@@ -8,8 +8,8 @@ add_mlir_library(MLIRShapeTestPasses
ADDITIONAL_HEADER_DIRS
${MLIR_MAIN_INCLUDE_DIR}/mlir/Dialect/Shape
${MLIR_MAIN_INCLUDE_DIR}/mlir/IR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRShapeTestPasses PUBLIC
MLIRIR
MLIRPass
MLIRShapeOpsTransforms
diff --git a/mlir/test/lib/Dialect/Tensor/CMakeLists.txt b/mlir/test/lib/Dialect/Tensor/CMakeLists.txt
index f22b21d173296a..28eae8ffb670f2 100644
--- a/mlir/test/lib/Dialect/Tensor/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Tensor/CMakeLists.txt
@@ -3,8 +3,8 @@ add_mlir_library(MLIRTensorTestPasses
TestTensorTransforms.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRTensorTestPasses PUBLIC
MLIRArithDialect
MLIRLinalgDialect
MLIRPass
diff --git a/mlir/test/lib/Dialect/Test/CMakeLists.txt b/mlir/test/lib/Dialect/Test/CMakeLists.txt
index 967101242e26b5..618b13da9899f3 100644
--- a/mlir/test/lib/Dialect/Test/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Test/CMakeLists.txt
@@ -68,8 +68,8 @@ add_mlir_library(MLIRTestDialect
MLIRTestOpsIncGen
MLIRTestOpsSyntaxIncGen
MLIRTestOpsShardGen
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRTestDialect PUBLIC
MLIRControlFlowInterfaces
MLIRDataLayoutInterfaces
MLIRDerivedAttributeOpInterface
diff --git a/mlir/test/lib/Dialect/TestDyn/CMakeLists.txt b/mlir/test/lib/Dialect/TestDyn/CMakeLists.txt
index 13eb9040b07448..2c6854efee530f 100644
--- a/mlir/test/lib/Dialect/TestDyn/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/TestDyn/CMakeLists.txt
@@ -2,7 +2,7 @@ add_mlir_dialect_library(MLIRTestDynDialect
TestDynDialect.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+)
+mlir_target_link_libraries(MLIRTestDynDialect PUBLIC
MLIRIR
)
diff --git a/mlir/test/lib/Dialect/Tosa/CMakeLists.txt b/mlir/test/lib/Dialect/Tosa/CMakeLists.txt
index e5dd35d6dbcb75..7d40881ee6ee40 100644
--- a/mlir/test/lib/Dialect/Tosa/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Tosa/CMakeLists.txt
@@ -8,8 +8,8 @@ add_mlir_dialect_library(MLIRTosaTestPasses
DEPENDS
MLIRTosaPassIncGen
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRTosaTestPasses PUBLIC
MLIRFuncDialect
MLIRPass
MLIRTosaDialect
diff --git a/mlir/test/lib/Dialect/Transform/CMakeLists.txt b/mlir/test/lib/Dialect/Transform/CMakeLists.txt
index ca141d2778ee2d..512a0a89bfea91 100644
--- a/mlir/test/lib/Dialect/Transform/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Transform/CMakeLists.txt
@@ -15,8 +15,8 @@ add_mlir_library(MLIRTestTransformDialect
DEPENDS
MLIRTestTransformDialectExtensionIncGen
-
- LINK_LIBS PUBLIC
+)
+mlir_target_link_libraries(MLIRTestTransformDialect PUBLIC
MLIRIR
MLIRPass
MLIRPDLDialect
diff --git a/mlir/test/lib/Dialect/Vector/CMakeLists.txt b/mlir/test/lib/Dialect/Vector/CMakeLists.txt
index d8e6b24b0c26fa..e16937029ac0ee 100644
--- a/mlir/test/lib/Dialect/Vector/CMakeLists.txt
+++ b/mlir/test/lib/Dialect/Vector/CMakeLists.txt
@@ -3,8 +3,8 @@ add_mlir_library(MLIRVectorTestPasses
TestVectorTransforms.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRVectorTestPasses PUBLIC
MLIRAffineDialect
MLIRAnalysis
MLIRArithDialect
diff --git a/mlir/test/lib/IR/CMakeLists.txt b/mlir/test/lib/IR/CMakeLists.txt
index 01297ad0a11482..e5416da70d5008 100644
--- a/mlir/test/lib/IR/CMakeLists.txt
+++ b/mlir/test/lib/IR/CMakeLists.txt
@@ -27,8 +27,8 @@ add_mlir_library(MLIRTestIR
TestVisitorsGeneric.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRTestIR PUBLIC
MLIRPass
MLIRBytecodeReader
MLIRBytecodeWriter
diff --git a/mlir/test/lib/Interfaces/LoopLikeInterface/CMakeLists.txt b/mlir/test/lib/Interfaces/LoopLikeInterface/CMakeLists.txt
index f20219e00cb865..cb1e7adb412c5e 100644
--- a/mlir/test/lib/Interfaces/LoopLikeInterface/CMakeLists.txt
+++ b/mlir/test/lib/Interfaces/LoopLikeInterface/CMakeLists.txt
@@ -2,8 +2,8 @@ add_mlir_library(MLIRLoopLikeInterfaceTestPasses
TestBlockInLoop.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRLoopLikeInterfaceTestPasses PUBLIC
MLIRPass
MLIRLoopLikeInterface
MLIRFuncDialect
diff --git a/mlir/test/lib/Interfaces/TilingInterface/CMakeLists.txt b/mlir/test/lib/Interfaces/TilingInterface/CMakeLists.txt
index c2431dd15f1d51..657fcb76815bc6 100644
--- a/mlir/test/lib/Interfaces/TilingInterface/CMakeLists.txt
+++ b/mlir/test/lib/Interfaces/TilingInterface/CMakeLists.txt
@@ -10,8 +10,8 @@ add_mlir_library(MLIRTilingInterfaceTestPasses
MLIRTestTilingInterfaceTransformOpsIncGen
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRTilingInterfaceTestPasses PUBLIC
MLIRAffineDialect
MLIRArithDialect
MLIRIndexDialect
diff --git a/mlir/test/lib/Pass/CMakeLists.txt b/mlir/test/lib/Pass/CMakeLists.txt
index b474c1863f335b..6698af86b8ae66 100644
--- a/mlir/test/lib/Pass/CMakeLists.txt
+++ b/mlir/test/lib/Pass/CMakeLists.txt
@@ -10,8 +10,8 @@ add_mlir_library(MLIRTestPass
ADDITIONAL_HEADER_DIRS
${MLIR_MAIN_INCLUDE_DIR}/mlir/Pass
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRTestPass PUBLIC
${conversion_libs}
MLIRIR
MLIRPass
diff --git a/mlir/test/lib/Reducer/CMakeLists.txt b/mlir/test/lib/Reducer/CMakeLists.txt
index 61743b6097d612..1ea33bdd0a5b99 100644
--- a/mlir/test/lib/Reducer/CMakeLists.txt
+++ b/mlir/test/lib/Reducer/CMakeLists.txt
@@ -9,8 +9,8 @@ add_mlir_library(MLIRTestReducer
LINK_COMPONENTS
Core
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRTestReducer PUBLIC
MLIRIR
MLIRPass
MLIRSupport
diff --git a/mlir/test/lib/Rewrite/CMakeLists.txt b/mlir/test/lib/Rewrite/CMakeLists.txt
index f8926aa8e4870d..75702ca89333a5 100644
--- a/mlir/test/lib/Rewrite/CMakeLists.txt
+++ b/mlir/test/lib/Rewrite/CMakeLists.txt
@@ -7,8 +7,8 @@ if (MLIR_ENABLE_PDL_IN_PATTERNMATCH)
ADDITIONAL_HEADER_DIRS
${MLIR_MAIN_INCLUDE_DIR}/mlir/Rewrite
-
- LINK_LIBS PUBLIC
+ )
+ mlir_target_link_libraries(MLIRTestRewrite PUBLIC
MLIRIR
MLIRPass
MLIRSupport
diff --git a/mlir/test/lib/Tools/PDLL/CMakeLists.txt b/mlir/test/lib/Tools/PDLL/CMakeLists.txt
index 408c29ea35ec35..60cf30b33e5599 100644
--- a/mlir/test/lib/Tools/PDLL/CMakeLists.txt
+++ b/mlir/test/lib/Tools/PDLL/CMakeLists.txt
@@ -20,13 +20,15 @@ add_mlir_library(MLIRTestPDLL
MLIRTestPDLLPatternsIncGen
LINK_LIBS PUBLIC
+ MLIRTestDialect
+ )
+mlir_target_link_libraries(MLIRTestPDLL PUBLIC
MLIRCastInterfaces
MLIRIR
MLIRPass
MLIRPDLInterpDialect
MLIRPDLDialect
MLIRSupport
- MLIRTestDialect
MLIRTransformUtils
)
diff --git a/mlir/test/lib/Transforms/CMakeLists.txt b/mlir/test/lib/Transforms/CMakeLists.txt
index 66b1faf78e2d8b..b91265d20fb481 100644
--- a/mlir/test/lib/Transforms/CMakeLists.txt
+++ b/mlir/test/lib/Transforms/CMakeLists.txt
@@ -34,8 +34,8 @@ add_mlir_library(MLIRTestTransforms
DEPENDS
${MLIRTestTransformsPDLDep}
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRTestTransforms PUBLIC
MLIRAnalysis
MLIRFuncDialect
MLIRInferIntRangeInterface
diff --git a/mlir/test/python/lib/CMakeLists.txt b/mlir/test/python/lib/CMakeLists.txt
index 198ed8211e773f..9a813dace2f541 100644
--- a/mlir/test/python/lib/CMakeLists.txt
+++ b/mlir/test/python/lib/CMakeLists.txt
@@ -12,8 +12,8 @@ add_mlir_library(MLIRPythonTestDialect
DEPENDS
MLIRPythonTestIncGen
-
- LINK_LIBS PUBLIC
+)
+mlir_target_link_libraries(MLIRPythonTestDialect PUBLIC
MLIRInferTypeOpInterface
MLIRIR
MLIRSupport
diff --git a/mlir/tools/mlir-opt/CMakeLists.txt b/mlir/tools/mlir-opt/CMakeLists.txt
index 3563d66fa9e798..68b31e563ba351 100644
--- a/mlir/tools/mlir-opt/CMakeLists.txt
+++ b/mlir/tools/mlir-opt/CMakeLists.txt
@@ -91,8 +91,8 @@ add_mlir_library(MLIRMlirOptMain
mlir-opt.cpp
EXCLUDE_FROM_LIBMLIR
-
- LINK_LIBS PUBLIC
+ )
+mlir_target_link_libraries(MLIRMlirOptMain PUBLIC
${LIBS}
${test_libs}
)
More information about the Mlir-commits
mailing list