File tree Expand file tree Collapse file tree 11 files changed +46
-28
lines changed Expand file tree Collapse file tree 11 files changed +46
-28
lines changed Original file line number Diff line number Diff line change @@ -153,6 +153,9 @@ set(MLIR_INSTALL_AGGREGATE_OBJECTS 1 CACHE BOOL
153153
154154set (MLIR_BUILD_MLIR_C_DYLIB 0 CACHE BOOL "Builds libMLIR-C shared library." )
155155
156+ set (MLIR_LINK_MLIR_DYLIB ${LLVM_LINK_LLVM_DYLIB} CACHE BOOL
157+ "Link tools against libMLIR.so" )
158+
156159configure_file (
157160 ${MLIR_MAIN_INCLUDE_DIR} /mlir/Config/mlir-config.h.cmake
158161 ${MLIR_INCLUDE_DIR} /mlir/Config/mlir-config.h)
Original file line number Diff line number Diff line change @@ -717,3 +717,23 @@ function(mlir_check_all_link_libraries name)
717717 endforeach ()
718718 endif ()
719719endfunction (mlir_check_all_link_libraries)
720+
721+ # Link target against a list of MLIR libraries. If MLIR_LINK_MLIR_DYLIB is
722+ # enabled, this will link against the MLIR dylib instead of the static
723+ # libraries.
724+ #
725+ # This function should be used instead of target_link_libraries() when linking
726+ # MLIR libraries that are part of the MLIR dylib. For libraries that are not
727+ # part of the dylib (like test libraries), target_link_libraries() should be
728+ # used.
729+ function (mlir_target_link_libraries target type )
730+ if (TARGET obj.${target} )
731+ target_link_libraries (obj.${target} ${ARGN} )
732+ endif ()
733+
734+ if (MLIR_LINK_MLIR_DYLIB)
735+ target_link_libraries (${target} ${type} MLIR)
736+ else ()
737+ target_link_libraries (${target} ${type} ${ARGN} )
738+ endif ()
739+ endfunction ()
Original file line number Diff line number Diff line change @@ -11,16 +11,18 @@ add_mlir_tool(mlir-cpu-runner
1111 EXPORT_SYMBOLS
1212 )
1313llvm_update_compile_flags(mlir-cpu-runner)
14- target_link_libraries (mlir-cpu-runner PRIVATE
14+ mlir_target_link_libraries (mlir-cpu-runner PRIVATE
1515 MLIRAnalysis
1616 MLIRBuiltinToLLVMIRTranslation
17- MLIRExecutionEngine
1817 MLIRIR
19- MLIRJitRunner
2018 MLIRLLVMDialect
2119 MLIRLLVMToLLVMIRTranslation
2220 MLIRToLLVMIRTranslationRegistration
2321 MLIRParser
2422 MLIRTargetLLVMIRExport
2523 MLIRSupport
2624 )
25+ target_link_libraries (mlir-cpu-runner PRIVATE
26+ MLIRExecutionEngine
27+ MLIRJitRunner
28+ )
Original file line number Diff line number Diff line change @@ -38,7 +38,6 @@ set(LIBS
3838 ${conversion_libs}
3939 ${dialect_libs}
4040 ${extension_libs}
41- ${test_libs}
4241
4342 MLIRAffineAnalysis
4443 MLIRAnalysis
@@ -56,11 +55,9 @@ set(LIBS
5655
5756add_mlir_tool(mlir-lsp-server
5857 mlir-lsp-server.cpp
59-
60- DEPENDS
61- ${LIBS}
6258 )
63- target_link_libraries (mlir-lsp-server PRIVATE ${LIBS} )
59+ mlir_target_link_libraries(mlir-lsp-server PRIVATE ${LIBS} )
60+ target_link_libraries (mlir-lsp-server PRIVATE ${test_libs} )
6461llvm_update_compile_flags(mlir-lsp-server)
6562
6663mlir_check_all_link_libraries(mlir-lsp-server)
Original file line number Diff line number Diff line change @@ -45,6 +45,7 @@ if(MLIR_INCLUDE_TESTS)
4545 MLIRTestReducer
4646 MLIRTestTransforms
4747 MLIRTilingInterfaceTestPasses
48+ MLIRTosaTestPasses
4849 MLIRVectorTestPasses
4950 MLIRTestVectorToSPIRV
5051 MLIRLLVMTestPasses
@@ -66,7 +67,6 @@ set(LIBS
6667 ${dialect_libs}
6768 ${conversion_libs}
6869 ${extension_libs}
69- ${test_libs}
7070
7171 MLIRAffineAnalysis
7272 MLIRAnalysis
@@ -99,11 +99,10 @@ add_mlir_library(MLIRMlirOptMain
9999add_mlir_tool(mlir-opt
100100 mlir-opt.cpp
101101
102- DEPENDS
103- ${LIBS}
104102 SUPPORT_PLUGINS
105103 )
106- target_link_libraries (mlir-opt PRIVATE ${LIBS} )
104+ mlir_target_link_libraries(mlir-opt PRIVATE ${LIBS} )
105+ target_link_libraries (mlir-opt PRIVATE ${test_libs} )
107106llvm_update_compile_flags(mlir-opt)
108107
109108mlir_check_all_link_libraries(mlir-opt)
Original file line number Diff line number Diff line change @@ -6,7 +6,7 @@ add_llvm_fuzzer(mlir-bytecode-parser-fuzzer
66 mlir-bytecode-parser-fuzzer.cpp
77 DUMMY_MAIN DummyParserFuzzer.cpp
88)
9- target_link_libraries (mlir-bytecode-parser-fuzzer
9+ mlir_target_link_libraries (mlir-bytecode-parser-fuzzer
1010 PUBLIC
1111 MLIRIR
1212 MLIRParser
Original file line number Diff line number Diff line change @@ -6,7 +6,7 @@ add_llvm_fuzzer(mlir-text-parser-fuzzer
66 mlir-text-parser-fuzzer.cpp
77 DUMMY_MAIN DummyParserFuzzer.cpp
88)
9- target_link_libraries (mlir-text-parser-fuzzer
9+ mlir_target_link_libraries (mlir-text-parser-fuzzer
1010 PUBLIC
1111 MLIRIR
1212 MLIRParser
Original file line number Diff line number Diff line change @@ -10,11 +10,11 @@ add_mlir_tool(mlir-query
1010 mlir-query.cpp
1111 )
1212llvm_update_compile_flags(mlir-query)
13- target_link_libraries (mlir-query
13+ mlir_target_link_libraries (mlir-query
1414 PRIVATE
1515 ${dialect_libs}
16- ${test_libs}
1716 MLIRQueryLib
1817 )
18+ target_link_libraries (mlir-query PRIVATE ${test_libs} )
1919
2020mlir_check_link_libraries(mlir-query)
Original file line number Diff line number Diff line change @@ -10,7 +10,6 @@ endif()
1010set (LIBS
1111 ${conversion_libs}
1212 ${dialect_libs}
13- ${test_libs}
1413 MLIRDialect
1514 MLIRIR
1615 MLIRPass
@@ -19,12 +18,10 @@ set(LIBS
1918
2019add_mlir_tool(mlir-reduce
2120 mlir-reduce.cpp
22-
23- DEPENDS
24- ${LIBS}
2521 )
2622
27- target_link_libraries (mlir-reduce PRIVATE ${LIBS} )
23+ mlir_target_link_libraries(mlir-reduce PRIVATE ${LIBS} )
24+ target_link_libraries (mlir-reduce PRIVATE ${test_libs} )
2825llvm_update_compile_flags(mlir-reduce)
2926
3027mlir_check_all_link_libraries(mlir-reduce)
Original file line number Diff line number Diff line change @@ -5,7 +5,6 @@ set(LLVM_LINK_COMPONENTS
55
66set (LIBS
77 ${dialect_libs}
8- ${test_libs}
98
109 MLIRAffineAnalysis
1110 MLIRAnalysis
@@ -24,11 +23,9 @@ include_directories(../../../clang/include)
2423add_mlir_tool(mlir-rewrite
2524 mlir-rewrite.cpp
2625
27- DEPENDS
28- ${LIBS}
2926 SUPPORT_PLUGINS
3027 )
31- target_link_libraries (mlir-rewrite PRIVATE ${LIBS} )
28+ mlir_target_link_libraries (mlir-rewrite PRIVATE ${LIBS} )
3229llvm_update_compile_flags(mlir-rewrite)
3330
3431mlir_check_all_link_libraries(mlir-rewrite)
You can’t perform that action at this time.
0 commit comments