[Mlir-commits] [mlir] 6a7687c - [mlir][python] Support `CLANG_CL` (#121075)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Tue Dec 24 20:36:01 PST 2024
Author: Maksim Levental
Date: 2024-12-24T23:35:58-05:00
New Revision: 6a7687c455125f6597a9719227a0efcb7f71e572
URL: https://github.com/llvm/llvm-project/commit/6a7687c455125f6597a9719227a0efcb7f71e572
DIFF: https://github.com/llvm/llvm-project/commit/6a7687c455125f6597a9719227a0efcb7f71e572.diff
LOG: [mlir][python] Support `CLANG_CL` (#121075)
Added:
Modified:
mlir/cmake/modules/AddMLIR.cmake
mlir/cmake/modules/AddMLIRPython.cmake
Removed:
################################################################################
diff --git a/mlir/cmake/modules/AddMLIR.cmake b/mlir/cmake/modules/AddMLIR.cmake
index e1e79593ec2cb4..9c7b00b660ba7d 100644
--- a/mlir/cmake/modules/AddMLIR.cmake
+++ b/mlir/cmake/modules/AddMLIR.cmake
@@ -584,7 +584,7 @@ function(add_mlir_aggregate name)
# TODO: Should be transitive.
set_target_properties(${name} PROPERTIES
MLIR_AGGREGATE_EXCLUDE_LIBS "${_embed_libs}")
- if(MSVC)
+ if(WIN32)
set_property(TARGET ${name} PROPERTY WINDOWS_EXPORT_ALL_SYMBOLS ON)
endif()
diff --git a/mlir/cmake/modules/AddMLIRPython.cmake b/mlir/cmake/modules/AddMLIRPython.cmake
index 53a70139fd5a68..9d4e06c7909c81 100644
--- a/mlir/cmake/modules/AddMLIRPython.cmake
+++ b/mlir/cmake/modules/AddMLIRPython.cmake
@@ -512,7 +512,7 @@ function(add_mlir_python_common_capi_library name)
)
add_dependencies(${name} ${_header_sources_target})
- if(MSVC)
+ if(WIN32)
set_property(TARGET ${name} PROPERTY WINDOWS_EXPORT_ALL_SYMBOLS ON)
endif()
set_target_properties(${name} PROPERTIES
@@ -649,6 +649,15 @@ function(add_mlir_python_extension libname extname)
message(FATAL_ERROR "Unhandled arguments to add_mlir_python_extension(${libname}, ... : ${ARG_UNPARSED_ARGUMENTS}")
endif()
+ # The extension itself must be compiled with RTTI and exceptions enabled.
+ # Also, some warning classes triggered by pybind11 are disabled.
+ set(eh_rtti_enable)
+ if (MSVC)
+ set(eh_rtti_enable /EHsc /GR)
+ elseif(LLVM_COMPILER_IS_GCC_COMPATIBLE OR CLANG_CL)
+ set(eh_rtti_enable -frtti -fexceptions)
+ endif ()
+
# The actual extension library produces a shared-object or DLL and has
# sources that must be compiled in accordance with pybind11 needs (RTTI and
# exceptions).
@@ -671,18 +680,11 @@ function(add_mlir_python_extension libname extname)
-Wno-nested-anon-types
-Wno-c++98-compat-extra-semi
-Wno-covered-switch-default
+ ${eh_rtti_enable}
)
endif()
endif()
- # The extension itself must be compiled with RTTI and exceptions enabled.
- # Also, some warning classes triggered by pybind11 are disabled.
- set(eh_rtti_enable)
- if (MSVC)
- set(eh_rtti_enable /EHsc /GR)
- elseif(LLVM_COMPILER_IS_GCC_COMPATIBLE)
- set(eh_rtti_enable -frtti -fexceptions)
- endif ()
target_compile_options(${libname} PRIVATE ${eh_rtti_enable})
# Configure the output to match python expectations.
More information about the Mlir-commits
mailing list