[llvm] [mlir] [CMake] add `SKIP` to `add_lit_testsuites` (PR #157176)

Maksim Levental via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 5 18:59:10 PDT 2025


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

>From e07f28d499700c7c50a2fa3046c7e8e3c56b96a9 Mon Sep 17 00:00:00 2001
From: makslevental <maksim.levental at gmail.com>
Date: Fri, 5 Sep 2025 13:59:00 -0700
Subject: [PATCH] [CMake] add SKIP to add_lit_testsuites

---
 llvm/cmake/modules/AddLLVM.cmake | 12 +++++++++++-
 mlir/test/CMakeLists.txt         |  1 +
 mlir/test/python/CMakeLists.txt  |  9 +++++++++
 3 files changed, 21 insertions(+), 1 deletion(-)

diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
index 835750e2d2a13..7ee299c5d4871 100644
--- a/llvm/cmake/modules/AddLLVM.cmake
+++ b/llvm/cmake/modules/AddLLVM.cmake
@@ -2192,7 +2192,7 @@ endfunction()
 
 function(add_lit_testsuites project directory)
   if (NOT LLVM_ENABLE_IDE)
-    cmake_parse_arguments(ARG "EXCLUDE_FROM_CHECK_ALL" "FOLDER;BINARY_DIR" "PARAMS;DEPENDS;ARGS" ${ARGN})
+    cmake_parse_arguments(ARG "EXCLUDE_FROM_CHECK_ALL" "FOLDER;BINARY_DIR" "PARAMS;DEPENDS;ARGS;SKIP" ${ARGN})
 
     if (NOT ARG_FOLDER)
       get_subproject_title(subproject_title)
@@ -2214,6 +2214,16 @@ function(add_lit_testsuites project directory)
 
       # Create a check- target for the directory.
       string(REPLACE "${directory}/" "" name_slash ${lit_suite})
+      set(_should_skip FALSE)
+      foreach(skip IN LISTS ARG_SKIP)
+        if(name_slash MATCHES "${skip}")
+          set(_should_skip TRUE)
+          break()
+        endif()
+      endforeach()
+      if (_should_skip)
+        continue()
+      endif()
       if (name_slash)
         set(filter ${name_slash})
         string(REPLACE "/" "-" name_slash ${name_slash})
diff --git a/mlir/test/CMakeLists.txt b/mlir/test/CMakeLists.txt
index 8ddc620ae33be..c415e65043d0f 100644
--- a/mlir/test/CMakeLists.txt
+++ b/mlir/test/CMakeLists.txt
@@ -247,4 +247,5 @@ add_lit_testsuite(check-mlir "Running the MLIR regression tests"
 
 add_lit_testsuites(MLIR ${CMAKE_CURRENT_SOURCE_DIR}
   DEPENDS ${MLIR_TEST_DEPENDS}
+  SKIP python
 )
diff --git a/mlir/test/python/CMakeLists.txt b/mlir/test/python/CMakeLists.txt
index 1db957c86819d..9ccbfa90471d4 100644
--- a/mlir/test/python/CMakeLists.txt
+++ b/mlir/test/python/CMakeLists.txt
@@ -10,3 +10,12 @@ mlir_tablegen(lib/PythonTestTypes.cpp.inc -gen-typedef-defs)
 add_public_tablegen_target(MLIRPythonTestIncGen)
 
 add_subdirectory(lib)
+
+set(MLIR_PYTHON_TEST_DEPENDS MLIRPythonModules)
+if(NOT MLIR_STANDALONE_BUILD)
+  list(APPEND MLIR_PYTHON_TEST_DEPENDS FileCheck)
+endif()
+add_lit_testsuite(check-mlir-python "Running the MLIR Python regression tests"
+  ${CMAKE_CURRENT_BINARY_DIR}
+  DEPENDS ${MLIR_PYTHON_TEST_DEPENDS}
+)



More information about the llvm-commits mailing list