Skip to content

Commit de82deb

Browse files
Removed hard-coded paths, updated to CMake 3.27
Used Python_add_library, instead of removed add_library followed by python_extension_module function from scikit-build. Removed superfluous comments
1 parent 2c87ff7 commit de82deb

File tree

1 file changed

+9
-20
lines changed

1 file changed

+9
-20
lines changed

CMakeLists.txt

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
1-
cmake_minimum_required(VERSION 3.21...3.25 FATAL_ERROR)
1+
cmake_minimum_required(VERSION 3.27...3.28 FATAL_ERROR)
22

3-
if (${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.24")
4-
cmake_policy(SET CMP0135 NEW)
5-
endif()
3+
cmake_policy(SET CMP0135 NEW)
64

75
project(mkl_umath
86
LANGUAGES C
@@ -11,7 +9,6 @@ project(mkl_umath
119

1210
find_package(Python COMPONENTS Interpreter Development REQUIRED)
1311
find_package(NumPy REQUIRED)
14-
find_package(PythonExtensions REQUIRED)
1512

1613
set(CYTHON_FLAGS "-t -w \"${CMAKE_SOURCE_DIR}\"")
1714
find_package(Cython REQUIRED)
@@ -20,14 +17,6 @@ set(MKL_ARCH intel64)
2017
set(MKL_LINK sdl)
2118
set(MKL_THREADING intel_thread)
2219
set(MKL_INTERFACE ilp64)
23-
# MKL_ARCH: None, set to ` intel64` by default
24-
# MKL_ROOT /localdisk/work/aguzmanb/Development/miniconda3.py310/envs/numpy_umath_prefix.v5
25-
# MKL_DPCPP_LINK: None, set to ` dynamic` by default
26-
# MKL_LINK: None, set to ` dynamic` by default
27-
# MKL_DPCPP_INTERFACE_FULL: None, set to ` intel_ilp64` by default
28-
# MKL_INTERFACE_FULL: None, set to ` intel_ilp64` by default
29-
# MKL_DPCPP_THREADING: None, set to ` tbb_thread` by default
30-
# MKL_THREADING: None, set to ` intel_thread` by default
3120
find_package(MKL REQUIRED)
3221

3322
if(WIN32)
@@ -97,32 +86,32 @@ set(_linker_options ${MKL_UMATH_LINKER_OPTIONS})
9786
set(_trgt mkl_umath_loops)
9887
add_library(${_trgt} SHARED "mkl_umath/src/mkl_umath_loops.c")
9988
set_target_properties(${_trgt} PROPERTIES CMAKE_POSITION_INDEPENDENT_CODE ON)
100-
target_include_directories(${_trgt} PRIVATE "mkl_umath/src/" ${NumPy_INCLUDE_DIR} ${PYTHON_INCLUDE_DIR} "C:/Users/aguzmanb/Development/mambaforge/envs/mkl_umath_prefix/Library/include")
89+
target_include_directories(${_trgt} PRIVATE "mkl_umath/src/" ${NumPy_INCLUDE_DIR} ${PYTHON_INCLUDE_DIR})
10190
target_link_libraries(${_trgt} PRIVATE mkl_rt ${Python_LIBRARIES})
10291
target_link_options(${_trgt} PRIVATE ${_linker_options})
92+
target_compile_options(${_trgt} PRIVATE -fveclib=SVML)
93+
target_compile_options(${_trgt} PRIVATE -fvectorize)
10394
install(TARGETS ${_trgt}
10495
LIBRARY DESTINATION mkl_umath
10596
ARCHIVE DESTINATION mkl_umath
10697
RUNTIME DESTINATION mkl_umath
10798
)
10899

109-
add_library(_ufuncs MODULE "mkl_umath/src/ufuncsmodule.c" "mkl_umath/src/__umath_generated.c")
100+
Python_add_library(_ufuncs MODULE WITH_SOABI "mkl_umath/src/ufuncsmodule.c" "mkl_umath/src/__umath_generated.c")
110101
target_include_directories(_ufuncs PRIVATE "mkl_umath/src" ${NumPy_INCLUDE_DIR} ${MKL_INCLUDE_DIR})
111102
target_compile_definitions(_ufuncs PUBLIC NPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION)
112103
target_link_options(_ufuncs PRIVATE ${_linker_options})
113-
target_link_libraries(_ufuncs mkl_umath_loops)
114-
python_extension_module(_ufuncs)
104+
target_link_libraries(_ufuncs PRIVATE mkl_umath_loops)
115105
if (UNIX)
116106
set_target_properties(_ufuncs PROPERTIES INSTALL_RPATH "$ORIGIN")
117107
endif()
118108
install(TARGETS _ufuncs LIBRARY DESTINATION mkl_umath)
119109

120110
add_cython_target(_patch "mkl_umath/src/_patch.pyx" C OUTPUT_VAR _generated_src)
121-
add_library(_patch MODULE ${_generated_src})
111+
Python_add_library(_patch MODULE WITH_SOABI ${_generated_src})
122112
target_include_directories(_patch PRIVATE "mkl_umath/src/" ${NumPy_INCLUDE_DIR} ${PYTHON_INCLUDE_DIR})
123113
target_compile_definitions(_patch PUBLIC NPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION)
124-
target_link_libraries(_patch mkl_umath_loops)
125-
python_extension_module(_patch)
114+
target_link_libraries(_patch PRIVATE mkl_umath_loops)
126115
if (UNIX)
127116
set_target_properties(_patch PROPERTIES INSTALL_RPATH "$ORIGIN")
128117
endif()

0 commit comments

Comments
 (0)