1- # CMake package configuration file for the @PROJECT_NAME@ module
1+ # CMake package configuration file for @PROJECT_NAME@
22
3- @PACKAGE_GUARD@
43@PACKAGE_INIT@
54
65set (SP3_WITH_SOFAEXPORTER @SP3_WITH_SOFAEXPORTER@)
@@ -10,44 +9,49 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
109include (SofaPython3Tools )
1110
1211# Find Python3
13- find_package (Python @PYBIND11_PYTHON_VERSION@ COMPONENTS Interpreter Development REQUIRED )
12+ if (NOT Python_FOUND)
13+ find_package (Python @Python_VERSION@ QUIET REQUIRED COMPONENTS Interpreter Development )
14+ endif ()
1415
15- # Save PYTHON_* vars
16- set (PYTHON_VERSION_RESET "${PYTHON_VERSION} " )
17- set (PYTHON_EXECUTABLE_RESET "${PYTHON_EXECUTABLE} " )
18- set (PYTHON_LIBRARIES_RESET "${PYTHON_LIBRARIES} " )
19- set (PYTHON_INCLUDE_DIRS_RESET "${PYTHON_INCLUDE_DIRS} " )
20- set (PYTHON_LIBRARY_RESET "${PYTHON_LIBRARY} " )
21- set (PYTHON_INCLUDE_DIR_RESET "${PYTHON_INCLUDE_DIR} " )
16+ # Find pybind11
17+ if (NOT pybind11_FOUND)
18+ # Save PYTHON_* vars
19+ set (PYTHON_VERSION_RESET "${PYTHON_VERSION} " )
20+ set (PYTHON_EXECUTABLE_RESET "${PYTHON_EXECUTABLE} " )
21+ set (PYTHON_LIBRARIES_RESET "${PYTHON_LIBRARIES} " )
22+ set (PYTHON_INCLUDE_DIRS_RESET "${PYTHON_INCLUDE_DIRS} " )
23+ set (PYTHON_LIBRARY_RESET "${PYTHON_LIBRARY} " )
24+ set (PYTHON_INCLUDE_DIR_RESET "${PYTHON_INCLUDE_DIR} " )
2225
23- # Change PYTHON_* vars before pybind11 find_package
24- # to be sure that pybind11 relies on the right Python version
25- set (PYTHON_VERSION "${Python_VERSION} " CACHE STRING "" FORCE )
26- set (PYTHON_EXECUTABLE "${Python_EXECUTABLE} " CACHE FILEPATH "" FORCE )
27- set (PYTHON_LIBRARIES "${Python_LIBRARIES} " CACHE STRING "" FORCE )
28- set (PYTHON_INCLUDE_DIRS "${Python_INCLUDE_DIRS} " CACHE STRING "" FORCE )
29- if (EXISTS "${Python_LIBRARY} " )
30- set (PYTHON_LIBRARY "${Python_LIBRARY} " CACHE INTERNAL "" FORCE )
31- elseif (EXISTS "${Python_LIBRARIES} " )
32- set (PYTHON_LIBRARY "${Python_LIBRARIES} " CACHE INTERNAL "" FORCE )
33- endif ()
34- if (EXISTS "${Python_INCLUDE_DIR} " )
35- set (PYTHON_INCLUDE_DIR "${Python_INCLUDE_DIR} " CACHE INTERNAL "" FORCE )
36- elseif (EXISTS "${Python_INCLUDE_DIRS} " )
37- set (PYTHON_INCLUDE_DIR "${Python_INCLUDE_DIRS} " CACHE INTERNAL "" FORCE )
38- endif ()
26+ # Change PYTHON_* vars before pybind11 find_package
27+ # to be sure that pybind11 relies on the right Python version
28+ set (PYTHON_VERSION "${Python_VERSION} " CACHE STRING "" FORCE )
29+ set (PYTHON_EXECUTABLE "${Python_EXECUTABLE} " CACHE FILEPATH "" FORCE )
30+ set (PYTHON_LIBRARIES "${Python_LIBRARIES} " CACHE STRING "" FORCE )
31+ set (PYTHON_INCLUDE_DIRS "${Python_INCLUDE_DIRS} " CACHE STRING "" FORCE )
32+ if (EXISTS "${Python_LIBRARY} " )
33+ set (PYTHON_LIBRARY "${Python_LIBRARY} " CACHE INTERNAL "" FORCE )
34+ elseif (EXISTS "${Python_LIBRARIES} " )
35+ set (PYTHON_LIBRARY "${Python_LIBRARIES} " CACHE INTERNAL "" FORCE )
36+ endif ()
37+ if (EXISTS "${Python_INCLUDE_DIR} " )
38+ set (PYTHON_INCLUDE_DIR "${Python_INCLUDE_DIR} " CACHE INTERNAL "" FORCE )
39+ elseif (EXISTS "${Python_INCLUDE_DIRS} " )
40+ set (PYTHON_INCLUDE_DIR "${Python_INCLUDE_DIRS} " CACHE INTERNAL "" FORCE )
41+ endif ()
3942
40- # Set the minimum pybind11 version to 2.3 (before that the pybind11::embed target did not exist)
41- find_package (pybind11 2.3 CONFIG QUIET REQUIRED )
43+ find_package (pybind11 @pybind11_VERSION@ QUIET REQUIRED CONFIG )
4244
43- # Reset PYTHON_* vars
44- set (PYTHON_VERSION "${PYTHON_VERSION_RESET} " CACHE STRING "" FORCE )
45- set (PYTHON_EXECUTABLE "${PYTHON_EXECUTABLE_RESET} " CACHE FILEPATH "" FORCE )
46- set (PYTHON_LIBRARIES "${PYTHON_LIBRARIES_RESET} " CACHE STRING "" FORCE )
47- set (PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIRS_RESET} " CACHE STRING "" FORCE )
48- set (PYTHON_LIBRARY "${PYTHON_LIBRARY_RESET} " CACHE INTERNAL "" FORCE )
49- set (PYTHON_INCLUDE_DIR "${PYTHON_INCLUDE_DIR_RESET} " CACHE INTERNAL "" FORCE )
45+ # Reset PYTHON_* vars
46+ set (PYTHON_VERSION "${PYTHON_VERSION_RESET} " CACHE STRING "" FORCE )
47+ set (PYTHON_EXECUTABLE "${PYTHON_EXECUTABLE_RESET} " CACHE FILEPATH "" FORCE )
48+ set (PYTHON_LIBRARIES "${PYTHON_LIBRARIES_RESET} " CACHE STRING "" FORCE )
49+ set (PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIRS_RESET} " CACHE STRING "" FORCE )
50+ set (PYTHON_LIBRARY "${PYTHON_LIBRARY_RESET} " CACHE INTERNAL "" FORCE )
51+ set (PYTHON_INCLUDE_DIR "${PYTHON_INCLUDE_DIR_RESET} " CACHE INTERNAL "" FORCE )
52+ endif ()
5053
54+ # Find SofaPython3::XXXXX
5155if (NOT SofaPython3_FIND_COMPONENTS)
5256 set (SofaPython3_FIND_COMPONENTS Plugin Bindings)
5357endif ()
0 commit comments