Install mlx.dll into the same dir with python bindings on Windows (#1690)

* Install mlx.dll into the same dir with python bindings on Windows

* Set BUILD_SHARED_LIBS for dlfcn-win32

* Update cmake requirements to 3.25

* Fix cmake style
This commit is contained in:
Cheng 2024-12-14 12:50:39 +09:00 committed by GitHub
parent 4768c61b57
commit f9640e049d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 12 additions and 6 deletions

View File

@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.24)
cmake_minimum_required(VERSION 3.25)
project(mlx LANGUAGES C CXX)
@ -126,7 +126,10 @@ if(WIN32)
GIT_REPOSITORY https://github.com/dlfcn-win32/dlfcn-win32.git
GIT_TAG v1.4.1
EXCLUDE_FROM_ALL)
block()
set(BUILD_SHARED_LIBS OFF)
FetchContent_MakeAvailable(dlfcn-win32)
endblock()
target_include_directories(mlx PRIVATE "${dlfcn-win32_SOURCE_DIR}/src")
target_link_libraries(mlx PRIVATE dl)
endif()
@ -264,7 +267,10 @@ install(
EXPORT MLXTargets
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
RUNTIME
DESTINATION
# On Windows, DLLs must be put in the same dir with the python bindings.
$<IF:$<BOOL:${WIN32}>,${CMAKE_INSTALL_PREFIX},${CMAKE_INSTALL_BINDIR}>
INCLUDES
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})

View File

@ -53,7 +53,7 @@ Build Requirements
^^^^^^^^^^^^^^^^^^
- A C++ compiler with C++17 support (e.g. Clang >= 5.0)
- `cmake <https://cmake.org/>`_ -- version 3.24 or later, and ``make``
- `cmake <https://cmake.org/>`_ -- version 3.25 or later, and ``make``
- Xcode >= 15.0 and macOS SDK >= 14.0
.. note::

View File

@ -1,7 +1,7 @@
[build-system]
requires = [
"setuptools>=42",
"cmake>=3.24",
"cmake>=3.25",
"mlx>=0.18.0",
"nanobind==2.2.0",
]

View File

@ -1,4 +1,4 @@
setuptools>=42
cmake>=3.24
cmake>=3.25
mlx>=0.21.0
nanobind==2.2.0

View File

@ -2,6 +2,6 @@
requires = [
"setuptools>=42",
"nanobind==2.2.0",
"cmake>=3.24",
"cmake>=3.25",
]
build-backend = "setuptools.build_meta"