[Mlir-commits] [mlir] [mlir][python][cmake] Remove unsupported argument from AddMLIRPython. (PR #123858)
Scott Todd
llvmlistbot at llvm.org
Tue Jan 21 16:22:43 PST 2025
https://github.com/ScottTodd created https://github.com/llvm/llvm-project/pull/123858
See https://cmake.org/cmake/help/latest/policy/CMP0175.html
> The `OUTPUT` form does not accept `PRE_BUILD`, `PRE_LINK`, or `POST_BUILD` keywords.
When using CMake version 3.31+, this results in ~2000 lines of warning spam in my downstream project:
```
CMake Warning (dev) at build-gcc/lib/cmake/mlir/AddMLIRPython.cmake:606 (add_custom_command):
The following keywords are not supported when using
add_custom_command(OUTPUT): PRE_BUILD.
Policy CMP0175 is not set: add_custom_command() rejects invalid arguments.
Run "cmake --help-policy CMP0175" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
Call Stack (most recent call first):
build-gcc/lib/cmake/mlir/AddMLIRPython.cmake:222 (add_mlir_python_sources_target)
build-gcc/lib/cmake/mlir/AddMLIRPython.cmake:256 (_process_target)
compiler/bindings/python/CMakeLists.txt:239 (add_mlir_python_modules)
This warning is for project developers. Use -Wno-dev to suppress it.
```
General docs: https://cmake.org/cmake/help/latest/command/add_custom_command.html. Note that `PRE_BUILD` only appears in the _second_ signature for the function (which takes `TARGET`) not the first (which takes `OUTPUT`).
>From 87aae1bdf8aab3429ac91e4743d8fb675f121356 Mon Sep 17 00:00:00 2001
From: Scott Todd <scott.todd0 at gmail.com>
Date: Tue, 21 Jan 2025 16:12:43 -0800
Subject: [PATCH] Remove invalid PRE_BUILD from AddMLIRPython.cmake.
---
mlir/cmake/modules/AddMLIRPython.cmake | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/mlir/cmake/modules/AddMLIRPython.cmake b/mlir/cmake/modules/AddMLIRPython.cmake
index 815f65b106d945..3f5f2a35f8fb2e 100644
--- a/mlir/cmake/modules/AddMLIRPython.cmake
+++ b/mlir/cmake/modules/AddMLIRPython.cmake
@@ -605,7 +605,6 @@ function(add_mlir_python_sources_target name)
add_custom_command(
OUTPUT "${_dest_path}"
- PRE_BUILD
COMMENT "Copying python source ${_src_path} -> ${_dest_path}"
DEPENDS "${_src_path}"
COMMAND "${CMAKE_COMMAND}" -E ${_link_or_copy}
@@ -702,7 +701,7 @@ function(add_mlir_python_extension libname extname)
${eh_rtti_enable}
)
endif()
-
+
if(APPLE)
# NanobindAdaptors.h uses PyClassMethod_New to build `pure_subclass`es but nanobind
# doesn't declare this API as undefined in its linker flags. So we need to declare it as such
More information about the Mlir-commits
mailing list