You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
cmake/debian/patches/FindPython_fix_#580503.diff

92 lines
4.0 KiB

From: Kai Wasserbäch <debian@carbon-project.org>
Subject: Return the Debian default for Python, unless requested otherwise.
Last-Update: 2010-05-31
Origin: vendor
Forwarded: not-needed
--- a/Modules/FindPythonInterp.cmake
+++ b/Modules/FindPythonInterp.cmake
@@ -5,6 +5,12 @@
# PYTHONINTERP_FOUND - Was the Python executable found
# PYTHON_EXECUTABLE - path to the Python interpreter
#
+# This file was modified in 2010 for Debian by Kai Wasserbäch
+# <debian@carbon-project.org> to return the current Python default interpreter
+# in Debian.
+# If you want the original behaviour (return the latest interpreter version),
+# you need to set(NO_DEBIAN_PY_DEFAULT true) before you call
+# find_package(PythonInterp)
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
@@ -19,19 +25,25 @@
# (To distributed this file outside of CMake, substitute the full
# License text for the above reference.)
-FIND_PROGRAM(PYTHON_EXECUTABLE
- NAMES python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5 python
- PATHS
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.6\\InstallPath]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.5\\InstallPath]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.4\\InstallPath]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.3\\InstallPath]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.2\\InstallPath]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.1\\InstallPath]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.0\\InstallPath]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\1.6\\InstallPath]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\1.5\\InstallPath]
- )
+IF(NO_DEBIAN_PY_DEFAULT)
+ FIND_PROGRAM(PYTHON_EXECUTABLE
+ NAMES python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5 python
+ PATHS
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.6\\InstallPath]
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.5\\InstallPath]
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.4\\InstallPath]
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.3\\InstallPath]
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.2\\InstallPath]
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.1\\InstallPath]
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.0\\InstallPath]
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\1.6\\InstallPath]
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\1.5\\InstallPath]
+ )
+ELSE(NO_DEBIAN_PY_DEFAULT)
+ FIND_PROGRAM(PYTHON_EXECUTABLE
+ NAMES python
+ )
+ENDIF(NO_DEBIAN_PY_DEFAULT)
# handle the QUIETLY and REQUIRED arguments and set PYTHONINTERP_FOUND to TRUE if
# all listed variables are TRUE
--- a/Modules/FindPythonLibs.cmake
+++ b/Modules/FindPythonLibs.cmake
@@ -9,6 +9,12 @@
# PYTHON_INCLUDE_DIRS - path to where Python.h is found
# PYTHON_DEBUG_LIBRARIES - path to the debug library
#
+# This file was modified in 2010 for Debian by Kai Wasserbäch
+# <debian@carbon-project.org> to return the current Python default interpreter
+# in Debian.
+# If you want the original behaviour (return the latest interpreter version),
+# you need to set(NO_DEBIAN_PY_DEFAULT true) before you call
+# find_package(PythonLibs)
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
@@ -27,7 +33,15 @@ INCLUDE(CMakeFindFrameworks)
# Search for the python framework on Apple.
CMAKE_FIND_FRAMEWORKS(Python)
+IF(NO_DEBIAN_PY_DEFAULT)
FOREACH(_CURRENT_VERSION 2.6 2.5 2.4 2.3 2.2 2.1 2.0 1.6 1.5)
+ELSE(NO_DEBIAN_PY_DEFAULT)
+EXECUTE_PROCESS(COMMAND pyversions -d
+ OUTPUT_VARIABLE _DEB_PY_DEFAULT)
+STRING(REPLACE "python" "" _DEB_PY_STRIP ${_DEB_PY_DEFAULT})
+STRING(REPLACE "\n" "" DEB_PY_DEFAULT ${_DEB_PY_STRIP})
+FOREACH(_CURRENT_VERSION ${DEB_PY_DEFAULT})
+ENDIF(NO_DEBIAN_PY_DEFAULT)
STRING(REPLACE "." "" _CURRENT_VERSION_NO_DOTS ${_CURRENT_VERSION})
IF(WIN32)
FIND_LIBRARY(PYTHON_DEBUG_LIBRARY