[Mlir-commits] [mlir] [MLIR] enable Standalone example test for Windows (PR #158183)
Maksim Levental
llvmlistbot at llvm.org
Fri Sep 12 10:33:52 PDT 2025
https://github.com/makslevental updated https://github.com/llvm/llvm-project/pull/158183
>From 45308cb2ead720879de03912da7de642b2986269 Mon Sep 17 00:00:00 2001
From: Maksim Levental <maksim.levental at gmail.com>
Date: Thu, 11 Sep 2025 22:01:35 -0500
Subject: [PATCH 1/3] [MLIR] enable Standalone for Windows
---
mlir/examples/standalone/CMakeLists.txt | 4 +++-
mlir/examples/standalone/python/CMakeLists.txt | 4 ++++
mlir/examples/standalone/test/CMakeLists.txt | 4 +++-
.../standalone/test/Standalone/standalone-pass-plugin.mlir | 1 +
.../standalone/test/Standalone/standalone-plugin.mlir | 1 +
mlir/test/Examples/standalone/lit.local.cfg | 4 ++++
mlir/test/Examples/standalone/test.toy | 6 +++++-
mlir/test/lit.site.cfg.py.in | 4 ++++
8 files changed, 25 insertions(+), 3 deletions(-)
diff --git a/mlir/examples/standalone/CMakeLists.txt b/mlir/examples/standalone/CMakeLists.txt
index 88dfa3e5d57a3..03627c0c10496 100644
--- a/mlir/examples/standalone/CMakeLists.txt
+++ b/mlir/examples/standalone/CMakeLists.txt
@@ -60,5 +60,7 @@ if(MLIR_ENABLE_BINDINGS_PYTHON)
endif()
add_subdirectory(test)
add_subdirectory(standalone-opt)
-add_subdirectory(standalone-plugin)
+if(NOT WIN32)
+ add_subdirectory(standalone-plugin)
+endif()
add_subdirectory(standalone-translate)
diff --git a/mlir/examples/standalone/python/CMakeLists.txt b/mlir/examples/standalone/python/CMakeLists.txt
index a0eca9c095775..1ab27ce3b533a 100644
--- a/mlir/examples/standalone/python/CMakeLists.txt
+++ b/mlir/examples/standalone/python/CMakeLists.txt
@@ -26,6 +26,8 @@ declare_mlir_python_extension(StandalonePythonSources.Pybind11Extension
ADD_TO_PARENT StandalonePythonSources
SOURCES
StandaloneExtensionPybind11.cpp
+ PRIVATE_LINK_LIBS
+ LLVMSupport
EMBED_CAPI_LINK_LIBS
StandaloneCAPI
PYTHON_BINDINGS_LIBRARY pybind11
@@ -36,6 +38,8 @@ declare_mlir_python_extension(StandalonePythonSources.NanobindExtension
ADD_TO_PARENT StandalonePythonSources
SOURCES
StandaloneExtensionNanobind.cpp
+ PRIVATE_LINK_LIBS
+ LLVMSupport
EMBED_CAPI_LINK_LIBS
StandaloneCAPI
PYTHON_BINDINGS_LIBRARY nanobind
diff --git a/mlir/examples/standalone/test/CMakeLists.txt b/mlir/examples/standalone/test/CMakeLists.txt
index fdde159064287..8864563df8a33 100644
--- a/mlir/examples/standalone/test/CMakeLists.txt
+++ b/mlir/examples/standalone/test/CMakeLists.txt
@@ -14,8 +14,10 @@ set(STANDALONE_TEST_DEPENDS
standalone-capi-test
standalone-opt
standalone-translate
- StandalonePlugin
)
+if(NOT WIN32)
+ list(APPEND STANDALONE_TEST_DEPENDS StandalonePlugin)
+endif()
if(MLIR_ENABLE_BINDINGS_PYTHON)
list(APPEND STANDALONE_TEST_DEPENDS StandalonePythonModules)
endif()
diff --git a/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir b/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
index 1d652dc45830c..3020097dc1640 100644
--- a/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
+++ b/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
@@ -1,3 +1,4 @@
+// UNSUPPORTED: system-windows
// RUN: mlir-opt %s --load-pass-plugin=%standalone_libs/StandalonePlugin%shlibext --pass-pipeline="builtin.module(standalone-switch-bar-foo)" | FileCheck %s
module {
diff --git a/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir b/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
index 468932b81a529..900b524c1feb7 100644
--- a/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
+++ b/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
@@ -1,3 +1,4 @@
+// UNSUPPORTED: system-windows
// RUN: mlir-opt %s --load-dialect-plugin=%standalone_libs/StandalonePlugin%shlibext --pass-pipeline="builtin.module(standalone-switch-bar-foo)" | FileCheck %s
module {
diff --git a/mlir/test/Examples/standalone/lit.local.cfg b/mlir/test/Examples/standalone/lit.local.cfg
index fe8397c6b9a10..ef4e743a3add8 100644
--- a/mlir/test/Examples/standalone/lit.local.cfg
+++ b/mlir/test/Examples/standalone/lit.local.cfg
@@ -10,3 +10,7 @@ config.substitutions.append(("%host_cc", config.host_cc))
config.substitutions.append(("%enable_libcxx", config.enable_libcxx))
config.substitutions.append(("%mlir_cmake_dir", config.mlir_cmake_dir))
config.substitutions.append(("%llvm_use_linker", config.llvm_use_linker))
+config.substitutions.append(("%cmke_exe_linker_flags", config.cmake_exe_linker_flags))
+config.substitutions.append(("%cmake_module_linker_flags", config.cmake_module_linker_flags))
+config.substitutions.append(("%cmake_shared_linker_flags", config.cmake_shared_linker_flags))
+config.substitutions.append(("%cmake_build_type", config.cmake_build_type))
diff --git a/mlir/test/Examples/standalone/test.toy b/mlir/test/Examples/standalone/test.toy
index e99bab5f0affc..527c82fa85350 100644
--- a/mlir/test/Examples/standalone/test.toy
+++ b/mlir/test/Examples/standalone/test.toy
@@ -1,7 +1,11 @@
# RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" \
+# RUN: -DCMAKE_BUILD_TYPE=%cmake_build_type \
# RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx -DMLIR_DIR=%mlir_cmake_dir \
# RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
+# RUN: -DCMAKE_EXE_LINKER_FLAGS="%cmke_exe_linker_flags" \
+# RUN: -DCMAKE_MODULE_LINKER_FLAGS="%cmake_module_linker_flags" \
+# RUN: -DCMAKE_SHARED_LINKER_FLAGS="%cmake_shared_linker_flags" \
# RUN: -DPython3_EXECUTABLE=%python \
# RUN: -DPython_EXECUTABLE=%python
# RUN: "%cmake_exe" --build . --target check-standalone | tee %t
@@ -11,4 +15,4 @@
# if any fail.
# CHECK: Passed
# CHECK-NOT: Failed
-# UNSUPPORTED: target={{.*(windows|android).*}}
+# UNSUPPORTED: target={{.*(android).*}}
diff --git a/mlir/test/lit.site.cfg.py.in b/mlir/test/lit.site.cfg.py.in
index 8a742a227847b..c564a51128739 100644
--- a/mlir/test/lit.site.cfg.py.in
+++ b/mlir/test/lit.site.cfg.py.in
@@ -18,6 +18,10 @@ config.host_cxx = "@HOST_CXX@"
config.enable_libcxx = "@LLVM_ENABLE_LIBCXX@"
config.host_cmake = "@CMAKE_COMMAND@"
config.host_cmake_generator = "@CMAKE_GENERATOR@"
+config.cmake_build_type = "@CMAKE_BUILD_TYPE@"
+config.cmake_exe_linker_flags = "@CMAKE_EXE_LINKER_FLAGS@"
+config.cmake_module_linker_flags = "@CMAKE_MODULE_LINKER_FLAGS@"
+config.cmake_shared_linker_flags = "@CMAKE_SHARED_LINKER_FLAGS@"
config.llvm_use_linker = "@LLVM_USE_LINKER@"
config.llvm_use_sanitizer = "@LLVM_USE_SANITIZER@"
config.host_arch = "@HOST_ARCH@"
>From a18bf40af9dac35c5efafa513f5e6fd0bc17e3d0 Mon Sep 17 00:00:00 2001
From: Maksim Levental <maksim.levental at gmail.com>
Date: Fri, 12 Sep 2025 02:05:10 -0400
Subject: [PATCH 2/3] remove linker flags
---
mlir/test/Examples/standalone/lit.local.cfg | 3 ---
mlir/test/Examples/standalone/test.toy | 3 ---
mlir/test/lit.site.cfg.py.in | 3 ---
3 files changed, 9 deletions(-)
diff --git a/mlir/test/Examples/standalone/lit.local.cfg b/mlir/test/Examples/standalone/lit.local.cfg
index ef4e743a3add8..3b12dcbd99e83 100644
--- a/mlir/test/Examples/standalone/lit.local.cfg
+++ b/mlir/test/Examples/standalone/lit.local.cfg
@@ -10,7 +10,4 @@ config.substitutions.append(("%host_cc", config.host_cc))
config.substitutions.append(("%enable_libcxx", config.enable_libcxx))
config.substitutions.append(("%mlir_cmake_dir", config.mlir_cmake_dir))
config.substitutions.append(("%llvm_use_linker", config.llvm_use_linker))
-config.substitutions.append(("%cmke_exe_linker_flags", config.cmake_exe_linker_flags))
-config.substitutions.append(("%cmake_module_linker_flags", config.cmake_module_linker_flags))
-config.substitutions.append(("%cmake_shared_linker_flags", config.cmake_shared_linker_flags))
config.substitutions.append(("%cmake_build_type", config.cmake_build_type))
diff --git a/mlir/test/Examples/standalone/test.toy b/mlir/test/Examples/standalone/test.toy
index 527c82fa85350..8b6d9dd62b76d 100644
--- a/mlir/test/Examples/standalone/test.toy
+++ b/mlir/test/Examples/standalone/test.toy
@@ -3,9 +3,6 @@
# RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx -DMLIR_DIR=%mlir_cmake_dir \
# RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
-# RUN: -DCMAKE_EXE_LINKER_FLAGS="%cmke_exe_linker_flags" \
-# RUN: -DCMAKE_MODULE_LINKER_FLAGS="%cmake_module_linker_flags" \
-# RUN: -DCMAKE_SHARED_LINKER_FLAGS="%cmake_shared_linker_flags" \
# RUN: -DPython3_EXECUTABLE=%python \
# RUN: -DPython_EXECUTABLE=%python
# RUN: "%cmake_exe" --build . --target check-standalone | tee %t
diff --git a/mlir/test/lit.site.cfg.py.in b/mlir/test/lit.site.cfg.py.in
index c564a51128739..2fc595dfabbf5 100644
--- a/mlir/test/lit.site.cfg.py.in
+++ b/mlir/test/lit.site.cfg.py.in
@@ -19,9 +19,6 @@ config.enable_libcxx = "@LLVM_ENABLE_LIBCXX@"
config.host_cmake = "@CMAKE_COMMAND@"
config.host_cmake_generator = "@CMAKE_GENERATOR@"
config.cmake_build_type = "@CMAKE_BUILD_TYPE@"
-config.cmake_exe_linker_flags = "@CMAKE_EXE_LINKER_FLAGS@"
-config.cmake_module_linker_flags = "@CMAKE_MODULE_LINKER_FLAGS@"
-config.cmake_shared_linker_flags = "@CMAKE_SHARED_LINKER_FLAGS@"
config.llvm_use_linker = "@LLVM_USE_LINKER@"
config.llvm_use_sanitizer = "@LLVM_USE_SANITIZER@"
config.host_arch = "@HOST_ARCH@"
>From 6c48b53be6aa788c7a3e3242692339a54a24262b Mon Sep 17 00:00:00 2001
From: makslevental <maksim.levental at gmail.com>
Date: Fri, 12 Sep 2025 10:33:40 -0700
Subject: [PATCH 3/3] restore plugin
---
mlir/examples/standalone/CMakeLists.txt | 4 +---
mlir/examples/standalone/test/CMakeLists.txt | 4 +---
.../standalone/test/Standalone/standalone-pass-plugin.mlir | 1 -
.../standalone/test/Standalone/standalone-plugin.mlir | 1 -
4 files changed, 2 insertions(+), 8 deletions(-)
diff --git a/mlir/examples/standalone/CMakeLists.txt b/mlir/examples/standalone/CMakeLists.txt
index 03627c0c10496..88dfa3e5d57a3 100644
--- a/mlir/examples/standalone/CMakeLists.txt
+++ b/mlir/examples/standalone/CMakeLists.txt
@@ -60,7 +60,5 @@ if(MLIR_ENABLE_BINDINGS_PYTHON)
endif()
add_subdirectory(test)
add_subdirectory(standalone-opt)
-if(NOT WIN32)
- add_subdirectory(standalone-plugin)
-endif()
+add_subdirectory(standalone-plugin)
add_subdirectory(standalone-translate)
diff --git a/mlir/examples/standalone/test/CMakeLists.txt b/mlir/examples/standalone/test/CMakeLists.txt
index 8864563df8a33..fdde159064287 100644
--- a/mlir/examples/standalone/test/CMakeLists.txt
+++ b/mlir/examples/standalone/test/CMakeLists.txt
@@ -14,10 +14,8 @@ set(STANDALONE_TEST_DEPENDS
standalone-capi-test
standalone-opt
standalone-translate
+ StandalonePlugin
)
-if(NOT WIN32)
- list(APPEND STANDALONE_TEST_DEPENDS StandalonePlugin)
-endif()
if(MLIR_ENABLE_BINDINGS_PYTHON)
list(APPEND STANDALONE_TEST_DEPENDS StandalonePythonModules)
endif()
diff --git a/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir b/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
index 3020097dc1640..1d652dc45830c 100644
--- a/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
+++ b/mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
@@ -1,4 +1,3 @@
-// UNSUPPORTED: system-windows
// RUN: mlir-opt %s --load-pass-plugin=%standalone_libs/StandalonePlugin%shlibext --pass-pipeline="builtin.module(standalone-switch-bar-foo)" | FileCheck %s
module {
diff --git a/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir b/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
index 900b524c1feb7..468932b81a529 100644
--- a/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
+++ b/mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
@@ -1,4 +1,3 @@
-// UNSUPPORTED: system-windows
// RUN: mlir-opt %s --load-dialect-plugin=%standalone_libs/StandalonePlugin%shlibext --pass-pipeline="builtin.module(standalone-switch-bar-foo)" | FileCheck %s
module {
More information about the Mlir-commits
mailing list