mirror of
https://github.com/macports/macports-ports.git
synced 2026-07-12 18:20:25 -07:00
63 lines
2.4 KiB
Diff
63 lines
2.4 KiB
Diff
diff --git a/cmake/ThirdPartyPython.cmake b/cmake/ThirdPartyPython.cmake
|
|
index f1e37ba1a..643bf225c 100644
|
|
--- cmake/ThirdPartyPython.cmake
|
|
+++ cmake/ThirdPartyPython.cmake
|
|
@@ -40,18 +40,27 @@ IF (NEKTAR_BUILD_PYTHON)
|
|
COMMAND ${Python3_EXECUTABLE} -m pip install .
|
|
WORKING_DIRECTORY ${NEKPY_BASE_DIR})
|
|
|
|
- EXTERNALPROJECT_ADD(
|
|
- pybind11
|
|
- PREFIX ${TPSRC}
|
|
- URL ${TPURL}/pybind11-002c05b17.zip
|
|
- URL_MD5 4fd2f2df6a8a4f28c260e56163bf4481
|
|
- STAMP_DIR ${TPBUILD}/stamp
|
|
- DOWNLOAD_DIR ${TPSRC}
|
|
- SOURCE_DIR ${TPSRC}/pybind11
|
|
- BINARY_DIR ${TPBUILD}/pybind11
|
|
- TMP_DIR ${TPBUILD}/pybind11-tmp
|
|
- INSTALL_DIR ${TPDIST}
|
|
- CONFIGURE_COMMAND ${CMAKE_COMMAND}
|
|
+ # Require pybind11 v3 or later for unique_ptr transfer
|
|
+ FIND_PACKAGE(pybind11 3 CONFIG QUIET)
|
|
+
|
|
+ IF (pybind11_FOUND)
|
|
+ MESSAGE(STATUS "Found pybind11: ${pybind11_INCLUDE_DIR}")
|
|
+ ADD_CUSTOM_TARGET(pybind11 ALL)
|
|
+ INCLUDE_DIRECTORIES(${pybind11_INCLUDE_DIR})
|
|
+ ELSE()
|
|
+ MESSAGE(STATUS "Build pybind11: ${TPDIST}/include/pybind11")
|
|
+ EXTERNALPROJECT_ADD(
|
|
+ pybind11
|
|
+ PREFIX ${TPSRC}
|
|
+ URL ${TPURL}/pybind11-3.0.1.zip
|
|
+ URL_MD5 53f015a45ffaeeec2ad605ac436526ba
|
|
+ STAMP_DIR ${TPBUILD}/stamp
|
|
+ DOWNLOAD_DIR ${TPSRC}
|
|
+ SOURCE_DIR ${TPSRC}/pybind11
|
|
+ BINARY_DIR ${TPBUILD}/pybind11
|
|
+ TMP_DIR ${TPBUILD}/pybind11-tmp
|
|
+ INSTALL_DIR ${TPDIST}
|
|
+ CONFIGURE_COMMAND ${CMAKE_COMMAND}
|
|
-G ${CMAKE_GENERATOR}
|
|
-DCMAKE_C_COMPILER:FILEPATH=${CMAKE_C_COMPILER}
|
|
-DCMAKE_CXX_COMPILER:FILEPATH=${CMAKE_CXX_COMPILER}
|
|
@@ -59,12 +68,13 @@ IF (NEKTAR_BUILD_PYTHON)
|
|
-DPYBIND11_TEST=OFF
|
|
${TPSRC}/pybind11)
|
|
|
|
- # Add third-party include to include path.
|
|
- INCLUDE_DIRECTORIES(${TPDIST}/include)
|
|
+ # Add third-party include to include path.
|
|
+ INCLUDE_DIRECTORIES(${TPDIST}/include)
|
|
|
|
- ADD_DEPENDENCIES(thirdparty pybind11)
|
|
+ ADD_DEPENDENCIES(thirdparty pybind11)
|
|
+ ENDIF()
|
|
|
|
- FILE(WRITE ${NEKPY_BASE_DIR}/NekPy/__init__.py "# Adjust dlopen flags to avoid OpenMPI issues
|
|
+ FILE(WRITE ${NEKPY_BASE_DIR}/NekPy/__init__.py "# Adjust dlopen flags to avoid OpenMPI issues
|
|
try:
|
|
import DLFCN as dl
|
|
import sys
|