blob: 6f9f2366cd4473ff92541c701fb81533110d4953 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
# - Try to find python
# Once done this will define
#
# PYTHON_FOUND - system has PYTHON
# 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)
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)
endif()
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})
endif()
mark_as_advanced(PYTHON_INCLUDE_DIRS PYTHON_LIBRARIES PYTHON_LDFLAGS)
|