From 6ae03be2f1f20f82083caed8d628d1292c560e32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kai=20Wasserb=C3=A4ch?= Date: Thu, 3 Jun 2010 15:24:54 +0200 Subject: [PATCH] debian/patches/FindPython_fix_#580503.diff: Added. (Closes: #580503) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The patch was additionally tested by Jakub Wilk. Signed-off-by: Kai Wasserbäch --- debian/changelog | 8 ++ debian/cmake-data.NEWS | 15 ++++ debian/patches/FindPython_fix_#580503.diff | 91 ++++++++++++++++++++++ debian/patches/series | 1 + 4 files changed, 115 insertions(+) create mode 100644 debian/cmake-data.NEWS create mode 100644 debian/patches/FindPython_fix_#580503.diff diff --git a/debian/changelog b/debian/changelog index b8809bf92..1fa3e6bae 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +cmake (2.8.1-6) UNRELEASED; urgency=low + + * debian/patches/FindPython_fix_#580503.diff: Added. (Closes: #580503) + * debian/cmake-data.NEWS: Document the changes of the new patch, so nobody + gets surprised. + + -- Kai Wasserbäch Thu, 03 Jun 2010 15:20:02 +0200 + cmake (2.8.1-5) unstable; urgency=low [ Kai Wasserbäch ] diff --git a/debian/cmake-data.NEWS b/debian/cmake-data.NEWS new file mode 100644 index 000000000..027a69eed --- /dev/null +++ b/debian/cmake-data.NEWS @@ -0,0 +1,15 @@ +Changes in behaviour of FindPython{Interp,Libs} +=============================================== + +If you're a user of the FindPythonInterp.cmake or FindPythonLibs.cmake script be +advised, that there is a change in its behaviour. From the 2.8.1-6 package +onwards the Debian version of these scripts will always return the requested +information for the default Python version in Debian. At the time of this +writing the scripts would return you Python version 2.5. + +If - for whatever reason - you want the old behaviour (latest found version) +back, please add the following line before calling either +find_package(PythonInterp) or find_package(PythonLibs) (or both): + set(NO_DEBIAN_PY_DEFAULT true) + + -- Kai Wasserbäch Thu, 03 Jun 2010 15:15:59 +0200 diff --git a/debian/patches/FindPython_fix_#580503.diff b/debian/patches/FindPython_fix_#580503.diff new file mode 100644 index 000000000..21bbfd97b --- /dev/null +++ b/debian/patches/FindPython_fix_#580503.diff @@ -0,0 +1,91 @@ +From: Kai Wasserbäch +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 ++# 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 ++# 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 diff --git a/debian/patches/series b/debian/patches/series index bfbf848ee..4d02024cc 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -3,3 +3,4 @@ kFreeBSD_Hurd_fixes.diff FindGTK2_pangommconfig.diff FindJNI_fix_libarch_determination.diff cpack_installed_size.diff +FindPython_fix_#580503.diff