# - Find python libraries # This module finds if Python is installed and determines where the # include files and libraries are. It also determines what the name of # the library is. This code sets the following variables: # # PYTHONLIBS_FOUND = have the Python libs been found # PYTHON_LIBRARIES = path to the python library # PYTHON_INCLUDE_PATH = path to where Python.h is found # PYTHON_DEBUG_LIBRARIES = path to the debug library # find_package(PythonInterp) if(PYTHONINTERP_FOUND) include("${CMAKE_ROOT}/Modules/FindPythonLibs.cmake") if(PYTHONLIBS_FOUND) set(HAVE_PYTHON TRUE) set(PYTHON_LIB ${PYTHON_LIBRARIES}) include_directories(${PYTHON_INCLUDE_PATH}) #message(STATUS "PYTHON_EXECUTABLE = ${PYTHON_EXECUTABLE}") #message(STATUS "PYTHON_EXTRA_C_FLAGS = ${PYTHON_EXTRA_C_FLAGS}") EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "import distutils.sysconfig\nprint distutils.sysconfig.get_config_var('LINKFORSHARED')" OUTPUT_VARIABLE PYTHON_LDFLAGS_OUTPUT_VARIABLE ERROR_VARIABLE PYTHON_LDFLAGS_ERROR_VARIABLE RESULT_VARIABLE PYTHON_LDFLAGS_RETURN_VALUE ) IF(NOT PYTHON_LDFLAGS_RETURN_VALUE) STRING(REGEX REPLACE "\\\n" " " PYTHON_EXTRA_LINK_FLAGS "${PYTHON_LDFLAGS_OUTPUT_VARIABLE}") SET(PYTHON_EXTRA_LINK_FLAGS "${PYTHON_EXTRA_LINK_FLAGS}") ENDIF(NOT PYTHON_LDFLAGS_RETURN_VALUE) # Workaround for bug in some python versions in MACOSX IF(APPLE) #STRING(REGEX REPLACE "bin/python.*" "Python" PYTHON_WORKAROUND_LIB "${PYTHON_EXECUTABLE}") #SET(PYTHON_EXTRA_LINK_FLAGS "-u _PyMac_Error ${PYTHON_WORKAROUND_LIB}") SET(PYTHON_EXTRA_LINK_FLAGS "-u _PyMac_Error /System/Library/Frameworks/Python.framework/Versions/2.6/Python") ENDIF(APPLE) endif(PYTHONLIBS_FOUND) endif(PYTHONINTERP_FOUND)