diff --git a/CMakeLists.txt b/CMakeLists.txt index 13ed2f8..0c847ef 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -31,12 +31,15 @@ find_package(NumPy REQUIRED) # set(Boost_USE_STATIC_LIBS ON) # set(Boost_USE_MULTITHREADED ON) # set(Boost_USE_STATIC_RUNTIME ON) -if(${PYTHON_VERSION_STRING} GREATER 3.0) - message(STATUS "Using Python3") - find_package(Boost COMPONENTS python3 REQUIRED) -else() - message(STATUS "Using Python2") - find_package(Boost COMPONENTS python REQUIRED) +string( REGEX REPLACE "([0-9]+).[0-9.]+" "\\1" PYTHON_MAJOR_VERSION_STRING ${PYTHON_VERSION_STRING} ) +message(STATUS "Using Python${PYTHON_MAJOR_VERSION_STRING}") +find_package(Boost COMPONENTS python${PYTHON_MAJOR_VERSION_STRING}) +if(NOT Boost_PYTHON${PYTHON_MAJOR_VERSION_STRING}_FOUND) + string( REGEX REPLACE "([0-9]+).([0-9]+).[0-9.]+" "\\1\\2" PYTHON_CONCAT_VERSION_STRING ${PYTHON_VERSION_STRING} ) + find_package(Boost COMPONENTS python-py${PYTHON_CONCAT_VERSION_STRING}) +endif() +if(NOT Boost_PYTHON${PYTHON_MAJOR_VERSION_STRING}_FOUND AND NOT Boost_PYTHON-PY${PYTHON_CONCAT_VERSION_STRING}_FOUND) + message(FATAL_ERROR "Could not find Boost Python libraries.") endif() message( STATUS "Boost Paths:") diff --git a/libs/numpy/cmake/FindPythonLibsNew.cmake b/libs/numpy/cmake/FindPythonLibsNew.cmake index b2a5d60..bcd531b 100644 --- a/libs/numpy/cmake/FindPythonLibsNew.cmake +++ b/libs/numpy/cmake/FindPythonLibsNew.cmake @@ -145,7 +145,7 @@ else() # Probably this needs to be more involved. It would be nice if the config # information the python interpreter itself gave us were more complete. find_library(PYTHON_LIBRARY - NAMES "python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" + NAMES "python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" "python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}m" PATHS ${_PYTHON_LIBS_SEARCH} NO_SYSTEM_ENVIRONMENT_PATH) endif()