-# Copyright (C) 2013 CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2013-2021 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
-# version 2.1 of the License.
+# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# 1. Load environment or any previously detected Python
IF(DEFINED ENV{PYTHON_ROOT_DIR})
FILE(TO_CMAKE_PATH "$ENV{PYTHON_ROOT_DIR}" _PYTHON_ROOT_DIR_ENV)
- SET(_dflt_value "${_PYTHON_ROOT_DIR_ENV}")
+ IF(APPLE)
+ SET(_dflt_value "${_PYTHON_ROOT_DIR_ENV}/Python.framework/Versions/Current")
+ SET(PYTHON_LIBRARY "${_PYTHON_ROOT_DIR_ENV}/Python.framework/Versions/Current/lib/libpython2.7.dylib")
+ SET(PYTHON_INCLUDE_DIR "${_PYTHON_ROOT_DIR_ENV}/Python.framework/Versions/Current/Headers")
+ LIST(APPEND CMAKE_PREFIX_PATH "${_dflt_value}")
+ FIND_PACKAGE(PythonLibs)
+ MESSAGE(STATUS "Mac Python: ${_dflt_value}")
+ MESSAGE(STATUS "Python libraries: ${PYTHON_LIBRARY}")
+ MESSAGE(STATUS "Python include dir: ${PYTHON_INCLUDE_DIR}")
+ ELSE(APPLE)
+ SET(_dflt_value "${_PYTHON_ROOT_DIR_ENV}")
+ ENDIF(APPLE)
ELSE()
# will be blank if no Python was previously loaded
SET(_dflt_value "${PYTHON_ROOT_DIR_EXP}")
# Make cache entry
SET(PYTHON_ROOT_DIR "${_dflt_value}" CACHE PATH "Path to Python directory (interpreter and libs)")
+# python 3
+SET(PythonInterp_FIND_VERSION 3)
+SET(PythonInterp_FIND_VERSION_MAJOR 3)
+
# 2. Find package - config mode first (i.e. looking for XYZ-config.cmake)
-IF(WINDOWS)
+IF(WIN32)
IF(CMAKE_BUILD_TYPE STREQUAL Debug)
SET(PythonInterp_FIND_VERSION _d)
SET(PYTHON_DEFINITIONS "-DHAVE_DEBUG_PYTHON")
ENDIF(CMAKE_BUILD_TYPE STREQUAL Debug)
-ENDIF(WINDOWS)
+ENDIF(WIN32)
IF(EXISTS "${PYTHON_ROOT_DIR}")
# Hope to find direclty a CMake config file there
SET(_CONF_DIR "${PYTHON_ROOT_DIR}/share/cmake")
MARK_AS_ADVANCED(Python_DIR)
IF (NOT PYTHON_FOUND)
- SET(CMAKE_PREFIX_PATH "${PYTHON_ROOT_DIR}")
+ LIST(APPEND CMAKE_PREFIX_PATH "${PYTHON_ROOT_DIR}")
ELSE()
MESSAGE(STATUS "Found Python in CONFIG mode!")
ENDIF()
IF(WIN32)
LIST(APPEND CMAKE_LIBRARY_PATH "${_python_dir}/libs" ABSOLUTE)
LIST(APPEND CMAKE_INCLUDE_PATH "${_python_dir}/include" ABSOLUTE)
+ SET(PYTHON_INCLUDE_DIR "${_python_dir}/include")
ENDIF()
# Override the EXACT and VERSION settings of the LibbatchPython module
# to force the next call to SALOME_FIND_PACKAGE() to find the exact matching