find_package(PythonInterp ...) is deprecated since CMake 3.12.
With the current master build on MacOS CMake returns `Python3_EXECUTABLE=Python3.5` although Python3.7 is selected with macports.
Using the recommended find_package(Python3 ...) CMake returns `Python3_EXECUTABLE=Python3.7`. (patch included)
Patrick
diff --git a/CMakeLists.txt b/CMakeLists.txt index 779d9e932d..5b8b215bb2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -786,22 +786,26 @@ if(GNUWIN32_DIR) list(APPEND CMAKE_PROGRAM_PATH "${GNUWIN32_DIR}/Python" ) endif() -# Search for python default version first -unset(PYTHON_EXECUTABLE CACHE) -unset(LYX_PYTHON_EXECUTABLE CACHE) -unset(PYTHON_VERSION_MAJOR) -unset(PYTHON_VERSION_MINOR) -unset(PYTHON_VERSION_STRING) -find_package(PythonInterp 3.5 QUIET) -if(NOT PYTHONINTERP_FOUND) - unset(PYTHON_EXECUTABLE CACHE) - find_package(PythonInterp 2.0 REQUIRED) - if(NOT PYTHON_VERSION_STRING VERSION_LESS 2.8) - message(FATAL_ERROR "Python interpreter found, but is not suitable") - endif() -endif() +# Search for python default version if not yet defined +if(NOT DEFINED LYX_PYTHON_EXECUTABLE) + unset(PYTHON_EXECUTABLE CACHE) + unset(LYX_PYTHON_EXECUTABLE CACHE) + unset(PYTHON_VERSION_MAJOR) + unset(PYTHON_VERSION_MINOR) + unset(PYTHON_VERSION_STRING) + find_package(Python3 3.5 QUIET) + if(NOT Python3_Interpreter_FOUND) + unset(PYTHON_EXECUTABLE CACHE) + find_package(Python2 2.0 QUIET) + if(NOT PYTHON_VERSION_STRING VERSION_LESS 2.8) + message(FATAL_ERROR "Python interpreter found, but is not suitable") + else() + set(LYX_PYTHON_EXECUTABLE ${Python2_EXECUTABLE} CACHE FILEPATH "Python to be used by LyX") + endif() + endif() -set(LYX_PYTHON_EXECUTABLE ${PYTHON_EXECUTABLE} CACHE FILEPATH "Python to be used by LyX") + set(LYX_PYTHON_EXECUTABLE ${Python3_EXECUTABLE} CACHE FILEPATH "Python to be used by LyX") +endif() if(LYX_NLS) find_package(LyXGettext)
-- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel