https://github.com/makslevental updated 
https://github.com/llvm/llvm-project/pull/157944

>From f9dbe48eaa691ca9f8161e9dc3a800bb613d5bc9 Mon Sep 17 00:00:00 2001
From: makslevental <maksim.leven...@gmail.com>
Date: Wed, 10 Sep 2025 12:57:54 -0700
Subject: [PATCH 01/14] [MLIR][Standalone] test Standalone against install
 distributions

---
 mlir/test/Examples/standalone/lit.local.cfg      |  2 ++
 .../Examples/standalone/test.toy.install-dir     | 16 ++++++++++++++++
 mlir/test/lit.cfg.py                             |  3 +++
 mlir/test/lit.site.cfg.py.in                     |  1 +
 4 files changed, 22 insertions(+)
 create mode 100644 mlir/test/Examples/standalone/test.toy.install-dir

diff --git a/mlir/test/Examples/standalone/lit.local.cfg 
b/mlir/test/Examples/standalone/lit.local.cfg
index fe8397c6b9a10..bc9928decf527 100644
--- a/mlir/test/Examples/standalone/lit.local.cfg
+++ b/mlir/test/Examples/standalone/lit.local.cfg
@@ -10,3 +10,5 @@ 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(("%llvm_obj_root", config.llvm_obj_root))
+config.substitutions.append(("%host_cmake_install_prefix", 
config.host_cmake_install_prefix))
diff --git a/mlir/test/Examples/standalone/test.toy.install-dir 
b/mlir/test/Examples/standalone/test.toy.install-dir
new file mode 100644
index 0000000000000..5c33a70491ae1
--- /dev/null
+++ b/mlir/test/Examples/standalone/test.toy.install-dir
@@ -0,0 +1,16 @@
+# REQUIRES: github-actions
+# RUN: "%cmake_exe" --build %llvm_obj_root --target install
+# RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
+# RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
+# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx 
-DMLIR_DIR=%host_cmake_install_prefix \
+# RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
+# RUN: -DPython3_EXECUTABLE=%python \
+# RUN: -DPython_EXECUTABLE=%python
+# RUN: "%cmake_exe" --build . --target check-standalone | tee %t
+# RUN: FileCheck --input-file=%t %s
+
+# Note: The number of checked tests is not important. The command will fail
+# if any fail.
+# CHECK: Passed
+# CHECK-NOT: Failed
+# UNSUPPORTED: target={{.*(windows|android).*}}
diff --git a/mlir/test/lit.cfg.py b/mlir/test/lit.cfg.py
index f99c24d6e299a..08c7947c1e9a6 100644
--- a/mlir/test/lit.cfg.py
+++ b/mlir/test/lit.cfg.py
@@ -383,3 +383,6 @@ def have_host_jit_feature_support(feature_name):
 
 if sys.version_info >= (3, 11):
     config.available_features.add("python-ge-311")
+
+if "GITHUB_ACTIONS" in os.environ:
+    config.available_features.add("github-actions")
diff --git a/mlir/test/lit.site.cfg.py.in b/mlir/test/lit.site.cfg.py.in
index 8a742a227847b..7e22ebf23c773 100644
--- a/mlir/test/lit.site.cfg.py.in
+++ b/mlir/test/lit.site.cfg.py.in
@@ -18,6 +18,7 @@ config.host_cxx = "@HOST_CXX@"
 config.enable_libcxx = "@LLVM_ENABLE_LIBCXX@"
 config.host_cmake = "@CMAKE_COMMAND@"
 config.host_cmake_generator = "@CMAKE_GENERATOR@"
+config.host_cmake_install_prefix = "@CMAKE_INSTALL_PREFIX@"
 config.llvm_use_linker = "@LLVM_USE_LINKER@"
 config.llvm_use_sanitizer = "@LLVM_USE_SANITIZER@"
 config.host_arch = "@HOST_ARCH@"

>From fc56d49c9481aed16b79f391368f4c3824a90695 Mon Sep 17 00:00:00 2001
From: Maksim Levental <maksim.leven...@gmail.com>
Date: Wed, 10 Sep 2025 13:23:07 -0700
Subject: [PATCH 02/14] Update lit.site.cfg.py.in

---
 .../standalone/{test.toy.install-dir => test.install-dir.toy}    | 0
 mlir/test/lit.site.cfg.py.in                                     | 1 +
 2 files changed, 1 insertion(+)
 rename mlir/test/Examples/standalone/{test.toy.install-dir => 
test.install-dir.toy} (100%)

diff --git a/mlir/test/Examples/standalone/test.toy.install-dir 
b/mlir/test/Examples/standalone/test.install-dir.toy
similarity index 100%
rename from mlir/test/Examples/standalone/test.toy.install-dir
rename to mlir/test/Examples/standalone/test.install-dir.toy
diff --git a/mlir/test/lit.site.cfg.py.in b/mlir/test/lit.site.cfg.py.in
index 7e22ebf23c773..eadfd047d15f7 100644
--- a/mlir/test/lit.site.cfg.py.in
+++ b/mlir/test/lit.site.cfg.py.in
@@ -3,6 +3,7 @@
 import sys
 
 config.target_triple = "@LLVM_TARGET_TRIPLE@"
+config.llvm_obj_root = "@LLVM_BINARY_DIR@"
 config.llvm_src_root = "@LLVM_SOURCE_DIR@"
 config.llvm_tools_dir = lit_config.substitute("@LLVM_TOOLS_DIR@")
 config.lit_tools_dir = "@LLVM_LIT_TOOLS_DIR@"

>From 67ce5b688657d38b6792b05712d1de6f56e726fe Mon Sep 17 00:00:00 2001
From: makslevental <maksim.leven...@gmail.com>
Date: Wed, 10 Sep 2025 15:54:54 -0700
Subject: [PATCH 03/14] add test.install-distribution-dir.toy

---
 mlir/test/Examples/standalone/lit.local.cfg     |  1 +
 .../Examples/standalone/test.install-dir.toy    |  4 ++--
 .../test.install-distribution-dir.toy           | 17 +++++++++++++++++
 3 files changed, 20 insertions(+), 2 deletions(-)
 create mode 100644 
mlir/test/Examples/standalone/test.install-distribution-dir.toy

diff --git a/mlir/test/Examples/standalone/lit.local.cfg 
b/mlir/test/Examples/standalone/lit.local.cfg
index bc9928decf527..76b46a458ce98 100644
--- a/mlir/test/Examples/standalone/lit.local.cfg
+++ b/mlir/test/Examples/standalone/lit.local.cfg
@@ -11,4 +11,5 @@ 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(("%llvm_obj_root", config.llvm_obj_root))
+config.substitutions.append(("%llvm_src_root", config.llvm_src_root))
 config.substitutions.append(("%host_cmake_install_prefix", 
config.host_cmake_install_prefix))
diff --git a/mlir/test/Examples/standalone/test.install-dir.toy 
b/mlir/test/Examples/standalone/test.install-dir.toy
index 5c33a70491ae1..b2bf8726ba17f 100644
--- a/mlir/test/Examples/standalone/test.install-dir.toy
+++ b/mlir/test/Examples/standalone/test.install-dir.toy
@@ -1,8 +1,8 @@
 # REQUIRES: github-actions
-# RUN: "%cmake_exe" --build %llvm_obj_root --target install
+# RUN: "%cmake_exe" --build "%llvm_obj_root" --target install
 # RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
 # RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
-# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx 
-DMLIR_DIR=%host_cmake_install_prefix \
+# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx 
-DMLIR_DIR="%host_cmake_install_prefix" \
 # RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
 # RUN: -DPython3_EXECUTABLE=%python \
 # RUN: -DPython_EXECUTABLE=%python
diff --git a/mlir/test/Examples/standalone/test.install-distribution-dir.toy 
b/mlir/test/Examples/standalone/test.install-distribution-dir.toy
new file mode 100644
index 0000000000000..f50f1c1ebf989
--- /dev/null
+++ b/mlir/test/Examples/standalone/test.install-distribution-dir.toy
@@ -0,0 +1,17 @@
+# REQUIRES: github-actions
+# RUN: "%cmake_exe" "%llvm_src_root" 
-DLLVM_DISTRIBUTION_COMPONENTS="llvm-headers;llvm-libraries;cmake-exports;FileCheck;count;not;mlir-headers;mlir-libraries;mlir-cmake-exports;mlir-tblgen;mlir-python-sources"
+# RUN: "%cmake_exe" --build "%llvm_obj_root" --target install-distribution
+# RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
+# RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
+# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx 
-DMLIR_DIR=%host_cmake_install_prefix \
+# RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
+# RUN: -DPython3_EXECUTABLE=%python \
+# RUN: -DPython_EXECUTABLE=%python
+# RUN: "%cmake_exe" --build . --target check-standalone | tee %t
+# RUN: FileCheck --input-file=%t %s
+
+# Note: The number of checked tests is not important. The command will fail
+# if any fail.
+# CHECK: Passed
+# CHECK-NOT: Failed
+# UNSUPPORTED: target={{.*(windows|android).*}}

>From c7d793190503b8a24f8188b804cd7c3accbc8e7d Mon Sep 17 00:00:00 2001
From: Maksim Levental <maksim.leven...@gmail.com>
Date: Wed, 10 Sep 2025 18:34:14 -0700
Subject: [PATCH 04/14] Update lit.local.cfg

---
 mlir/test/Examples/standalone/lit.local.cfg | 1 +
 1 file changed, 1 insertion(+)

diff --git a/mlir/test/Examples/standalone/lit.local.cfg 
b/mlir/test/Examples/standalone/lit.local.cfg
index 76b46a458ce98..1449638d25ef5 100644
--- a/mlir/test/Examples/standalone/lit.local.cfg
+++ b/mlir/test/Examples/standalone/lit.local.cfg
@@ -13,3 +13,4 @@ config.substitutions.append(("%llvm_use_linker", 
config.llvm_use_linker))
 config.substitutions.append(("%llvm_obj_root", config.llvm_obj_root))
 config.substitutions.append(("%llvm_src_root", config.llvm_src_root))
 config.substitutions.append(("%host_cmake_install_prefix", 
config.host_cmake_install_prefix))
+config.substitutions.append(("%host_cmake_cmd", config.host_cmake))

>From a29b1a160a069512225cf977c381d8245f59f1c6 Mon Sep 17 00:00:00 2001
From: Maksim Levental <maksim.leven...@gmail.com>
Date: Wed, 10 Sep 2025 18:34:35 -0700
Subject: [PATCH 05/14] Update test.install-distribution-dir.toy

---
 mlir/examples/standalone/CMakeLists.txt                       | 1 -
 mlir/test/Examples/standalone/lit.local.cfg                   | 4 +++-
 mlir/test/Examples/standalone/test.install-dir.toy            | 1 +
 .../Examples/standalone/test.install-distribution-dir.toy     | 4 +++-
 mlir/test/lit.cfg.py                                          | 2 +-
 mlir/test/lit.site.cfg.py.in                                  | 3 +++
 6 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/mlir/examples/standalone/CMakeLists.txt 
