From 8cdf8dec703d882b46ca50a769fabb95ffc48e2c Mon Sep 17 00:00:00 2001 From: manuel Date: Thu, 24 Nov 2016 21:27:41 +0100 Subject: sync with upstream --- project/cmake/modules/FindPython.cmake | 51 +++++++++++++++------------------- 1 file changed, 23 insertions(+), 28 deletions(-) (limited to 'project/cmake/modules/FindPython.cmake') diff --git a/project/cmake/modules/FindPython.cmake b/project/cmake/modules/FindPython.cmake index 6f9f236..68b7359 100644 --- a/project/cmake/modules/FindPython.cmake +++ b/project/cmake/modules/FindPython.cmake @@ -5,39 +5,34 @@ # PYTHON_INCLUDE_DIRS - the python include directory # PYTHON_LIBRARIES - The python libraries -if(PKG_CONFIG_FOUND AND NOT CMAKE_CROSSCOMPILING) - pkg_check_modules (PYTHON python) +if(PKG_CONFIG_FOUND) + pkg_check_modules(PC_PYTHON python >= 2.7 QUIET) endif() -if(NOT PYTHON_FOUND) - if(CMAKE_CROSSCOMPILING) - find_program(PYTHON_EXECUTABLE python ONLY_CMAKE_FIND_ROOT_PATH) - find_library(PYTHON_LIBRARY NAMES python2.6 python2.7) - find_path(PYTHON_INCLUDE_DIRS NAMES Python.h PATHS ${DEPENDS_PATH}/include/python2.6 ${DEPENDS_PATH}/include/python2.7) - set(PYTHON_INCLUDE_DIR ${PYTHON_INCLUDE_DIRS} CACHE PATH "python include dir" FORCE) - - find_library(FFI_LIBRARY ffi) - find_library(EXPAT_LIBRARY expat) - find_library(INTL_LIBRARY intl) - - if(NOT CORE_SYSTEM_NAME STREQUAL android) - set(PYTHON_DEP_LIBRARIES -lpthread -ldl -lutil) - endif() - - set(PYTHON_LIBRARIES ${PYTHON_LIBRARY} ${FFI_LIBRARY} ${EXPAT_LIBRARY} ${INTL_LIBRARY} ${PYTHON_DEP_LIBRARIES} - CACHE INTERNAL "python libraries" FORCE) - else() - find_package(PythonLibs) +find_program(PYTHON_EXECUTABLE python ONLY_CMAKE_FIND_ROOT_PATH) +find_library(PYTHON_LIBRARY NAMES python2.7 PATHS ${PC_PYTHON_LIBDIR}) +find_path(PYTHON_INCLUDE_DIR NAMES Python.h PATHS ${PC_PYTHON_INCLUDE_DIRS} ${DEPENDS_PATH}/include/python2.7) + +if(CMAKE_CROSSCOMPILING) + find_library(FFI_LIBRARY ffi REQUIRED) + find_library(EXPAT_LIBRARY expat REQUIRED) + find_library(INTL_LIBRARY intl REQUIRED) + find_library(GMP_LIBRARY gmp REQUIRED) + + if(NOT CORE_SYSTEM_NAME STREQUAL android) + set(PYTHON_DEP_LIBRARIES -lpthread -ldl -lutil) endif() + + set(PYTHON_LIBRARIES ${PYTHON_LIBRARY} ${FFI_LIBRARY} ${EXPAT_LIBRARY} ${INTL_LIBRARY} ${GMP_LIBRARY} ${PYTHON_DEP_LIBRARIES}) +else() + find_package(PythonLibs 2.7 REQUIRED) endif() -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Python DEFAULT_MSG PYTHON_INCLUDE_DIRS PYTHON_LIBRARIES) -if(CMAKE_SYSTEM_NAME STREQUAL Darwin) - find_library(FFI_LIBRARY ffi REQUIRED) - find_library(INTL_LIBRARY intl) - list(APPEND PYTHON_LIBRARIES ${FFI_LIBRARY} ${INTL_LIBRARY}) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(PYTHON REQUIRED_VARS PYTHON_INCLUDE_DIR PYTHON_LIBRARY PYTHON_LIBRARIES) +if(PYTHON_FOUND) + set(PYTHON_INCLUDE_DIRS ${PYTHON_INCLUDE_DIR}) endif() -mark_as_advanced(PYTHON_INCLUDE_DIRS PYTHON_LIBRARIES PYTHON_LDFLAGS) +mark_as_advanced(PYTHON_EXECUTABLE PYTHON_INCLUDE_DIRS PYTHON_INCLUDE_DIR PYTHON_LIBRARY PYTHON_LIBRARIES PYTHON_LDFLAGS FFI_LIBRARY EXPAT_LIBRARY INTL_LIBRARY GMP_LIBRARY) -- cgit v1.2.3