summaryrefslogtreecommitdiff
path: root/mlir/CMakeLists.txt
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2024-12-25 07:12:23 +0000
committerGitHub <noreply@github.com>2024-12-25 07:12:23 +0000
commite3846c0fecb5992110788be18cd04f70103bc778 (patch)
tree7f02e2330ea2118cd9224f31f2bcdce8f3979a7e /mlir/CMakeLists.txt
parent32962f2b77c4298f9ef58182581edf56c76ac685 (diff)
[mlir] [test] Fix missing SHLIB definition in standalone builds (#120907)
Define the `LLVM_SHLIB_OUTPUT_INTDIR` variable that is used by `configure_lit_site_cfg` to fill `SHLIBDIR`. This fixes tool tests that would otherwise be unable to find MLIR's runtime shared libraries (e.g. `libmlir_runner_utils.so`). The logic is copied verbatim from Clang.
Diffstat (limited to 'mlir/CMakeLists.txt')
-rw-r--r--mlir/CMakeLists.txt9
1 files changed, 9 insertions, 0 deletions
diff --git a/mlir/CMakeLists.txt b/mlir/CMakeLists.txt
index 0608eef15c5a..99ea1b70fbc4 100644
--- a/mlir/CMakeLists.txt
+++ b/mlir/CMakeLists.txt
@@ -36,6 +36,15 @@ if(MLIR_STANDALONE_BUILD)
"${CMAKE_CURRENT_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bin")
+ # These definitions are needed to fill SHLIBDIR in tests.
+ set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
+ set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
+ if(WIN32 OR CYGWIN)
+ # DLL platform -- put DLLs into bin.
+ set(LLVM_SHLIB_OUTPUT_INTDIR ${LLVM_RUNTIME_OUTPUT_INTDIR})
+ else()
+ set(LLVM_SHLIB_OUTPUT_INTDIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+ endif()
set(LLVM_LIT_ARGS "-sv" CACHE STRING "Default options for lit")
endif()