b/mlir/examples/standalone/CMakeLists.txt
index 88dfa3e5d57a3..f94405f92c1e9 100644
--- a/mlir/examples/standalone/CMakeLists.txt
+++ b/mlir/examples/standalone/CMakeLists.txt
@@ -8,7 +8,6 @@ set(CMAKE_CXX_STANDARD 17 CACHE STRING "C++ standard to conform 
to")
 if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
   find_package(MLIR REQUIRED CONFIG)
 
-
   # Define the default argument to use by `lit` when testing.
   set(LLVM_LIT_ARGS "-sv" CACHE STRING "Default options for lit")
 
diff --git a/mlir/test/Examples/standalone/lit.local.cfg 
b/mlir/test/Examples/standalone/lit.local.cfg
index 1449638d25ef5..2c335c2f0ba7f 100644
--- a/mlir/test/Examples/standalone/lit.local.cfg
+++ b/mlir/test/Examples/standalone/lit.local.cfg
@@ -13,4 +13,6 @@ config.substitutions.append(("%llvm_use_linker", 
config.llvm_use_linker))
 config.substitutions.append(("%llvm_obj_root", config.llvm_obj_root))
 config.substitutions.append(("%llvm_src_root", config.llvm_src_root))
 config.substitutions.append(("%host_cmake_install_prefix", 
config.host_cmake_install_prefix))
-config.substitutions.append(("%host_cmake_cmd", config.host_cmake))
+config.substitutions.append(("%cmake_build_type", config.cmake_build_type))
+config.substitutions.append(("%cmake_c_compiler_launcher", 
config.cmake_c_compiler_launcher))
+config.substitutions.append(("%cmake_cxx_compiler_launcher", 
config.cmake_cxx_compiler_launcher))
diff --git a/mlir/test/Examples/standalone/test.install-dir.toy 
b/mlir/test/Examples/standalone/test.install-dir.toy
index b2bf8726ba17f..725f63133c933 100644
--- a/mlir/test/Examples/standalone/test.install-dir.toy
+++ b/mlir/test/Examples/standalone/test.install-dir.toy
@@ -1,4 +1,5 @@
 # REQUIRES: github-actions
+# RUN: rm -rf %host_cmake_install_prefix
 # RUN: "%cmake_exe" --build "%llvm_obj_root" --target install
 # RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
 # RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
diff --git a/mlir/test/Examples/standalone/test.install-distribution-dir.toy 
b/mlir/test/Examples/standalone/test.install-distribution-dir.toy
index f50f1c1ebf989..c26bf104247e9 100644
--- a/mlir/test/Examples/standalone/test.install-distribution-dir.toy
+++ b/mlir/test/Examples/standalone/test.install-distribution-dir.toy
@@ -1,5 +1,7 @@
 # REQUIRES: github-actions
-# RUN: "%cmake_exe" "%llvm_src_root" 
-DLLVM_DISTRIBUTION_COMPONENTS="llvm-headers;llvm-libraries;cmake-exports;FileCheck;count;not;mlir-headers;mlir-libraries;mlir-cmake-exports;mlir-tblgen;mlir-python-sources"
+# RUN: rm -rf %host_cmake_install_prefix
+# RUN: "%cmake_exe" "%llvm_src_root" -DCMAKE_BUILD_TYPE=%cmake_build_type -B 
"%llvm_obj_root" \
+# RUN: 
-DLLVM_DISTRIBUTION_COMPONENTS="llvm-headers;llvm-libraries;cmake-exports;mlir-headers;mlir-libraries;mlir-cmake-exports;mlir-tblgen;mlir-python-sources"
 # RUN: "%cmake_exe" --build "%llvm_obj_root" --target install-distribution
 # RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
 # RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
diff --git a/mlir/test/lit.cfg.py b/mlir/test/lit.cfg.py
index 08c7947c1e9a6..a404aac2ef2f7 100644
--- a/mlir/test/lit.cfg.py
+++ b/mlir/test/lit.cfg.py
@@ -187,7 +187,7 @@ def find_real_python_interpreter():
     llvm_config.with_environment("PATH", dirs, append_path=True)
 
 tools = [
-    "mlir-tblgen",
+    ToolSubst("mlir-tblgen", pre=";", post=";", unresolved="fatal"),
     "mlir-translate",
     "mlir-lsp-server",
     "mlir-capi-execution-engine-test",
diff --git a/mlir/test/lit.site.cfg.py.in b/mlir/test/lit.site.cfg.py.in
index eadfd047d15f7..ebac12ca42da7 100644
--- a/mlir/test/lit.site.cfg.py.in
+++ b/mlir/test/lit.site.cfg.py.in
@@ -18,6 +18,9 @@ config.host_cc = "@HOST_CC@"
 config.host_cxx = "@HOST_CXX@"
 config.enable_libcxx = "@LLVM_ENABLE_LIBCXX@"
 config.host_cmake = "@CMAKE_COMMAND@"
+config.cmake_build_type = "@CMAKE_BUILD_TYPE@"
+config.cmake_c_compiler_launcher = "@CMAKE_C_COMPILER_LAUNCHER@"
+config.cmake_cxx_compiler_launcher= "@CMAKE_CXX_COMPILER_LAUNCHER@"
 config.host_cmake_generator = "@CMAKE_GENERATOR@"
 config.host_cmake_install_prefix = "@CMAKE_INSTALL_PREFIX@"
 config.llvm_use_linker = "@LLVM_USE_LINKER@"

>From 3c18c625117373a6133ee10ea2ae937f68f89367 Mon Sep 17 00:00:00 2001
From: makslevental <maksim.leven...@gmail.com>
Date: Wed, 10 Sep 2025 23:15:52 -0700
Subject: [PATCH 06/14] add compiler launcher

---
 mlir/test/Examples/standalone/test.install-dir.toy              | 1 +
 mlir/test/Examples/standalone/test.install-distribution-dir.toy | 1 +
 mlir/test/Examples/standalone/test.toy                          | 1 +
 3 files changed, 3 insertions(+)

diff --git a/mlir/test/Examples/standalone/test.install-dir.toy 
b/mlir/test/Examples/standalone/test.install-dir.toy
index 725f63133c933..2a068e92f5880 100644
--- a/mlir/test/Examples/standalone/test.install-dir.toy
+++ b/mlir/test/Examples/standalone/test.install-dir.toy
@@ -3,6 +3,7 @@
 # RUN: "%cmake_exe" --build "%llvm_obj_root" --target install
 # RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
 # RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
+# RUN: -DCMAKE_CXX_COMPILER_LAUNCHER=%cmake_cxx_compiler_launcher 
-DCMAKE_C_COMPILER_LAUNCHER=%cmake_c_compiler_launcher \
 # RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx 
-DMLIR_DIR="%host_cmake_install_prefix" \
 # RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
 # RUN: -DPython3_EXECUTABLE=%python \
diff --git a/mlir/test/Examples/standalone/test.install-distribution-dir.toy 
b/mlir/test/Examples/standalone/test.install-distribution-dir.toy
index c26bf104247e9..3c8ac6b1d5854 100644
--- a/mlir/test/Examples/standalone/test.install-distribution-dir.toy
+++ b/mlir/test/Examples/standalone/test.install-distribution-dir.toy
@@ -5,6 +5,7 @@
 # RUN: "%cmake_exe" --build "%llvm_obj_root" --target install-distribution
 # RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
 # RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
+# RUN: -DCMAKE_CXX_COMPILER_LAUNCHER=%cmake_cxx_compiler_launcher 
-DCMAKE_C_COMPILER_LAUNCHER=%cmake_c_compiler_launcher \
 # RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx 
-DMLIR_DIR=%host_cmake_install_prefix \
 # RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
 # RUN: -DPython3_EXECUTABLE=%python \
diff --git a/mlir/test/Examples/standalone/test.toy 
b/mlir/test/Examples/standalone/test.toy
index e99bab5f0affc..23f54c3101818 100644
--- a/mlir/test/Examples/standalone/test.toy
+++ b/mlir/test/Examples/standalone/test.toy
@@ -1,5 +1,6 @@
 # RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
 # RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
+# RUN: -DCMAKE_CXX_COMPILER_LAUNCHER=%cmake_cxx_compiler_launcher 
-DCMAKE_C_COMPILER_LAUNCHER=%cmake_c_compiler_launcher \
 # RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx -DMLIR_DIR=%mlir_cmake_dir \
 # RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
 # RUN: -DPython3_EXECUTABLE=%python \

>From 8a5b8b4f660ab22474699d1aac9a576fda74f24b Mon Sep 17 00:00:00 2001
From: makslevental <maksim.leven...@gmail.com>
Date: Thu, 11 Sep 2025 02:53:04 -0700
Subject: [PATCH 07/14] join files

---
 mlir/examples/standalone/test/CMakeLists.txt  |  2 +-
 mlir/examples/standalone/test/lit.cfg.py      |  2 +-
 mlir/test/Examples/standalone/lit.local.cfg   |  8 +++
 .../Examples/standalone/test.install-dir.toy  | 52 ++++++++++++++++---
 .../test.install-distribution-dir.toy         | 20 -------
 mlir/test/lit.cfg.py                          |  2 +-
 6 files changed, 55 insertions(+), 31 deletions(-)
 delete mode 100644 
mlir/test/Examples/standalone/test.install-distribution-dir.toy

diff --git a/mlir/examples/standalone/test/CMakeLists.txt 
b/mlir/examples/standalone/test/CMakeLists.txt
index fdde159064287..16c0c50c4ba9b 100644
--- a/mlir/examples/standalone/test/CMakeLists.txt
+++ b/mlir/examples/standalone/test/CMakeLists.txt
@@ -10,7 +10,7 @@ configure_lit_site_cfg(
 )
 
 set(STANDALONE_TEST_DEPENDS
-        FileCheck count not
+        FileCheck
         standalone-capi-test
         standalone-opt
         standalone-translate
diff --git a/mlir/examples/standalone/test/lit.cfg.py 
b/mlir/examples/standalone/test/lit.cfg.py
index e27dddd7fb0b9..d4c1918fc5b3e 100644
--- a/mlir/examples/standalone/test/lit.cfg.py
+++ b/mlir/examples/standalone/test/lit.cfg.py
@@ -53,7 +53,7 @@
 
 tool_dirs = [config.standalone_tools_dir, config.llvm_tools_dir]
 tools = [
-    "mlir-opt",
+    ToolSubst("mlir-opt", pre=";", post=";", unresolved="fatal"),
     "standalone-capi-test",
     "standalone-opt",
     "standalone-translate",
diff --git a/mlir/test/Examples/standalone/lit.local.cfg 
b/mlir/test/Examples/standalone/lit.local.cfg
index 2c335c2f0ba7f..21512e7d03a57 100644
--- a/mlir/test/Examples/standalone/lit.local.cfg
+++ b/mlir/test/Examples/standalone/lit.local.cfg
@@ -16,3 +16,11 @@ config.substitutions.append(("%host_cmake_install_prefix", 
config.host_cmake_ins
 config.substitutions.append(("%cmake_build_type", config.cmake_build_type))
 config.substitutions.append(("%cmake_c_compiler_launcher", 
config.cmake_c_compiler_launcher))
 config.substitutions.append(("%cmake_cxx_compiler_launcher", 
config.cmake_cxx_compiler_launcher))
+
+# see 
https://github.com/llvm/llvm-project/blob/57782eff31e9d454b54a201c7ac43dc1b93dbb3f/llvm/utils/lit/lit/TestRunner.py#L1858
+config.substitutions.insert(0, ("FileCheck", "FileChuck"))
+config.substitutions.insert(0, ("count", "kount"))
+config.substitutions.insert(0, ("not", "mot"))
+config.substitutions.append(("kount", "count"))
+config.substitutions.append(("mot", "not"))
+config.substitutions.append(("FileChuck", "FileCheck"))
diff --git a/mlir/test/Examples/standalone/test.install-dir.toy 
b/mlir/test/Examples/standalone/test.install-dir.toy
index 2a068e92f5880..c545e174d2818 100644
--- a/mlir/test/Examples/standalone/test.install-dir.toy
+++ b/mlir/test/Examples/standalone/test.install-dir.toy
@@ -1,18 +1,54 @@
-# REQUIRES: github-actions
-# RUN: rm -rf %host_cmake_install_prefix
-# RUN: "%cmake_exe" --build "%llvm_obj_root" --target install
+# REQUIRESgithub-actions
+
+# RUN: echo "test full install" | tee %t
+# CHECK: test full install
+
+# RUN: rm -rf "%host_cmake_install_prefix"
+
+# RUN: "%cmake_exe" --build "%llvm_obj_root" --target install -j | tee -a %t
+
 # RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
 # RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
 # RUN: -DCMAKE_CXX_COMPILER_LAUNCHER=%cmake_cxx_compiler_launcher 
-DCMAKE_C_COMPILER_LAUNCHER=%cmake_c_compiler_launcher \
-# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx 
-DMLIR_DIR="%host_cmake_install_prefix" \
+# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx \
+# RUN: -DLLVM_EXTERNAL_LIT="%llvm_obj_root/bin/llvm-lit" \
+# RUN: -DMLIR_DIR="%host_cmake_install_prefix/lib/cmake/mlir" \
+# RUN: -DLLVM_DIR="%host_cmake_install_prefix/lib/cmake/llvm" \
 # RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
 # RUN: -DPython3_EXECUTABLE=%python \
-# RUN: -DPython_EXECUTABLE=%python
-# RUN: "%cmake_exe" --build . --target check-standalone | tee %t
+# RUN: -DPython_EXECUTABLE=%python | tee -a %t
+
+# RUN: "%cmake_exe" --build . --target check-standalone -j | tee -a %t
+
+# CHECK: Passed
+# CHECK-NOT: Failed
+# UNSUPPORTED: target={{.*(windows|android).*}}
+
+# RUN: rm -rf "%host_cmake_install_prefix"
+
+# RUN: echo "test install distribution" | tee -a %t
+# CHECK: test install distribution
+
+# RUN: "%cmake_exe" "%llvm_src_root" -DCMAKE_BUILD_TYPE=%cmake_build_type -B 
"%llvm_obj_root" \
+# RUN: 
-DLLVM_DISTRIBUTION_COMPONENTS="llvm-headers;llvm-libraries;cmake-exports;FileCheck;count;not;mlir-headers;mlir-libraries;mlir-cmake-exports;mlir-tblgen;mlir-opt;mlir-python-sources"
 | tee -a %t
+
+# RUN: "%cmake_exe" --build "%llvm_obj_root" --target install-distribution -j 
| tee -a %t
+
+# RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
+# RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
+# RUN: -DCMAKE_CXX_COMPILER_LAUNCHER=%cmake_cxx_compiler_launcher 
-DCMAKE_C_COMPILER_LAUNCHER=%cmake_c_compiler_launcher \
+# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx \
+# RUN: -DLLVM_EXTERNAL_LIT="%llvm_obj_root/bin/llvm-lit" \
+# RUN: -DMLIR_DIR="%host_cmake_install_prefix/lib/cmake/mlir" \
+# RUN: -DLLVM_DIR="%host_cmake_install_prefix/lib/cmake/llvm" \
+# RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
+# RUN: -DPython3_EXECUTABLE=%python \
+# RUN: -DPython_EXECUTABLE=%python | tee -a %t
+
+# RUN: "%cmake_exe" --build . --target check-standalone -j | tee -a %t
+
 # RUN: FileCheck --input-file=%t %s
 
-# Note: The number of checked tests is not important. The command will fail
-# if any fail.
 # CHECK: Passed
 # CHECK-NOT: Failed
 # UNSUPPORTED: target={{.*(windows|android).*}}
diff --git a/mlir/test/Examples/standalone/test.install-distribution-dir.toy 
b/mlir/test/Examples/standalone/test.install-distribution-dir.toy
deleted file mode 100644
index 3c8ac6b1d5854..0000000000000
--- a/mlir/test/Examples/standalone/test.install-distribution-dir.toy
+++ /dev/null
@@ -1,20 +0,0 @@
-# REQUIRES: github-actions
-# RUN: rm -rf %host_cmake_install_prefix
-# RUN: "%cmake_exe" "%llvm_src_root" -DCMAKE_BUILD_TYPE=%cmake_build_type -B 
"%llvm_obj_root" \
-# RUN: 
-DLLVM_DISTRIBUTION_COMPONENTS="llvm-headers;llvm-libraries;cmake-exports;mlir-headers;mlir-libraries;mlir-cmake-exports;mlir-tblgen;mlir-python-sources"
-# RUN: "%cmake_exe" --build "%llvm_obj_root" --target install-distribution
-# RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
-# RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
-# RUN: -DCMAKE_CXX_COMPILER_LAUNCHER=%cmake_cxx_compiler_launcher 
-DCMAKE_C_COMPILER_LAUNCHER=%cmake_c_compiler_launcher \
-# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx 
-DMLIR_DIR=%host_cmake_install_prefix \
-# RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
-# RUN: -DPython3_EXECUTABLE=%python \
-# RUN: -DPython_EXECUTABLE=%python
-# RUN: "%cmake_exe" --build . --target check-standalone | tee %t
-# RUN: FileCheck --input-file=%t %s
-
-# Note: The number of checked tests is not important. The command will fail
-# if any fail.
-# CHECK: Passed
-# CHECK-NOT: Failed
-# UNSUPPORTED: target={{.*(windows|android).*}}
diff --git a/mlir/test/lit.cfg.py b/mlir/test/lit.cfg.py
index a404aac2ef2f7..e3bf1ea943374 100644
--- a/mlir/test/lit.cfg.py
+++ b/mlir/test/lit.cfg.py
@@ -318,7 +318,7 @@ def find_real_python_interpreter():
         ]
     )
 else:
-    tools.extend(["mlir-opt"])
+    tools.extend([ToolSubst("mlir-opt", pre=";", post=";", 
unresolved="fatal")])
 
 llvm_config.add_tool_substitutions(tools, tool_dirs)
 

>From 4717b51ab668a9dc279ca7fe57cbcca422a79c46 Mon Sep 17 00:00:00 2001
From: makslevental <maksim.leven...@gmail.com>
Date: Thu, 11 Sep 2025 03:04:43 -0700
Subject: [PATCH 08/14] restore count not

---
 mlir/examples/standalone/test/CMakeLists.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mlir/examples/standalone/test/CMakeLists.txt 
b/mlir/examples/standalone/test/CMakeLists.txt
index 16c0c50c4ba9b..fdde159064287 100644
--- a/mlir/examples/standalone/test/CMakeLists.txt
+++ b/mlir/examples/standalone/test/CMakeLists.txt
@@ -10,7 +10,7 @@ configure_lit_site_cfg(
 )
 
 set(STANDALONE_TEST_DEPENDS
-        FileCheck
+        FileCheck count not
         standalone-capi-test
         standalone-opt
         standalone-translate

>From ddd3ff9f224f6b531566d9d82f9ee0b128ed78ef Mon Sep 17 00:00:00 2001
From: Maksim Levental <maksim.leven...@gmail.com>
Date: Thu, 11 Sep 2025 03:14:37 -0700
Subject: [PATCH 09/14] Update test.install-dir.toy

---
 mlir/test/Examples/standalone/test.install-dir.toy | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mlir/test/Examples/standalone/test.install-dir.toy 
b/mlir/test/Examples/standalone/test.install-dir.toy
index c545e174d2818..f9a9b5e201cbb 100644
--- a/mlir/test/Examples/standalone/test.install-dir.toy
+++ b/mlir/test/Examples/standalone/test.install-dir.toy
@@ -1,4 +1,4 @@
-# REQUIRESgithub-actions
+# REQUIRES: github-actions
 
 # RUN: echo "test full install" | tee %t
 # CHECK: test full install

>From bdcc3f60bbd5bdd6bfeb5c28eb0b181371d207dc Mon Sep 17 00:00:00 2001
From: makslevental <maksim.leven...@gmail.com>
Date: Thu, 11 Sep 2025 14:13:33 -0700
Subject: [PATCH 10/14] use config command instead of env var

---
 mlir/test/CMakeLists.txt                         |  7 +++++++
 mlir/test/Examples/standalone/lit.local.cfg      | 16 +++++++++-------
 .../Examples/standalone/test.install-dir.toy     |  2 +-
 mlir/test/lit.cfg.py                             |  3 ---
 mlir/test/lit.site.cfg.py.in                     |  1 +
 5 files changed, 18 insertions(+), 11 deletions(-)

diff --git a/mlir/test/CMakeLists.txt b/mlir/test/CMakeLists.txt
index 628adcfb6e285..922325bd3ba27 100644
--- a/mlir/test/CMakeLists.txt
+++ b/mlir/test/CMakeLists.txt
@@ -65,6 +65,12 @@ if (MLIR_INCLUDE_INTEGRATION_TESTS)
 
 endif()
 
+option(MLIR_RUN_STANDALONE_INSTALL_TESTS "Run Standalone example install 
tests." ON)
+if(MLIR_RUN_STANDALONE_INSTALL_TESTS AND "${CMAKE_INSTALL_PREFIX}" STREQUAL "")
+  message(WARNING "Standalone example install tests will install into root!\
+  If you want to disable this behavior pass 
-DMLIR_RUN_STANDALONE_INSTALL_TESTS=OFF")
+endif()
+
 llvm_canonicalize_cmake_booleans(
   LLVM_BUILD_EXAMPLES
   LLVM_HAS_NVPTX_TARGET
@@ -76,6 +82,7 @@ llvm_canonicalize_cmake_booleans(
   MLIR_ENABLE_SPIRV_CPU_RUNNER
   MLIR_ENABLE_VULKAN_RUNNER
   MLIR_INCLUDE_INTEGRATION_TESTS
+  MLIR_RUN_STANDALONE_INSTALL_TESTS
   MLIR_RUN_AMX_TESTS
   MLIR_RUN_CUDA_TENSOR_CORE_TESTS
   MLIR_RUN_X86VECTOR_TESTS
diff --git a/mlir/test/Examples/standalone/lit.local.cfg 
b/mlir/test/Examples/standalone/lit.local.cfg
index 21512e7d03a57..cd2df2dd8f3a8 100644
--- a/mlir/test/Examples/standalone/lit.local.cfg
+++ b/mlir/test/Examples/standalone/lit.local.cfg
@@ -17,10 +17,12 @@ config.substitutions.append(("%cmake_build_type", 
config.cmake_build_type))
 config.substitutions.append(("%cmake_c_compiler_launcher", 
config.cmake_c_compiler_launcher))
 config.substitutions.append(("%cmake_cxx_compiler_launcher", 
config.cmake_cxx_compiler_launcher))
 
-# see 
https://github.com/llvm/llvm-project/blob/57782eff31e9d454b54a201c7ac43dc1b93dbb3f/llvm/utils/lit/lit/TestRunner.py#L1858
-config.substitutions.insert(0, ("FileCheck", "FileChuck"))
-config.substitutions.insert(0, ("count", "kount"))
-config.substitutions.insert(0, ("not", "mot"))
-config.substitutions.append(("kount", "count"))
-config.substitutions.append(("mot", "not"))
-config.substitutions.append(("FileChuck", "FileCheck"))
+if config.run_standalone_install_tests:
+    config.available_features.add("run-standalone-install-tests")
+    # see 
https://github.com/llvm/llvm-project/blob/57782eff31e9d454b54a201c7ac43dc1b93dbb3f/llvm/utils/lit/lit/TestRunner.py#L1858
+    config.substitutions.insert(0, ("FileCheck", "FileChuck"))
+    config.substitutions.insert(0, ("count", "kount"))
+    config.substitutions.insert(0, ("not", "mot"))
+    config.substitutions.append(("kount", "count"))
+    config.substitutions.append(("mot", "not"))
+    config.substitutions.append(("FileChuck", "FileCheck"))
diff --git a/mlir/test/Examples/standalone/test.install-dir.toy 
b/mlir/test/Examples/standalone/test.install-dir.toy
index f9a9b5e201cbb..e6af922dad83c 100644
--- a/mlir/test/Examples/standalone/test.install-dir.toy
+++ b/mlir/test/Examples/standalone/test.install-dir.toy
@@ -1,4 +1,4 @@
-# REQUIRES: github-actions
+# REQUIRES: run-standalone-install-tests
 
 # RUN: echo "test full install" | tee %t
 # CHECK: test full install
diff --git a/mlir/test/lit.cfg.py b/mlir/test/lit.cfg.py
index e3bf1ea943374..c1cd371a466b7 100644
--- a/mlir/test/lit.cfg.py
+++ b/mlir/test/lit.cfg.py
@@ -383,6 +383,3 @@ def have_host_jit_feature_support(feature_name):
 
 if sys.version_info >= (3, 11):
     config.available_features.add("python-ge-311")
-
-if "GITHUB_ACTIONS" in os.environ:
-    config.available_features.add("github-actions")
diff --git a/mlir/test/lit.site.cfg.py.in b/mlir/test/lit.site.cfg.py.in
index ebac12ca42da7..b1044f5f86563 100644
--- a/mlir/test/lit.site.cfg.py.in
+++ b/mlir/test/lit.site.cfg.py.in
@@ -36,6 +36,7 @@ config.build_examples = @LLVM_BUILD_EXAMPLES@
 config.run_nvptx_tests = @LLVM_HAS_NVPTX_TARGET@
 config.enable_cuda_runner = @MLIR_ENABLE_CUDA_RUNNER@
 config.run_rocm_tests = @MLIR_ENABLE_ROCM_CONVERSIONS@
+config.run_standalone_install_tests = @MLIR_RUN_STANDALONE_INSTALL_TESTS@
 config.enable_rocm_runner = @MLIR_ENABLE_ROCM_RUNNER@
 config.gpu_compilation_format = "@MLIR_GPU_COMPILATION_TEST_FORMAT@"
 config.rocm_test_chipset = "@ROCM_TEST_CHIPSET@"

>From f4660849ac72819928434bc012b5b1c660bb4e57 Mon Sep 17 00:00:00 2001
From: makslevental <maksim.leven...@gmail.com>
Date: Thu, 11 Sep 2025 15:08:16 -0700
Subject: [PATCH 11/14] run CI


>From a23d8d277eae7dfbc15593ffcdfc0dadd427cd10 Mon Sep 17 00:00:00 2001
From: makslevental <maksim.leven...@gmail.com>
Date: Thu, 11 Sep 2025 16:08:29 -0700
Subject: [PATCH 12/14] remove pre

---
 mlir/examples/standalone/test/lit.cfg.py | 2 +-
 mlir/test/lit.cfg.py                     | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/mlir/examples/standalone/test/lit.cfg.py 
b/mlir/examples/standalone/test/lit.cfg.py
index d4c1918fc5b3e..447d214d9507c 100644
--- a/mlir/examples/standalone/test/lit.cfg.py
+++ b/mlir/examples/standalone/test/lit.cfg.py
@@ -53,7 +53,7 @@
 
 tool_dirs = [config.standalone_tools_dir, config.llvm_tools_dir]
 tools = [
-    ToolSubst("mlir-opt", pre=";", post=";", unresolved="fatal"),
+    ToolSubst("mlir-opt", post=";", unresolved="fatal"),
     "standalone-capi-test",
     "standalone-opt",
     "standalone-translate",
diff --git a/mlir/test/lit.cfg.py b/mlir/test/lit.cfg.py
index c1cd371a466b7..e992d81273141 100644
--- a/mlir/test/lit.cfg.py
+++ b/mlir/test/lit.cfg.py
@@ -187,7 +187,7 @@ def find_real_python_interpreter():
     llvm_config.with_environment("PATH", dirs, append_path=True)
 
 tools = [
-    ToolSubst("mlir-tblgen", pre=";", post=";", unresolved="fatal"),
+    ToolSubst("mlir-tblgen", post=";", unresolved="fatal"),
     "mlir-translate",
     "mlir-lsp-server",
     "mlir-capi-execution-engine-test",
@@ -318,7 +318,7 @@ def find_real_python_interpreter():
         ]
     )
 else:
-    tools.extend([ToolSubst("mlir-opt", pre=";", post=";", 
unresolved="fatal")])
+    tools.extend([ToolSubst("mlir-opt", post=";", unresolved="fatal")])
 
 llvm_config.add_tool_substitutions(tools, tool_dirs)
 

>From dc067b5d51b0f27dcd7d70e68c880a5c436c04bd Mon Sep 17 00:00:00 2001
From: Maksim Levental <maksim.leven...@gmail.com>
Date: Thu, 11 Sep 2025 21:49:56 -0400
Subject: [PATCH 13/14] reduce install-distribution test

---
 mlir/examples/standalone/CMakeLists.txt       |  1 +
 .../Examples/standalone/test.install-dir.toy  | 28 +------------------
 2 files changed, 2 insertions(+), 27 deletions(-)

diff --git a/mlir/examples/standalone/CMakeLists.txt 
b/mlir/examples/standalone/CMakeLists.txt
index f94405f92c1e9..88dfa3e5d57a3 100644
--- a/mlir/examples/standalone/CMakeLists.txt
+++ b/mlir/examples/standalone/CMakeLists.txt
@@ -8,6 +8,7 @@ set(CMAKE_CXX_STANDARD 17 CACHE STRING "C++ standard to conform 
to")
 if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
   find_package(MLIR REQUIRED CONFIG)
 
+
   # Define the default argument to use by `lit` when testing.
   set(LLVM_LIT_ARGS "-sv" CACHE STRING "Default options for lit")
 
diff --git a/mlir/test/Examples/standalone/test.install-dir.toy 
b/mlir/test/Examples/standalone/test.install-dir.toy
index e6af922dad83c..e3cdc481d66be 100644
--- a/mlir/test/Examples/standalone/test.install-dir.toy
+++ b/mlir/test/Examples/standalone/test.install-dir.toy
@@ -1,32 +1,6 @@
 # REQUIRES: run-standalone-install-tests
 
-# RUN: echo "test full install" | tee %t
-# CHECK: test full install
-
-# RUN: rm -rf "%host_cmake_install_prefix"
-
-# RUN: "%cmake_exe" --build "%llvm_obj_root" --target install -j | tee -a %t
-
-# RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
-# RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
-# RUN: -DCMAKE_CXX_COMPILER_LAUNCHER=%cmake_cxx_compiler_launcher 
-DCMAKE_C_COMPILER_LAUNCHER=%cmake_c_compiler_launcher \
-# RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx \
-# RUN: -DLLVM_EXTERNAL_LIT="%llvm_obj_root/bin/llvm-lit" \
-# RUN: -DMLIR_DIR="%host_cmake_install_prefix/lib/cmake/mlir" \
-# RUN: -DLLVM_DIR="%host_cmake_install_prefix/lib/cmake/llvm" \
-# RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
-# RUN: -DPython3_EXECUTABLE=%python \
-# RUN: -DPython_EXECUTABLE=%python | tee -a %t
-
-# RUN: "%cmake_exe" --build . --target check-standalone -j | tee -a %t
-
-# CHECK: Passed
-# CHECK-NOT: Failed
-# UNSUPPORTED: target={{.*(windows|android).*}}
-
-# RUN: rm -rf "%host_cmake_install_prefix"
-
-# RUN: echo "test install distribution" | tee -a %t
+# RUN: echo "test install distribution" | tee %t
 # CHECK: test install distribution
 
 # RUN: "%cmake_exe" "%llvm_src_root" -DCMAKE_BUILD_TYPE=%cmake_build_type -B 
"%llvm_obj_root" \

>From 2c833b4f48ec3b479551f775e50e7706b41a5d42 Mon Sep 17 00:00:00 2001
From: Maksim Levental <maksim.leven...@gmail.com>
Date: Mon, 15 Sep 2025 22:07:17 -0400
Subject: [PATCH 14/14] use add_custom_target

---
 mlir/examples/standalone/test/lit.cfg.py      |  2 +-
 mlir/test/CMakeLists.txt                      | 54 ++++++++++++++++---
 mlir/test/Examples/standalone/lit.local.cfg   | 13 ++---
 .../Examples/standalone/test.install-dir.toy  | 17 +++---
 mlir/test/lit.site.cfg.py.in                  |  4 +-
 5 files changed, 60 insertions(+), 30 deletions(-)

diff --git a/mlir/examples/standalone/test/lit.cfg.py 
b/mlir/examples/standalone/test/lit.cfg.py
index 447d214d9507c..e27dddd7fb0b9 100644
--- a/mlir/examples/standalone/test/lit.cfg.py
+++ b/mlir/examples/standalone/test/lit.cfg.py
@@ -53,7 +53,7 @@
 
 tool_dirs = [config.standalone_tools_dir, config.llvm_tools_dir]
 tools = [
-    ToolSubst("mlir-opt", post=";", unresolved="fatal"),
+    "mlir-opt",
     "standalone-capi-test",
     "standalone-opt",
     "standalone-translate",
diff --git a/mlir/test/CMakeLists.txt b/mlir/test/CMakeLists.txt
index 922325bd3ba27..60e4dd5f5cd2d 100644
--- a/mlir/test/CMakeLists.txt
+++ b/mlir/test/CMakeLists.txt
@@ -65,11 +65,7 @@ if (MLIR_INCLUDE_INTEGRATION_TESTS)
 
 endif()
 
-option(MLIR_RUN_STANDALONE_INSTALL_TESTS "Run Standalone example install 
tests." ON)
-if(MLIR_RUN_STANDALONE_INSTALL_TESTS AND "${CMAKE_INSTALL_PREFIX}" STREQUAL "")
-  message(WARNING "Standalone example install tests will install into root!\
-  If you want to disable this behavior pass 
-DMLIR_RUN_STANDALONE_INSTALL_TESTS=OFF")
-endif()
+option(MLIR_RUN_STANDALONE_INSTALL_TEST "Run Standalone example install test." 
ON)
 
 llvm_canonicalize_cmake_booleans(
   LLVM_BUILD_EXAMPLES
@@ -82,7 +78,7 @@ llvm_canonicalize_cmake_booleans(
   MLIR_ENABLE_SPIRV_CPU_RUNNER
   MLIR_ENABLE_VULKAN_RUNNER
   MLIR_INCLUDE_INTEGRATION_TESTS
-  MLIR_RUN_STANDALONE_INSTALL_TESTS
+  MLIR_RUN_STANDALONE_INSTALL_TEST
   MLIR_RUN_AMX_TESTS
   MLIR_RUN_CUDA_TENSOR_CORE_TESTS
   MLIR_RUN_X86VECTOR_TESTS
@@ -132,6 +128,52 @@ set(MLIR_TEST_DEPENDS
 if(NOT MLIR_STANDALONE_BUILD)
   list(APPEND MLIR_TEST_DEPENDS FileCheck count not split-file yaml2obj)
 endif()
+if (MLIR_RUN_STANDALONE_INSTALL_TEST)
+  set(MLIR_STANDALONE_INSTALL_TEST_PREFIX 
"${MLIR_BINARY_DIR}/mlir-standalone-test-install")
+  add_custom_target(
+    install-mlir-standalone-test-prefix
+    DEPENDS mlir-headers mlir-libraries mlir-cmake-exports mlir-tblgen
+            mlir-opt mlir-python-sources FileCheck count not
+    COMMAND ${CMAKE_COMMAND} -E make_directory 
"${MLIR_STANDALONE_INSTALL_TEST_PREFIX}"
+    COMMAND "${CMAKE_COMMAND}"
+            -DCMAKE_INSTALL_COMPONENT=mlir-headers
+            -DCMAKE_INSTALL_PREFIX="${MLIR_STANDALONE_INSTALL_TEST_PREFIX}"
+            -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
+    COMMAND "${CMAKE_COMMAND}"
+            -DCMAKE_INSTALL_COMPONENT=mlir-libraries
+            -DCMAKE_INSTALL_PREFIX="${MLIR_STANDALONE_INSTALL_TEST_PREFIX}"
+            -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
+    COMMAND "${CMAKE_COMMAND}"
+            -DCMAKE_INSTALL_COMPONENT=mlir-cmake-exports
+            -DCMAKE_INSTALL_PREFIX="${MLIR_STANDALONE_INSTALL_TEST_PREFIX}"
+            -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
+    COMMAND "${CMAKE_COMMAND}"
+            -DCMAKE_INSTALL_COMPONENT=mlir-tblgen
+            -DCMAKE_INSTALL_PREFIX="${MLIR_STANDALONE_INSTALL_TEST_PREFIX}"
+            -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
+    COMMAND "${CMAKE_COMMAND}"
+            -DCMAKE_INSTALL_COMPONENT=mlir-opt
+            -DCMAKE_INSTALL_PREFIX="${MLIR_STANDALONE_INSTALL_TEST_PREFIX}"
+            -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
+    COMMAND "${CMAKE_COMMAND}"
+            -DCMAKE_INSTALL_COMPONENT=mlir-python-sources
+            -DCMAKE_INSTALL_PREFIX="${MLIR_STANDALONE_INSTALL_TEST_PREFIX}"
+            -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
+    COMMAND "${CMAKE_COMMAND}"
+            -DCMAKE_INSTALL_COMPONENT=FileCheck
+            -DCMAKE_INSTALL_PREFIX="${MLIR_STANDALONE_INSTALL_TEST_PREFIX}"
+            -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
+    COMMAND "${CMAKE_COMMAND}"
+            -DCMAKE_INSTALL_COMPONENT=count
+            -DCMAKE_INSTALL_PREFIX="${MLIR_STANDALONE_INSTALL_TEST_PREFIX}"
+            -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
+    COMMAND "${CMAKE_COMMAND}"
+            -DCMAKE_INSTALL_COMPONENT=not
+            -DCMAKE_INSTALL_PREFIX="${MLIR_STANDALONE_INSTALL_TEST_PREFIX}"
+            -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
+  )
+  list(APPEND MLIR_TEST_DEPENDS install-mlir-standalone-test-prefix)
+endif()
 
 set(MLIR_TEST_DEPENDS ${MLIR_TEST_DEPENDS}
   mlir-capi-pdl-test
diff --git a/mlir/test/Examples/standalone/lit.local.cfg 
b/mlir/test/Examples/standalone/lit.local.cfg
index cd2df2dd8f3a8..0f58cc50b4572 100644
--- a/mlir/test/Examples/standalone/lit.local.cfg
+++ b/mlir/test/Examples/standalone/lit.local.cfg
@@ -12,17 +12,10 @@ config.substitutions.append(("%mlir_cmake_dir", 
config.mlir_cmake_dir))
 config.substitutions.append(("%llvm_use_linker", config.llvm_use_linker))
 config.substitutions.append(("%llvm_obj_root", config.llvm_obj_root))
 config.substitutions.append(("%llvm_src_root", config.llvm_src_root))
-config.substitutions.append(("%host_cmake_install_prefix", 
config.host_cmake_install_prefix))
+config.substitutions.append(("%standalone_install_test_prefix", 
config.standalone_install_test_prefix))
 config.substitutions.append(("%cmake_build_type", config.cmake_build_type))
 config.substitutions.append(("%cmake_c_compiler_launcher", 
config.cmake_c_compiler_launcher))
 config.substitutions.append(("%cmake_cxx_compiler_launcher", 
config.cmake_cxx_compiler_launcher))
 
-if config.run_standalone_install_tests:
-    config.available_features.add("run-standalone-install-tests")
-    # see 
https://github.com/llvm/llvm-project/blob/57782eff31e9d454b54a201c7ac43dc1b93dbb3f/llvm/utils/lit/lit/TestRunner.py#L1858
-    config.substitutions.insert(0, ("FileCheck", "FileChuck"))
-    config.substitutions.insert(0, ("count", "kount"))
-    config.substitutions.insert(0, ("not", "mot"))
-    config.substitutions.append(("kount", "count"))
-    config.substitutions.append(("mot", "not"))
-    config.substitutions.append(("FileChuck", "FileCheck"))
+if config.run_standalone_install_test:
+    config.available_features.add("run-standalone-install-test")
diff --git a/mlir/test/Examples/standalone/test.install-dir.toy 
b/mlir/test/Examples/standalone/test.install-dir.toy
index e3cdc481d66be..a9711a2852965 100644
--- a/mlir/test/Examples/standalone/test.install-dir.toy
+++ b/mlir/test/Examples/standalone/test.install-dir.toy
@@ -1,20 +1,15 @@
-# REQUIRES: run-standalone-install-tests
+# REQUIRES: run-standalone-install-test
 
-# RUN: echo "test install distribution" | tee %t
-# CHECK: test install distribution
-
-# RUN: "%cmake_exe" "%llvm_src_root" -DCMAKE_BUILD_TYPE=%cmake_build_type -B 
"%llvm_obj_root" \
-# RUN: 
-DLLVM_DISTRIBUTION_COMPONENTS="llvm-headers;llvm-libraries;cmake-exports;FileCheck;count;not;mlir-headers;mlir-libraries;mlir-cmake-exports;mlir-tblgen;mlir-opt;mlir-python-sources"
 | tee -a %t
-
-# RUN: "%cmake_exe" --build "%llvm_obj_root" --target install-distribution -j 
| tee -a %t
+# RUN: echo "test install" | tee %t
+# CHECK: test install
 
 # RUN: "%cmake_exe" "%mlir_src_root/examples/standalone" -G "%cmake_generator" 
\
 # RUN: -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc \
 # RUN: -DCMAKE_CXX_COMPILER_LAUNCHER=%cmake_cxx_compiler_launcher 
-DCMAKE_C_COMPILER_LAUNCHER=%cmake_c_compiler_launcher \
 # RUN: -DLLVM_ENABLE_LIBCXX=%enable_libcxx \
 # RUN: -DLLVM_EXTERNAL_LIT="%llvm_obj_root/bin/llvm-lit" \
-# RUN: -DMLIR_DIR="%host_cmake_install_prefix/lib/cmake/mlir" \
-# RUN: -DLLVM_DIR="%host_cmake_install_prefix/lib/cmake/llvm" \
+# RUN: -DMLIR_DIR="%standalone_install_test_prefix/lib/cmake/mlir" \
+# RUN: -DLLVM_DIR="%standalone_install_test_prefix/lib/cmake/llvm" \
 # RUN: -DLLVM_USE_LINKER=%llvm_use_linker \
 # RUN: -DPython3_EXECUTABLE=%python \
 # RUN: -DPython_EXECUTABLE=%python | tee -a %t
@@ -25,4 +20,4 @@
 
 # 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 b1044f5f86563..a6a204456ea60 100644
--- a/mlir/test/lit.site.cfg.py.in
+++ b/mlir/test/lit.site.cfg.py.in
@@ -22,7 +22,7 @@ config.cmake_build_type = "@CMAKE_BUILD_TYPE@"
 config.cmake_c_compiler_launcher = "@CMAKE_C_COMPILER_LAUNCHER@"
 config.cmake_cxx_compiler_launcher= "@CMAKE_CXX_COMPILER_LAUNCHER@"
 config.host_cmake_generator = "@CMAKE_GENERATOR@"
-config.host_cmake_install_prefix = "@CMAKE_INSTALL_PREFIX@"
+config.standalone_install_test_prefix = "@MLIR_STANDALONE_INSTALL_TEST_PREFIX@"
 config.llvm_use_linker = "@LLVM_USE_LINKER@"
 config.llvm_use_sanitizer = "@LLVM_USE_SANITIZER@"
 config.host_arch = "@HOST_ARCH@"
@@ -36,7 +36,7 @@ config.build_examples = @LLVM_BUILD_EXAMPLES@
 config.run_nvptx_tests = @LLVM_HAS_NVPTX_TARGET@
 config.enable_cuda_runner = @MLIR_ENABLE_CUDA_RUNNER@
 config.run_rocm_tests = @MLIR_ENABLE_ROCM_CONVERSIONS@
-config.run_standalone_install_tests = @MLIR_RUN_STANDALONE_INSTALL_TESTS@
+config.run_standalone_install_test = @MLIR_RUN_STANDALONE_INSTALL_TEST@
 config.enable_rocm_runner = @MLIR_ENABLE_ROCM_RUNNER@
 config.gpu_compilation_format = "@MLIR_GPU_COMPILATION_TEST_FORMAT@"
 config.rocm_test_chipset = "@ROCM_TEST_CHIPSET@"

_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to