diff -urN xbmc-10.0.orig/configure.in xbmc-10.0/configure.in --- xbmc-10.0.orig/configure.in 2010-12-22 20:53:28.933000073 +0100 +++ xbmc-10.0/configure.in 2010-12-22 21:09:50.212000081 +0100 @@ -919,7 +919,11 @@ # External Python if test "$use_external_python" = "yes"; then - AC_CHECK_LIB([python2.6], [main], + AC_CHECK_LIB([python2.7], [main], + [AC_DEFINE([HAVE_LIBPYTHON2_7], [1], + [Define to 1 if you have the 'python2.7' library.]) + USE_PYTHON2_7=1], + [AC_CHECK_LIB([python2.6], [main], [AC_DEFINE([HAVE_LIBPYTHON2_6], [1], [Define to 1 if you have the 'python2.6' library.]) USE_PYTHON2_6=1], @@ -931,9 +935,10 @@ [AC_DEFINE([HAVE_LIBPYTHON2_4], [1], [Define to 1 if you have the 'python2.4' library.]) USE_PYTHON2_4=1], - [AC_MSG_ERROR($missing_library)] )] )] ) + [AC_MSG_ERROR($missing_library)] )] )] )] ) AC_MSG_NOTICE($external_python_enabled) + test "$USE_PYTHON2_7" && AC_MSG_NOTICE([Using Python 2.7]) test "$USE_PYTHON2_6" && AC_MSG_NOTICE([Using Python 2.6]) test "$USE_PYTHON2_5" && AC_MSG_NOTICE([Using Python 2.5]) test "$USE_PYTHON2_4" && AC_MSG_NOTICE([Using Python 2.4]) @@ -1491,6 +1496,7 @@ AC_SUBST(USE_EXTERNAL_LIBMPEG2) AC_SUBST(USE_EXTERNAL_LIBWAVPACK) AC_SUBST(USE_EXTERNAL_PYTHON) +AC_SUBST(USE_PYTHON2_7) AC_SUBST(USE_PYTHON2_6) AC_SUBST(USE_PYTHON2_5) AC_SUBST(USE_PYTHON2_4) diff -urN xbmc-10.0.orig/xbmc/lib/libPython/linux/Makefile.in xbmc-10.0/xbmc/lib/libPython/linux/Makefile.in --- xbmc-10.0.orig/xbmc/lib/libPython/linux/Makefile.in 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/linux/Makefile.in 2010-12-22 21:09:50.242000077 +0100 @@ -5,7 +5,10 @@ SHELL=/bin/bash SYSDIR=../../../../system/python -ifeq (@USE_PYTHON2_6@,1) +ifeq (@USE_PYTHON2_7@,1) + PYVERSION=python2.7 + SO=python27-$(ARCH).so +else ifeq (@USE_PYTHON2_6@,1) PYVERSION=python2.6 SO=python26-$(ARCH).so else ifeq (@USE_PYTHON2_5@,1) diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/action.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/action.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/action.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/action.h 2010-12-22 21:09:50.242000077 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlbutton.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlbutton.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlbutton.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlbutton.cpp 2010-12-22 21:09:50.243000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlcheckmark.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlcheckmark.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlcheckmark.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlcheckmark.cpp 2010-12-22 21:09:50.243000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlfadelabel.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlfadelabel.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlfadelabel.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlfadelabel.cpp 2010-12-22 21:09:50.244000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlgroup.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlgroup.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlgroup.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlgroup.cpp 2010-12-22 21:09:50.244000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/control.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/control.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/control.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/control.h 2010-12-22 21:09:50.245000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlimage.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlimage.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlimage.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlimage.cpp 2010-12-22 21:09:50.245000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controllabel.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controllabel.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controllabel.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controllabel.cpp 2010-12-22 21:09:50.246000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controllist.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controllist.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controllist.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controllist.cpp 2010-12-22 21:09:50.247000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlprogress.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlprogress.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlprogress.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlprogress.cpp 2010-12-22 21:09:50.247000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlradiobutton.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlradiobutton.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlradiobutton.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlradiobutton.cpp 2010-12-22 21:09:50.248000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlslider.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlslider.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlslider.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlslider.cpp 2010-12-22 21:09:50.248000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlspin.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlspin.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controlspin.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controlspin.cpp 2010-12-22 21:09:50.249000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controltextbox.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controltextbox.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/controltextbox.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/controltextbox.cpp 2010-12-22 21:09:50.249000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/dialog.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/dialog.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/dialog.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/dialog.cpp 2010-12-22 21:09:50.250000078 +0100 @@ -24,7 +24,9 @@ #endif #include "dialog.h" #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/dialog.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/dialog.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/dialog.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/dialog.h 2010-12-22 21:09:50.250000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/GUIPythonWindow.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/GUIPythonWindow.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/GUIPythonWindow.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/GUIPythonWindow.h 2010-12-22 21:09:50.251000078 +0100 @@ -26,7 +26,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/infotagmusic.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/infotagmusic.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/infotagmusic.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/infotagmusic.h 2010-12-22 21:09:50.251000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/infotagvideo.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/infotagvideo.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/infotagvideo.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/infotagvideo.h 2010-12-22 21:09:50.251000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/keyboard.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/keyboard.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/keyboard.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/keyboard.h 2010-12-22 21:09:50.252000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/listitem.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/listitem.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/listitem.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/listitem.cpp 2010-12-22 21:09:50.252000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/listitem.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/listitem.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/listitem.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/listitem.h 2010-12-22 21:09:50.252000078 +0100 @@ -25,7 +25,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/player.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/player.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/player.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/player.h 2010-12-22 21:09:50.252000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/pyplaylist.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/pyplaylist.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/pyplaylist.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/pyplaylist.cpp 2010-12-22 21:09:50.252000078 +0100 @@ -26,7 +26,9 @@ #include "Util.h" #include "pyplaylist.h" #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/pyplaylist.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/pyplaylist.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/pyplaylist.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/pyplaylist.h 2010-12-22 21:09:50.252000078 +0100 @@ -25,7 +25,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/PythonAddon.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/PythonAddon.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/PythonAddon.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/PythonAddon.h 2010-12-22 21:09:50.253000078 +0100 @@ -25,7 +25,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/PythonPlayer.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/PythonPlayer.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/PythonPlayer.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/PythonPlayer.h 2010-12-22 21:09:50.253000078 +0100 @@ -25,7 +25,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/pyutil.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/pyutil.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/pyutil.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/pyutil.h 2010-12-22 21:09:50.253000078 +0100 @@ -25,7 +25,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/window.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/window.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/window.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/window.h 2010-12-22 21:09:50.253000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/winxml.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/winxml.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/winxml.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/winxml.cpp 2010-12-22 21:09:50.253000078 +0100 @@ -24,7 +24,9 @@ #endif #include "winxml.h" #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/winxmldialog.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/winxmldialog.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/winxmldialog.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/winxmldialog.cpp 2010-12-22 21:09:50.253000078 +0100 @@ -24,7 +24,9 @@ #endif #include "winxml.h" #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/winxml.h xbmc-10.0/xbmc/lib/libPython/xbmcmodule/winxml.h --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/winxml.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/winxml.h 2010-12-22 21:09:50.253000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/xbmcaddonmodule.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/xbmcaddonmodule.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/xbmcaddonmodule.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/xbmcaddonmodule.cpp 2010-12-22 21:16:16.284000079 +0100 @@ -1,112 +1,114 @@ -/* - * Copyright (C) 2005-2010 Team XBMC - * http://www.xbmc.org - * - * This Program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This Program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with XBMC; see the file COPYING. If not, write to - * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. - * http://www.gnu.org/copyleft/gpl.html - * - */ - -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "lib/libPython/Python/Include/Python.h" -#endif - -#include "PythonAddon.h" -#include "pyutil.h" - -#ifndef __GNUC__ -#pragma code_seg("PY_TEXT") -#pragma data_seg("PY_DATA") -#pragma bss_seg("PY_BSS") -#pragma const_seg("PY_RDATA") -#endif - -#if defined(__GNUG__) && (__GNUC__>4) || (__GNUC__==4 && __GNUC_MINOR__>=2) -#pragma GCC diagnostic ignored "-Wstrict-aliasing" -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -namespace PYXBMC -{ - /***************************************************************** - * start of xbmcaddon methods - *****************************************************************/ - // put module methods here - - - // define c functions to be used in python here - PyMethodDef xbmcAddonMethods[] = { - {NULL, NULL, 0, NULL} - }; - /***************************************************************** - * end of methods and python objects - *****************************************************************/ - - PyMODINIT_FUNC - InitAddonTypes(void) - { - initAddon_Type(); - - if (PyType_Ready(&Addon_Type) < 0) - return; - } - - PyMODINIT_FUNC - DeinitAddonModule(void) - { - // no need to Py_DECREF our objects (see InitAddonModule()) as they were created only - // so that they could be added to the module, which steals a reference. - } - - PyMODINIT_FUNC - InitAddonModule(void) - { - Py_INCREF(&Addon_Type); - - // init general xbmcaddon modules - PyObject* pXbmcAddonModule; - pXbmcAddonModule = Py_InitModule((char*)"xbmcaddon", xbmcAddonMethods); - if (pXbmcAddonModule == NULL) return; - - PyModule_AddObject(pXbmcAddonModule, (char*)"Addon", (PyObject*)&Addon_Type); - - // constants - PyModule_AddStringConstant(pXbmcAddonModule, (char*)"__author__", (char*)PY_XBMC_AUTHOR); - PyModule_AddStringConstant(pXbmcAddonModule, (char*)"__date__", (char*)"1 May 2010"); - PyModule_AddStringConstant(pXbmcAddonModule, (char*)"__version__", (char*)"1.0"); - PyModule_AddStringConstant(pXbmcAddonModule, (char*)"__credits__", (char*)PY_XBMC_CREDITS); - PyModule_AddStringConstant(pXbmcAddonModule, (char*)"__platform__", (char*)PY_XBMC_PLATFORM); - } -} - -#ifdef __cplusplus -} -#endif +/* + * Copyright (C) 2005-2010 Team XBMC + * http://www.xbmc.org + * + * This Program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This Program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with XBMC; see the file COPYING. If not, write to + * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. + * http://www.gnu.org/copyleft/gpl.html + * + */ + +#if (defined HAVE_CONFIG_H) && (!defined WIN32) + #include "config.h" +#endif +#if (defined USE_EXTERNAL_PYTHON) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) + #include + #elif (defined HAVE_LIBPYTHON2_5) + #include + #elif (defined HAVE_LIBPYTHON2_4) + #include + #else + #error "Could not determine version of Python to use." + #endif +#else + #include "lib/libPython/Python/Include/Python.h" +#endif + +#include "PythonAddon.h" +#include "pyutil.h" + +#ifndef __GNUC__ +#pragma code_seg("PY_TEXT") +#pragma data_seg("PY_DATA") +#pragma bss_seg("PY_BSS") +#pragma const_seg("PY_RDATA") +#endif + +#if defined(__GNUG__) && (__GNUC__>4) || (__GNUC__==4 && __GNUC_MINOR__>=2) +#pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +namespace PYXBMC +{ + /***************************************************************** + * start of xbmcaddon methods + *****************************************************************/ + // put module methods here + + + // define c functions to be used in python here + PyMethodDef xbmcAddonMethods[] = { + {NULL, NULL, 0, NULL} + }; + /***************************************************************** + * end of methods and python objects + *****************************************************************/ + + PyMODINIT_FUNC + InitAddonTypes(void) + { + initAddon_Type(); + + if (PyType_Ready(&Addon_Type) < 0) + return; + } + + PyMODINIT_FUNC + DeinitAddonModule(void) + { + // no need to Py_DECREF our objects (see InitAddonModule()) as they were created only + // so that they could be added to the module, which steals a reference. + } + + PyMODINIT_FUNC + InitAddonModule(void) + { + Py_INCREF(&Addon_Type); + + // init general xbmcaddon modules + PyObject* pXbmcAddonModule; + pXbmcAddonModule = Py_InitModule((char*)"xbmcaddon", xbmcAddonMethods); + if (pXbmcAddonModule == NULL) return; + + PyModule_AddObject(pXbmcAddonModule, (char*)"Addon", (PyObject*)&Addon_Type); + + // constants + PyModule_AddStringConstant(pXbmcAddonModule, (char*)"__author__", (char*)PY_XBMC_AUTHOR); + PyModule_AddStringConstant(pXbmcAddonModule, (char*)"__date__", (char*)"1 May 2010"); + PyModule_AddStringConstant(pXbmcAddonModule, (char*)"__version__", (char*)"1.0"); + PyModule_AddStringConstant(pXbmcAddonModule, (char*)"__credits__", (char*)PY_XBMC_CREDITS); + PyModule_AddStringConstant(pXbmcAddonModule, (char*)"__platform__", (char*)PY_XBMC_PLATFORM); + } +} + +#ifdef __cplusplus +} +#endif diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/xbmcguimodule.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/xbmcguimodule.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/xbmcguimodule.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/xbmcguimodule.cpp 2010-12-22 21:09:50.254000078 +0100 @@ -23,7 +23,10 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #include #elif (defined HAVE_LIBPYTHON2_5) diff -urN xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp xbmc-10.0/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp 2010-12-22 21:09:50.254000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/XBPython.cpp xbmc-10.0/xbmc/lib/libPython/XBPython.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/XBPython.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/XBPython.cpp 2010-12-22 21:09:50.254000078 +0100 @@ -24,7 +24,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include @@ -61,7 +63,9 @@ #define PYTHON_DLL "special://xbmcbin/system/python/python24-x86-osx.so" #endif #elif defined(__x86_64__) -#if (defined HAVE_LIBPYTHON2_6) +#if (defined HAVE_LIBPYTHON2_7) +#define PYTHON_DLL "special://xbmcbin/system/python/python27-x86_64-linux.so" +#elif (defined HAVE_LIBPYTHON2_6) #define PYTHON_DLL "special://xbmcbin/system/python/python26-x86_64-linux.so" #elif (defined HAVE_LIBPYTHON2_5) #define PYTHON_DLL "special://xbmcbin/system/python/python25-x86_64-linux.so" @@ -69,7 +73,9 @@ #define PYTHON_DLL "special://xbmcbin/system/python/python24-x86_64-linux.so" #endif #elif defined(_POWERPC) -#if (defined HAVE_LIBPYTHON2_6) +#if (defined HAVE_LIBPYTHON2_7) +#define PYTHON_DLL "special://xbmcbin/system/python/python27-powerpc-linux.so" +#elif (defined HAVE_LIBPYTHON2_6) #define PYTHON_DLL "special://xbmcbin/system/python/python26-powerpc-linux.so" #elif (defined HAVE_LIBPYTHON2_5) #define PYTHON_DLL "special://xbmcbin/system/python/python25-powerpc-linux.so" @@ -77,7 +83,9 @@ #define PYTHON_DLL "special://xbmcbin/system/python/python24-powerpc-linux.so" #endif #elif defined(_POWERPC64) -#if (defined HAVE_LIBPYTHON2_6) +#if (defined HAVE_LIBPYTHON2_7) +#define PYTHON_DLL "special://xbmcbin/system/python/python27-powerpc64-linux.so" +#elif (defined HAVE_LIBPYTHON2_6) #define PYTHON_DLL "special://xbmcbin/system/python/python26-powerpc64-linux.so" #elif (defined HAVE_LIBPYTHON2_5) #define PYTHON_DLL "special://xbmcbin/system/python/python25-powerpc64-linux.so" @@ -85,7 +93,9 @@ #define PYTHON_DLL "special://xbmcbin/system/python/python24-powerpc64-linux.so" #endif #elif defined(_ARMEL) -#if (defined HAVE_LIBPYTHON2_6) +#if (defined HAVE_LIBPYTHON2_7) +#define PYTHON_DLL "special://xbmc/system/python/python27-arm.so" +#elif (defined HAVE_LIBPYTHON2_6) #define PYTHON_DLL "special://xbmc/system/python/python26-arm.so" #elif (defined HAVE_LIBPYTHON2_5) #define PYTHON_DLL "special://xbmc/system/python/python25-arm.so" @@ -93,7 +103,9 @@ #define PYTHON_DLL "special://xbmc/system/python/python24-arm.so" #endif #else /* !__x86_64__ && !__powerpc__ */ -#if (defined HAVE_LIBPYTHON2_6) +#if (defined HAVE_LIBPYTHON2_7) +#define PYTHON_DLL "special://xbmcbin/system/python/python27-i486-linux.so" +#elif (defined HAVE_LIBPYTHON2_6) #define PYTHON_DLL "special://xbmcbin/system/python/python26-i486-linux.so" #elif (defined HAVE_LIBPYTHON2_5) #define PYTHON_DLL "special://xbmcbin/system/python/python25-i486-linux.so" diff -urN xbmc-10.0.orig/xbmc/lib/libPython/XBPythonDll.cpp xbmc-10.0/xbmc/lib/libPython/XBPythonDll.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/XBPythonDll.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/XBPythonDll.cpp 2010-12-22 21:09:50.254000078 +0100 @@ -23,7 +23,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/XBPythonDllFuncs.S xbmc-10.0/xbmc/lib/libPython/XBPythonDllFuncs.S --- xbmc-10.0.orig/xbmc/lib/libPython/XBPythonDllFuncs.S 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/XBPythonDllFuncs.S 2010-12-22 21:09:50.254000078 +0100 @@ -2,7 +2,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include diff -urN xbmc-10.0.orig/xbmc/lib/libPython/XBPyThread.cpp xbmc-10.0/xbmc/lib/libPython/XBPyThread.cpp --- xbmc-10.0.orig/xbmc/lib/libPython/XBPyThread.cpp 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/XBPyThread.cpp 2010-12-22 21:09:50.254000078 +0100 @@ -24,7 +24,10 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #include #elif (defined HAVE_LIBPYTHON2_5) diff -urN xbmc-10.0.orig/xbmc/lib/libPython/XBPyThread.h xbmc-10.0/xbmc/lib/libPython/XBPyThread.h --- xbmc-10.0.orig/xbmc/lib/libPython/XBPyThread.h 2010-12-17 07:17:41.000000000 +0100 +++ xbmc-10.0/xbmc/lib/libPython/XBPyThread.h 2010-12-22 21:09:50.255000078 +0100 @@ -26,7 +26,9 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) + #if (defined HAVE_LIBPYTHON2_7) + #include + #elif (defined HAVE_LIBPYTHON2_6) #include #elif (defined HAVE_LIBPYTHON2_5) #include