From f287da5734d377b5ed2f5db4b26e08eb914e77c1 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sun, 23 Oct 2011 10:41:43 +0200 Subject: [PATCH 01/20] xf86-video-nvidia: update to xf86-video-nvidia-290.03 Signed-off-by: Stephan Raue --- packages/x11/driver/xf86-video-nvidia/meta | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/x11/driver/xf86-video-nvidia/meta b/packages/x11/driver/xf86-video-nvidia/meta index 013319b978..4af43a0e46 100644 --- a/packages/x11/driver/xf86-video-nvidia/meta +++ b/packages/x11/driver/xf86-video-nvidia/meta @@ -19,15 +19,15 @@ ################################################################################ PKG_NAME="xf86-video-nvidia" -PKG_VERSION="285.05.09" +PKG_VERSION="290.03" PKG_REV="1" PKG_ARCH="i386 x86_64" PKG_LICENSE="nonfree" PKG_SITE="http://www.nvidia.com/" -# [ "$TARGET_ARCH" = "i386" ] && PKG_URL="ftp://download.nvidia.com/XFree86/Linux-x86/$PKG_VERSION/NVIDIA-Linux-x86-$PKG_VERSION.run" -# [ "$TARGET_ARCH" = "x86_64" ] && PKG_URL="ftp://download.nvidia.com/XFree86/Linux-x86_64/$PKG_VERSION/NVIDIA-Linux-x86_64-$PKG_VERSION-no-compat32.run" -[ "$TARGET_ARCH" = "i386" ] && PKG_URL="http://us.download.nvidia.com/XFree86/Linux-x86/$PKG_VERSION/NVIDIA-Linux-x86-$PKG_VERSION.run" -[ "$TARGET_ARCH" = "x86_64" ] && PKG_URL="http://us.download.nvidia.com/XFree86/Linux-x86_64/$PKG_VERSION/NVIDIA-Linux-x86_64-$PKG_VERSION-no-compat32.run" +[ "$TARGET_ARCH" = "i386" ] && PKG_URL="ftp://download.nvidia.com/XFree86/Linux-x86/$PKG_VERSION/NVIDIA-Linux-x86-$PKG_VERSION.run" +[ "$TARGET_ARCH" = "x86_64" ] && PKG_URL="ftp://download.nvidia.com/XFree86/Linux-x86_64/$PKG_VERSION/NVIDIA-Linux-x86_64-$PKG_VERSION-no-compat32.run" +# [ "$TARGET_ARCH" = "i386" ] && PKG_URL="http://us.download.nvidia.com/XFree86/Linux-x86/$PKG_VERSION/NVIDIA-Linux-x86-$PKG_VERSION.run" +# [ "$TARGET_ARCH" = "x86_64" ] && PKG_URL="http://us.download.nvidia.com/XFree86/Linux-x86_64/$PKG_VERSION/NVIDIA-Linux-x86_64-$PKG_VERSION-no-compat32.run" PKG_DEPENDS="linux libXinerama" PKG_BUILD_DEPENDS="toolchain util-macros linux xorg-server" PKG_PRIORITY="optional" From 930908cf51120b2d7f7c825fa97ef998c5259262 Mon Sep 17 00:00:00 2001 From: anoma Date: Sun, 23 Oct 2011 14:22:39 +0200 Subject: [PATCH 02/20] Typo in README --- README | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README b/README index 4d6fb26362..35bcb12761 100644 --- a/README +++ b/README @@ -1,6 +1,6 @@ http://www.OpenELEC.tv -OpenELEC - Open Embedded Linux Enterainment Center +OpenELEC - Open Embedded Linux Entertainment Center OpenELEC runs XBMC, a complete media center solution (xbmc.org). The base system has been designed and built from the ground up to be as From 496b288949a53a2914607737f05bf8adf097d8c3 Mon Sep 17 00:00:00 2001 From: anoma Date: Sun, 23 Oct 2011 14:27:31 +0200 Subject: [PATCH 03/20] [SAMBA] Short static OpenELEC server string --- packages/network/samba/config/smb.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/network/samba/config/smb.conf b/packages/network/samba/config/smb.conf index 426dbba108..e96b001645 100644 --- a/packages/network/samba/config/smb.conf +++ b/packages/network/samba/config/smb.conf @@ -23,7 +23,7 @@ # available from your machine [global] - server string = Media Centre(%i) + server string = OpenELEC workgroup = WORKGROUP netbios name = openelec security = share From dba98f9ddf54bcfbeba8b924f631a0442af1f689 Mon Sep 17 00:00:00 2001 From: anoma Date: Sun, 23 Oct 2011 14:28:58 +0200 Subject: [PATCH 04/20] [SAMBA] Inherit netbios name from hostname --- packages/network/samba/config/smb.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/network/samba/config/smb.conf b/packages/network/samba/config/smb.conf index e96b001645..9bf70111b3 100644 --- a/packages/network/samba/config/smb.conf +++ b/packages/network/samba/config/smb.conf @@ -25,7 +25,7 @@ [global] server string = OpenELEC workgroup = WORKGROUP - netbios name = openelec + netbios name = %h security = share guest account = root socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536 From 25e0245e10afcbcb57a3f5b5ca44f570c6894c93 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 24 Oct 2011 03:52:55 +0200 Subject: [PATCH 05/20] PyBluez: dont build and install bytecode Signed-off-by: Stephan Raue --- packages/python/system/PyBluez/build | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/python/system/PyBluez/build b/packages/python/system/PyBluez/build index 61dfd24093..c14e0d00ef 100755 --- a/packages/python/system/PyBluez/build +++ b/packages/python/system/PyBluez/build @@ -28,7 +28,4 @@ export LDFLAGS="$LDFLAGS -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" cd $PKG_BUILD python setup.py build --cross-compile -python setup.py install -O1 --skip-build --prefix /usr --root .install - -find .install -name "*.py" -exec rm -rf "{}" ";" -find .install -name "*.pyo" -exec rm -rf "{}" ";" +python setup.py install -O0 --no-compile --prefix /usr --root .install From 7efc137aadf79b01558af4fa3ceb983c5af2baaa Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 24 Oct 2011 04:50:44 +0200 Subject: [PATCH 06/20] xbmc: dont install ps3 remote helper Signed-off-by: Stephan Raue --- packages/mediacenter/xbmc/install | 14 -------- packages/mediacenter/xbmc/meta | 4 --- ...eb5-453-ps3_remote_be_more_quiet-0.1.patch | 29 ---------------- .../mediacenter/xbmc/scripts/ps3remote_helper | 34 ------------------- .../xbmc/udev.d/98-ps3remote.rules | 27 --------------- projects/ATV/options | 3 -- projects/Fusion/options | 3 -- projects/Generic/options | 3 -- projects/Generic_OSS/options | 3 -- projects/ION/options | 3 -- projects/Intel/options | 3 -- projects/Ultra/options | 3 -- 12 files changed, 129 deletions(-) delete mode 100644 packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch delete mode 100755 packages/mediacenter/xbmc/scripts/ps3remote_helper delete mode 100644 packages/mediacenter/xbmc/udev.d/98-ps3remote.rules diff --git a/packages/mediacenter/xbmc/install b/packages/mediacenter/xbmc/install index a5a2669182..26389423ca 100755 --- a/packages/mediacenter/xbmc/install +++ b/packages/mediacenter/xbmc/install @@ -82,9 +82,6 @@ mkdir -p $INSTALL/usr/share/xbmc/addons cp -R $PKG_DIR/config/repository.openelec.tv $INSTALL/usr/share/xbmc/addons $SED "s|@ADDON_URL@|$ADDON_URL|g" -i $INSTALL/usr/share/xbmc/addons/repository.openelec.tv/addon.xml -mkdir -p $PYTHON_LIBDIR/site-packages/xbmc - cp -R $PKG_BUILD/tools/EventClients/lib/python/* $PYTHON_LIBDIR/site-packages/xbmc - # install powermanagement hooks mkdir -p $INSTALL/etc/pm/sleep.d cp $PKG_DIR/sleep.d/* $INSTALL/etc/pm/sleep.d @@ -106,14 +103,3 @@ if [ "$WIIMOTE_SUPPORT" = yes ]; then mkdir -p $INSTALL/lib/udev cp $PKG_DIR/scripts/wiiremote_helper $INSTALL/lib/udev fi - -if [ "$PS3REMOTE_SUPPORT" = yes ]; then - mkdir -p $INSTALL/usr/bin - cp $PKG_BUILD/tools/EventClients/Clients/PS3\ BD\ Remote/ps3_remote.py $INSTALL/usr/bin/xbmc-ps3remote - mkdir -p $INSTALL/usr/share/pixmaps/xbmc - cp $PKG_BUILD/tools/EventClients/icons/bluetooth.png $INSTALL/usr/share/pixmaps/xbmc - mkdir -p $PYTHON_LIBDIR/site-packages/xbmc - echo 'ICON_PATH="/usr/share/pixmaps/xbmc/"' > $PYTHON_LIBDIR/site-packages/xbmc/defs.py - mkdir -p $INSTALL/lib/udev - cp $PKG_DIR/scripts/ps3remote_helper $INSTALL/lib/udev -fi diff --git a/packages/mediacenter/xbmc/meta b/packages/mediacenter/xbmc/meta index abd15b59ba..21a2ffca5a 100644 --- a/packages/mediacenter/xbmc/meta +++ b/packages/mediacenter/xbmc/meta @@ -122,10 +122,6 @@ if [ "$WIIMOTE_SUPPORT" = yes ]; then PKG_DEPENDS="$PKG_DEPENDS wiiuse" fi -if [ "$PS3REMOTE_SUPPORT" = yes ]; then - PKG_DEPENDS="$PKG_DEPENDS PyBluez" -fi - # some python stuff needed for various addons PKG_DEPENDS="$PKG_DEPENDS Imaging" PKG_DEPENDS="$PKG_DEPENDS simplejson" diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch deleted file mode 100644 index 6b2f879e1c..0000000000 --- a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -Naur xbmc-pvr-3513480/tools/EventClients/Clients/PS3 BD Remote/ps3_remote.py xbmc-pvr-3513480.patch/tools/EventClients/Clients/PS3 BD Remote/ps3_remote.py ---- xbmc-pvr-3513480/tools/EventClients/Clients/PS3 BD Remote/ps3_remote.py 2011-04-25 02:36:33.000000000 +0200 -+++ xbmc-pvr-3513480.patch/tools/EventClients/Clients/PS3 BD Remote/ps3_remote.py 2011-04-25 05:30:03.870260596 +0200 -@@ -59,9 +59,6 @@ - target_connected = False - target_address = None - while target_connected is False: -- xbmc.send_notification("Action Required!", -- "Hold Start+Enter on your remote.", -- bticon) - print "Searching for %s" % target_name - print "(Hold Start + Enter on remote to make it discoverable)" - time.sleep(2) -@@ -72,7 +69,6 @@ - except Exception, e: - print "Error performing bluetooth discovery" - print str(e) -- xbmc.send_notification("Error", "Unable to find devices.", bticon) - time.sleep(5) - continue - -@@ -109,7 +105,6 @@ - print "ERROR - Could Not Connect. Trying again..." - time.sleep(2) - else: -- xbmc.send_notification("Error", "No remotes were found.", bticon) - print "Could not find BD Remote Control. Trying again..." - time.sleep(2) - return (remote,target_address) diff --git a/packages/mediacenter/xbmc/scripts/ps3remote_helper b/packages/mediacenter/xbmc/scripts/ps3remote_helper deleted file mode 100755 index 84d8db2806..0000000000 --- a/packages/mediacenter/xbmc/scripts/ps3remote_helper +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh - -################################################################################ -# Copyright (C) 2009-2010 OpenELEC.tv -# http://www.openelec.tv -# -# 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 OpenELEC.tv; 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 -################################################################################ - -case "${ACTION}" in - add) - if [ -f /usr/bin/xbmc-ps3remote ]; then - /usr/bin/xbmc-ps3remote localhost 9777 & - fi - ;; - remove) - killall xbmc-ps3remote - ;; -esac - -exit 0 diff --git a/packages/mediacenter/xbmc/udev.d/98-ps3remote.rules b/packages/mediacenter/xbmc/udev.d/98-ps3remote.rules deleted file mode 100644 index 913d47f406..0000000000 --- a/packages/mediacenter/xbmc/udev.d/98-ps3remote.rules +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) -# -# 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 OpenELEC.tv; 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 -################################################################################ - -# only does something with "bluetooth" subsystem devices. -SUBSYSTEM!="bluetooth", GOTO="end" - -# Start PS3 Remote support if bluetooth is starting -ACTION=="add|remove", RUN+="/lib/udev/ps3remote_helper" - -LABEL="end" diff --git a/projects/ATV/options b/projects/ATV/options index 356c0d0a15..387fa3a69c 100644 --- a/projects/ATV/options +++ b/projects/ATV/options @@ -226,9 +226,6 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="no" -# build and install PS3 Remote support (yes / no) - PS3REMOTE_SUPPORT="no" - # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="yes" diff --git a/projects/Fusion/options b/projects/Fusion/options index 50213e6851..7198c4c410 100644 --- a/projects/Fusion/options +++ b/projects/Fusion/options @@ -226,9 +226,6 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" -# build and install PS3 Remote support (yes / no) - PS3REMOTE_SUPPORT="yes" - # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="no" diff --git a/projects/Generic/options b/projects/Generic/options index ac6706b759..b5be8a50b8 100644 --- a/projects/Generic/options +++ b/projects/Generic/options @@ -226,9 +226,6 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" -# build and install PS3 Remote support (yes / no) - PS3REMOTE_SUPPORT="yes" - # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="yes" diff --git a/projects/Generic_OSS/options b/projects/Generic_OSS/options index 0c6729e199..02c87b30f2 100644 --- a/projects/Generic_OSS/options +++ b/projects/Generic_OSS/options @@ -226,9 +226,6 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" -# build and install PS3 Remote support (yes / no) - PS3REMOTE_SUPPORT="yes" - # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="yes" diff --git a/projects/ION/options b/projects/ION/options index 9fccc22ce9..7cbcf5ca88 100644 --- a/projects/ION/options +++ b/projects/ION/options @@ -226,9 +226,6 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" -# build and install PS3 Remote support (yes / no) - PS3REMOTE_SUPPORT="yes" - # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="no" diff --git a/projects/Intel/options b/projects/Intel/options index 39e9968305..b9d7391c72 100644 --- a/projects/Intel/options +++ b/projects/Intel/options @@ -226,9 +226,6 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" -# build and install PS3 Remote support (yes / no) - PS3REMOTE_SUPPORT="yes" - # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="no" diff --git a/projects/Ultra/options b/projects/Ultra/options index cda0647908..3d8a84726c 100644 --- a/projects/Ultra/options +++ b/projects/Ultra/options @@ -226,9 +226,6 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" -# build and install PS3 Remote support (yes / no) - PS3REMOTE_SUPPORT="yes" - # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="no" From f213fb12b398e29f1422a976461d5a64204b72f3 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 24 Oct 2011 04:51:17 +0200 Subject: [PATCH 07/20] new addon: create addon 'xbmc-ps3remote' Signed-off-by: Stephan Raue --- packages/addons/driver/xbmc-ps3remote/addon | 32 +++++++++++++ .../driver/xbmc-ps3remote/changelog.txt | 2 + .../driver/xbmc-ps3remote/icon/icon.png | Bin 0 -> 28904 bytes packages/addons/driver/xbmc-ps3remote/meta | 38 ++++++++++++++++ .../source/bin/xbmc-ps3remote.service | 43 ++++++++++++++++++ .../driver/xbmc-ps3remote/source/default.py | 23 ++++++++++ 6 files changed, 138 insertions(+) create mode 100755 packages/addons/driver/xbmc-ps3remote/addon create mode 100644 packages/addons/driver/xbmc-ps3remote/changelog.txt create mode 100644 packages/addons/driver/xbmc-ps3remote/icon/icon.png create mode 100644 packages/addons/driver/xbmc-ps3remote/meta create mode 100755 packages/addons/driver/xbmc-ps3remote/source/bin/xbmc-ps3remote.service create mode 100644 packages/addons/driver/xbmc-ps3remote/source/default.py diff --git a/packages/addons/driver/xbmc-ps3remote/addon b/packages/addons/driver/xbmc-ps3remote/addon new file mode 100755 index 0000000000..09b5ddfb18 --- /dev/null +++ b/packages/addons/driver/xbmc-ps3remote/addon @@ -0,0 +1,32 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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 OpenELEC.tv; 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 +################################################################################ + +. config/options $1 + +mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/pixmaps + cp $BUILD/xbmc-*/tools/EventClients/icons/bluetooth.png $ADDON_BUILD/$PKG_ADDON_ID/pixmaps + +mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/pylib + cp $BUILD/xbmc-*/tools/EventClients/Clients/PS3\ BD\ Remote/ps3_remote.py $ADDON_BUILD/$PKG_ADDON_ID/pylib + cp -R $BUILD/PyBluez-*/.install/usr/lib/python*/site-packages/* $ADDON_BUILD/$PKG_ADDON_ID/pylib +mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/pylib/xbmc + cp -R $BUILD/xbmc-*/tools/EventClients/lib/python/* $ADDON_BUILD/$PKG_ADDON_ID/pylib/xbmc diff --git a/packages/addons/driver/xbmc-ps3remote/changelog.txt b/packages/addons/driver/xbmc-ps3remote/changelog.txt new file mode 100644 index 0000000000..2b2cf97623 --- /dev/null +++ b/packages/addons/driver/xbmc-ps3remote/changelog.txt @@ -0,0 +1,2 @@ +1.0.0 +- initial version xbmc-ps3remote \ No newline at end of file diff --git a/packages/addons/driver/xbmc-ps3remote/icon/icon.png b/packages/addons/driver/xbmc-ps3remote/icon/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..6da0cbd829faeadc51a4687502af25e1e22ce735 GIT binary patch literal 28904 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 $ADDON_DIR/pylib/xbmc/defs.py + fi + +################################################################################ +# start ps3remote +################################################################################ + + usleep 1000000 + python $ADDON_DIR/pylib/ps3_remote.py localhost 9777 & diff --git a/packages/addons/driver/xbmc-ps3remote/source/default.py b/packages/addons/driver/xbmc-ps3remote/source/default.py new file mode 100644 index 0000000000..b949ecbb00 --- /dev/null +++ b/packages/addons/driver/xbmc-ps3remote/source/default.py @@ -0,0 +1,23 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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 OpenELEC.tv; 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 +################################################################################ + +import xbmc, time, os, subprocess + +os.system("xbmc-ps3remote.service") From 00ba6926e5b37d276c67527054ef11711d2409ba Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 24 Oct 2011 21:47:17 +0200 Subject: [PATCH 08/20] linux: update to linux-3.1 Signed-off-by: Stephan Raue --- packages/linux/meta | 6 ++---- ..._crosscompile.patch => linux-3.1-000_crosscompile.patch} | 0 ...dev_console.patch => linux-3.1-003-no_dev_console.patch} | 0 ...tch => linux-3.1-004_lower_undefined_mode_timeout.patch} | 0 ...06_enable_utf8.patch => linux-3.1-006_enable_utf8.patch} | 0 ..._floppy_die.patch => linux-3.1-007_die_floppy_die.patch} | 0 ...=> linux-3.1-009_disable_i8042_check_on_apple_mac.patch} | 0 ...ver.patch => linux-3.1-050_add_appleir_usb_driver.patch} | 0 ....1.patch => linux-3.1-052-aureal_remote_quirk-0.1.patch} | 0 ..._remote-0.1.patch => linux-3.1-053-ati_remote-0.1.patch} | 0 ...nux-3.1-053_ati-remote_all_keys_and_keychange-0.1.patch} | 0 ...n_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch} | 0 ... => linux-3.1-058-add_rtl2832u_dvb-usb_driver-0.1.patch} | 0 ...59-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch} | 0 ...ch => linux-3.1-060-fix_dib0700_buffer_access-0.1.patch} | 0 ...> linux-3.1-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch} | 0 ...atch => linux-3.1-071-silence_i915_agp-module-0.1.patch} | 0 ...ppiness.patch => linux-3.1-716_mm-zero_swappiness.patch} | 0 18 files changed, 2 insertions(+), 4 deletions(-) rename packages/linux/patches/{linux-3.1-rc10-000_crosscompile.patch => linux-3.1-000_crosscompile.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-003-no_dev_console.patch => linux-3.1-003-no_dev_console.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-004_lower_undefined_mode_timeout.patch => linux-3.1-004_lower_undefined_mode_timeout.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-006_enable_utf8.patch => linux-3.1-006_enable_utf8.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-007_die_floppy_die.patch => linux-3.1-007_die_floppy_die.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-009_disable_i8042_check_on_apple_mac.patch => linux-3.1-009_disable_i8042_check_on_apple_mac.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-050_add_appleir_usb_driver.patch => linux-3.1-050_add_appleir_usb_driver.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-052-aureal_remote_quirk-0.1.patch => linux-3.1-052-aureal_remote_quirk-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-053-ati_remote-0.1.patch => linux-3.1-053-ati_remote-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-053_ati-remote_all_keys_and_keychange-0.1.patch => linux-3.1-053_ati-remote_all_keys_and_keychange-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch => linux-3.1-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-058-add_rtl2832u_dvb-usb_driver-0.1.patch => linux-3.1-058-add_rtl2832u_dvb-usb_driver-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch => linux-3.1-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-060-fix_dib0700_buffer_access-0.1.patch => linux-3.1-060-fix_dib0700_buffer_access-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch => linux-3.1-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-071-silence_i915_agp-module-0.1.patch => linux-3.1-071-silence_i915_agp-module-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc10-716_mm-zero_swappiness.patch => linux-3.1-716_mm-zero_swappiness.patch} (100%) diff --git a/packages/linux/meta b/packages/linux/meta index 59238d414b..ba4a5f46c6 100644 --- a/packages/linux/meta +++ b/packages/linux/meta @@ -19,14 +19,12 @@ ################################################################################ PKG_NAME="linux" -PKG_VERSION="3.1-rc10" +PKG_VERSION="3.1" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.kernel.org" -#PKG_URL="http://www.kernel.org/pub/linux/kernel/v3.0/testing/$PKG_NAME-$PKG_VERSION.tar.bz2" -#PKG_URL="ftp://ftp.pgpi.com/linux/kernel/pub/linux/kernel/v3.0/testing/$PKG_NAME-$PKG_VERSION.tar.bz2" -PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" +PKG_URL="http://www.kernel.org/pub/linux/kernel/v3.x/$PKG_NAME-$PKG_VERSION.tar.xz" PKG_DEPENDS="busybox linux-drivers linux-firmware pciutils" PKG_BUILD_DEPENDS="toolchain busybox-hosttools xz cpio pciutils" PKG_PRIORITY="optional" diff --git a/packages/linux/patches/linux-3.1-rc10-000_crosscompile.patch b/packages/linux/patches/linux-3.1-000_crosscompile.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-000_crosscompile.patch rename to packages/linux/patches/linux-3.1-000_crosscompile.patch diff --git a/packages/linux/patches/linux-3.1-rc10-003-no_dev_console.patch b/packages/linux/patches/linux-3.1-003-no_dev_console.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-003-no_dev_console.patch rename to packages/linux/patches/linux-3.1-003-no_dev_console.patch diff --git a/packages/linux/patches/linux-3.1-rc10-004_lower_undefined_mode_timeout.patch b/packages/linux/patches/linux-3.1-004_lower_undefined_mode_timeout.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-004_lower_undefined_mode_timeout.patch rename to packages/linux/patches/linux-3.1-004_lower_undefined_mode_timeout.patch diff --git a/packages/linux/patches/linux-3.1-rc10-006_enable_utf8.patch b/packages/linux/patches/linux-3.1-006_enable_utf8.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-006_enable_utf8.patch rename to packages/linux/patches/linux-3.1-006_enable_utf8.patch diff --git a/packages/linux/patches/linux-3.1-rc10-007_die_floppy_die.patch b/packages/linux/patches/linux-3.1-007_die_floppy_die.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-007_die_floppy_die.patch rename to packages/linux/patches/linux-3.1-007_die_floppy_die.patch diff --git a/packages/linux/patches/linux-3.1-rc10-009_disable_i8042_check_on_apple_mac.patch b/packages/linux/patches/linux-3.1-009_disable_i8042_check_on_apple_mac.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-009_disable_i8042_check_on_apple_mac.patch rename to packages/linux/patches/linux-3.1-009_disable_i8042_check_on_apple_mac.patch diff --git a/packages/linux/patches/linux-3.1-rc10-050_add_appleir_usb_driver.patch b/packages/linux/patches/linux-3.1-050_add_appleir_usb_driver.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-050_add_appleir_usb_driver.patch rename to packages/linux/patches/linux-3.1-050_add_appleir_usb_driver.patch diff --git a/packages/linux/patches/linux-3.1-rc10-052-aureal_remote_quirk-0.1.patch b/packages/linux/patches/linux-3.1-052-aureal_remote_quirk-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-052-aureal_remote_quirk-0.1.patch rename to packages/linux/patches/linux-3.1-052-aureal_remote_quirk-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc10-053-ati_remote-0.1.patch b/packages/linux/patches/linux-3.1-053-ati_remote-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-053-ati_remote-0.1.patch rename to packages/linux/patches/linux-3.1-053-ati_remote-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc10-053_ati-remote_all_keys_and_keychange-0.1.patch b/packages/linux/patches/linux-3.1-053_ati-remote_all_keys_and_keychange-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-053_ati-remote_all_keys_and_keychange-0.1.patch rename to packages/linux/patches/linux-3.1-053_ati-remote_all_keys_and_keychange-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc10-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch b/packages/linux/patches/linux-3.1-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch rename to packages/linux/patches/linux-3.1-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch diff --git a/packages/linux/patches/linux-3.1-rc10-058-add_rtl2832u_dvb-usb_driver-0.1.patch b/packages/linux/patches/linux-3.1-058-add_rtl2832u_dvb-usb_driver-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-058-add_rtl2832u_dvb-usb_driver-0.1.patch rename to packages/linux/patches/linux-3.1-058-add_rtl2832u_dvb-usb_driver-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc10-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch b/packages/linux/patches/linux-3.1-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch rename to packages/linux/patches/linux-3.1-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc10-060-fix_dib0700_buffer_access-0.1.patch b/packages/linux/patches/linux-3.1-060-fix_dib0700_buffer_access-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-060-fix_dib0700_buffer_access-0.1.patch rename to packages/linux/patches/linux-3.1-060-fix_dib0700_buffer_access-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc10-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch b/packages/linux/patches/linux-3.1-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch rename to packages/linux/patches/linux-3.1-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc10-071-silence_i915_agp-module-0.1.patch b/packages/linux/patches/linux-3.1-071-silence_i915_agp-module-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-071-silence_i915_agp-module-0.1.patch rename to packages/linux/patches/linux-3.1-071-silence_i915_agp-module-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc10-716_mm-zero_swappiness.patch b/packages/linux/patches/linux-3.1-716_mm-zero_swappiness.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc10-716_mm-zero_swappiness.patch rename to packages/linux/patches/linux-3.1-716_mm-zero_swappiness.patch From 1a666f92b95e8116c95a492bbf245797f05182c3 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 24 Oct 2011 21:54:49 +0200 Subject: [PATCH 09/20] Revert "new addon: create addon 'xbmc-ps3remote'" This reverts commit f213fb12b398e29f1422a976461d5a64204b72f3. --- packages/addons/driver/xbmc-ps3remote/addon | 32 ------------- .../driver/xbmc-ps3remote/changelog.txt | 2 - .../driver/xbmc-ps3remote/icon/icon.png | Bin 28904 -> 0 bytes packages/addons/driver/xbmc-ps3remote/meta | 38 ---------------- .../source/bin/xbmc-ps3remote.service | 43 ------------------ .../driver/xbmc-ps3remote/source/default.py | 23 ---------- 6 files changed, 138 deletions(-) delete mode 100755 packages/addons/driver/xbmc-ps3remote/addon delete mode 100644 packages/addons/driver/xbmc-ps3remote/changelog.txt delete mode 100644 packages/addons/driver/xbmc-ps3remote/icon/icon.png delete mode 100644 packages/addons/driver/xbmc-ps3remote/meta delete mode 100755 packages/addons/driver/xbmc-ps3remote/source/bin/xbmc-ps3remote.service delete mode 100644 packages/addons/driver/xbmc-ps3remote/source/default.py diff --git a/packages/addons/driver/xbmc-ps3remote/addon b/packages/addons/driver/xbmc-ps3remote/addon deleted file mode 100755 index 09b5ddfb18..0000000000 --- a/packages/addons/driver/xbmc-ps3remote/addon +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) -# -# 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 OpenELEC.tv; 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 -################################################################################ - -. config/options $1 - -mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/pixmaps - cp $BUILD/xbmc-*/tools/EventClients/icons/bluetooth.png $ADDON_BUILD/$PKG_ADDON_ID/pixmaps - -mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/pylib - cp $BUILD/xbmc-*/tools/EventClients/Clients/PS3\ BD\ Remote/ps3_remote.py $ADDON_BUILD/$PKG_ADDON_ID/pylib - cp -R $BUILD/PyBluez-*/.install/usr/lib/python*/site-packages/* $ADDON_BUILD/$PKG_ADDON_ID/pylib -mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/pylib/xbmc - cp -R $BUILD/xbmc-*/tools/EventClients/lib/python/* $ADDON_BUILD/$PKG_ADDON_ID/pylib/xbmc diff --git a/packages/addons/driver/xbmc-ps3remote/changelog.txt b/packages/addons/driver/xbmc-ps3remote/changelog.txt deleted file mode 100644 index 2b2cf97623..0000000000 --- a/packages/addons/driver/xbmc-ps3remote/changelog.txt +++ /dev/null @@ -1,2 +0,0 @@ -1.0.0 -- initial version xbmc-ps3remote \ No newline at end of file diff --git a/packages/addons/driver/xbmc-ps3remote/icon/icon.png b/packages/addons/driver/xbmc-ps3remote/icon/icon.png deleted file mode 100644 index 6da0cbd829faeadc51a4687502af25e1e22ce735..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28904 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 $ADDON_DIR/pylib/xbmc/defs.py - fi - -################################################################################ -# start ps3remote -################################################################################ - - usleep 1000000 - python $ADDON_DIR/pylib/ps3_remote.py localhost 9777 & diff --git a/packages/addons/driver/xbmc-ps3remote/source/default.py b/packages/addons/driver/xbmc-ps3remote/source/default.py deleted file mode 100644 index b949ecbb00..0000000000 --- a/packages/addons/driver/xbmc-ps3remote/source/default.py +++ /dev/null @@ -1,23 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) -# -# 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 OpenELEC.tv; 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 -################################################################################ - -import xbmc, time, os, subprocess - -os.system("xbmc-ps3remote.service") From 2501e746f904b3d8b3639e4f637968a3cd259f91 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 24 Oct 2011 21:55:03 +0200 Subject: [PATCH 10/20] Revert "xbmc: dont install ps3 remote helper" This reverts commit 7efc137aadf79b01558af4fa3ceb983c5af2baaa. --- packages/mediacenter/xbmc/install | 14 ++++++++ packages/mediacenter/xbmc/meta | 4 +++ ...eb5-453-ps3_remote_be_more_quiet-0.1.patch | 29 ++++++++++++++++ .../mediacenter/xbmc/scripts/ps3remote_helper | 34 +++++++++++++++++++ .../xbmc/udev.d/98-ps3remote.rules | 27 +++++++++++++++ projects/ATV/options | 3 ++ projects/Fusion/options | 3 ++ projects/Generic/options | 3 ++ projects/Generic_OSS/options | 3 ++ projects/ION/options | 3 ++ projects/Intel/options | 3 ++ projects/Ultra/options | 3 ++ 12 files changed, 129 insertions(+) create mode 100644 packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch create mode 100755 packages/mediacenter/xbmc/scripts/ps3remote_helper create mode 100644 packages/mediacenter/xbmc/udev.d/98-ps3remote.rules diff --git a/packages/mediacenter/xbmc/install b/packages/mediacenter/xbmc/install index 26389423ca..a5a2669182 100755 --- a/packages/mediacenter/xbmc/install +++ b/packages/mediacenter/xbmc/install @@ -82,6 +82,9 @@ mkdir -p $INSTALL/usr/share/xbmc/addons cp -R $PKG_DIR/config/repository.openelec.tv $INSTALL/usr/share/xbmc/addons $SED "s|@ADDON_URL@|$ADDON_URL|g" -i $INSTALL/usr/share/xbmc/addons/repository.openelec.tv/addon.xml +mkdir -p $PYTHON_LIBDIR/site-packages/xbmc + cp -R $PKG_BUILD/tools/EventClients/lib/python/* $PYTHON_LIBDIR/site-packages/xbmc + # install powermanagement hooks mkdir -p $INSTALL/etc/pm/sleep.d cp $PKG_DIR/sleep.d/* $INSTALL/etc/pm/sleep.d @@ -103,3 +106,14 @@ if [ "$WIIMOTE_SUPPORT" = yes ]; then mkdir -p $INSTALL/lib/udev cp $PKG_DIR/scripts/wiiremote_helper $INSTALL/lib/udev fi + +if [ "$PS3REMOTE_SUPPORT" = yes ]; then + mkdir -p $INSTALL/usr/bin + cp $PKG_BUILD/tools/EventClients/Clients/PS3\ BD\ Remote/ps3_remote.py $INSTALL/usr/bin/xbmc-ps3remote + mkdir -p $INSTALL/usr/share/pixmaps/xbmc + cp $PKG_BUILD/tools/EventClients/icons/bluetooth.png $INSTALL/usr/share/pixmaps/xbmc + mkdir -p $PYTHON_LIBDIR/site-packages/xbmc + echo 'ICON_PATH="/usr/share/pixmaps/xbmc/"' > $PYTHON_LIBDIR/site-packages/xbmc/defs.py + mkdir -p $INSTALL/lib/udev + cp $PKG_DIR/scripts/ps3remote_helper $INSTALL/lib/udev +fi diff --git a/packages/mediacenter/xbmc/meta b/packages/mediacenter/xbmc/meta index 21a2ffca5a..abd15b59ba 100644 --- a/packages/mediacenter/xbmc/meta +++ b/packages/mediacenter/xbmc/meta @@ -122,6 +122,10 @@ if [ "$WIIMOTE_SUPPORT" = yes ]; then PKG_DEPENDS="$PKG_DEPENDS wiiuse" fi +if [ "$PS3REMOTE_SUPPORT" = yes ]; then + PKG_DEPENDS="$PKG_DEPENDS PyBluez" +fi + # some python stuff needed for various addons PKG_DEPENDS="$PKG_DEPENDS Imaging" PKG_DEPENDS="$PKG_DEPENDS simplejson" diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch new file mode 100644 index 0000000000..6b2f879e1c --- /dev/null +++ b/packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch @@ -0,0 +1,29 @@ +diff -Naur xbmc-pvr-3513480/tools/EventClients/Clients/PS3 BD Remote/ps3_remote.py xbmc-pvr-3513480.patch/tools/EventClients/Clients/PS3 BD Remote/ps3_remote.py +--- xbmc-pvr-3513480/tools/EventClients/Clients/PS3 BD Remote/ps3_remote.py 2011-04-25 02:36:33.000000000 +0200 ++++ xbmc-pvr-3513480.patch/tools/EventClients/Clients/PS3 BD Remote/ps3_remote.py 2011-04-25 05:30:03.870260596 +0200 +@@ -59,9 +59,6 @@ + target_connected = False + target_address = None + while target_connected is False: +- xbmc.send_notification("Action Required!", +- "Hold Start+Enter on your remote.", +- bticon) + print "Searching for %s" % target_name + print "(Hold Start + Enter on remote to make it discoverable)" + time.sleep(2) +@@ -72,7 +69,6 @@ + except Exception, e: + print "Error performing bluetooth discovery" + print str(e) +- xbmc.send_notification("Error", "Unable to find devices.", bticon) + time.sleep(5) + continue + +@@ -109,7 +105,6 @@ + print "ERROR - Could Not Connect. Trying again..." + time.sleep(2) + else: +- xbmc.send_notification("Error", "No remotes were found.", bticon) + print "Could not find BD Remote Control. Trying again..." + time.sleep(2) + return (remote,target_address) diff --git a/packages/mediacenter/xbmc/scripts/ps3remote_helper b/packages/mediacenter/xbmc/scripts/ps3remote_helper new file mode 100755 index 0000000000..84d8db2806 --- /dev/null +++ b/packages/mediacenter/xbmc/scripts/ps3remote_helper @@ -0,0 +1,34 @@ +#!/bin/sh + +################################################################################ +# Copyright (C) 2009-2010 OpenELEC.tv +# http://www.openelec.tv +# +# 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 OpenELEC.tv; 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 +################################################################################ + +case "${ACTION}" in + add) + if [ -f /usr/bin/xbmc-ps3remote ]; then + /usr/bin/xbmc-ps3remote localhost 9777 & + fi + ;; + remove) + killall xbmc-ps3remote + ;; +esac + +exit 0 diff --git a/packages/mediacenter/xbmc/udev.d/98-ps3remote.rules b/packages/mediacenter/xbmc/udev.d/98-ps3remote.rules new file mode 100644 index 0000000000..913d47f406 --- /dev/null +++ b/packages/mediacenter/xbmc/udev.d/98-ps3remote.rules @@ -0,0 +1,27 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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 OpenELEC.tv; 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 +################################################################################ + +# only does something with "bluetooth" subsystem devices. +SUBSYSTEM!="bluetooth", GOTO="end" + +# Start PS3 Remote support if bluetooth is starting +ACTION=="add|remove", RUN+="/lib/udev/ps3remote_helper" + +LABEL="end" diff --git a/projects/ATV/options b/projects/ATV/options index 387fa3a69c..356c0d0a15 100644 --- a/projects/ATV/options +++ b/projects/ATV/options @@ -226,6 +226,9 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="no" +# build and install PS3 Remote support (yes / no) + PS3REMOTE_SUPPORT="no" + # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="yes" diff --git a/projects/Fusion/options b/projects/Fusion/options index 7198c4c410..50213e6851 100644 --- a/projects/Fusion/options +++ b/projects/Fusion/options @@ -226,6 +226,9 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" +# build and install PS3 Remote support (yes / no) + PS3REMOTE_SUPPORT="yes" + # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="no" diff --git a/projects/Generic/options b/projects/Generic/options index b5be8a50b8..ac6706b759 100644 --- a/projects/Generic/options +++ b/projects/Generic/options @@ -226,6 +226,9 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" +# build and install PS3 Remote support (yes / no) + PS3REMOTE_SUPPORT="yes" + # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="yes" diff --git a/projects/Generic_OSS/options b/projects/Generic_OSS/options index 02c87b30f2..0c6729e199 100644 --- a/projects/Generic_OSS/options +++ b/projects/Generic_OSS/options @@ -226,6 +226,9 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" +# build and install PS3 Remote support (yes / no) + PS3REMOTE_SUPPORT="yes" + # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="yes" diff --git a/projects/ION/options b/projects/ION/options index 7cbcf5ca88..9fccc22ce9 100644 --- a/projects/ION/options +++ b/projects/ION/options @@ -226,6 +226,9 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" +# build and install PS3 Remote support (yes / no) + PS3REMOTE_SUPPORT="yes" + # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="no" diff --git a/projects/Intel/options b/projects/Intel/options index b9d7391c72..39e9968305 100644 --- a/projects/Intel/options +++ b/projects/Intel/options @@ -226,6 +226,9 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" +# build and install PS3 Remote support (yes / no) + PS3REMOTE_SUPPORT="yes" + # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="no" diff --git a/projects/Ultra/options b/projects/Ultra/options index 3d8a84726c..cda0647908 100644 --- a/projects/Ultra/options +++ b/projects/Ultra/options @@ -226,6 +226,9 @@ # build and install WiiMote support (yes / no) WIIMOTE_SUPPORT="yes" +# build and install PS3 Remote support (yes / no) + PS3REMOTE_SUPPORT="yes" + # build and install ATV IR remote support (yes / no) ATVCLIENT_SUPPORT="no" From 3adf6da10b62617fcb96f1bcda7d5adbfdc5ad94 Mon Sep 17 00:00:00 2001 From: anoma Date: Sun, 23 Oct 2011 14:22:39 +0200 Subject: [PATCH 11/20] Typo in README --- README | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README b/README index 4d6fb26362..35bcb12761 100644 --- a/README +++ b/README @@ -1,6 +1,6 @@ http://www.OpenELEC.tv -OpenELEC - Open Embedded Linux Enterainment Center +OpenELEC - Open Embedded Linux Entertainment Center OpenELEC runs XBMC, a complete media center solution (xbmc.org). The base system has been designed and built from the ground up to be as From a379274c893464116bb12262800f83a33252539d Mon Sep 17 00:00:00 2001 From: anoma Date: Sun, 23 Oct 2011 14:27:31 +0200 Subject: [PATCH 12/20] Short static OpenELEC server string --- packages/network/samba/config/smb.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/network/samba/config/smb.conf b/packages/network/samba/config/smb.conf index 426dbba108..e96b001645 100644 --- a/packages/network/samba/config/smb.conf +++ b/packages/network/samba/config/smb.conf @@ -23,7 +23,7 @@ # available from your machine [global] - server string = Media Centre(%i) + server string = OpenELEC workgroup = WORKGROUP netbios name = openelec security = share From 3ac94b571644c9ce207213cbc916c51505743c8f Mon Sep 17 00:00:00 2001 From: anoma Date: Sun, 23 Oct 2011 14:28:58 +0200 Subject: [PATCH 13/20] Inherit netbios name from hostname --- packages/network/samba/config/smb.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/network/samba/config/smb.conf b/packages/network/samba/config/smb.conf index e96b001645..9bf70111b3 100644 --- a/packages/network/samba/config/smb.conf +++ b/packages/network/samba/config/smb.conf @@ -25,7 +25,7 @@ [global] server string = OpenELEC workgroup = WORKGROUP - netbios name = openelec + netbios name = %h security = share guest account = root socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536 From 1750f2f52bbbb30315cf57062e25d3440d0bb4b1 Mon Sep 17 00:00:00 2001 From: Christian Schmidt Date: Tue, 25 Oct 2011 21:17:49 +0200 Subject: [PATCH 14/20] Fix make clean - now cleans everything but the ccache --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 44e28ba802..eb6d627dae 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -BUILD_DIRS="build.*" +BUILD_DIRS=build.* all: system @@ -9,7 +9,7 @@ release: ./scripts/image release clean: - rm -rf $(BUILD_DIRS) + rm -rf $(BUILD_DIRS)/* $(BUILD_DIRS)/.stamps src-pkg: tar cvjf sources.tar.bz2 sources .stamps From fcc6131a7178a7fb365a87030f2d3cc89c3a255e Mon Sep 17 00:00:00 2001 From: Christian Schmidt Date: Tue, 25 Oct 2011 21:27:26 +0200 Subject: [PATCH 15/20] Fix some X packages not to build docs. This fixes build on gentoo when not all the docbook DTDs are installed and also speeds up compoile time. --- packages/x11/lib/libICE/build | 1 + packages/x11/lib/libSM/build | 2 +- packages/x11/lib/libXext/build | 3 ++- packages/x11/lib/libXfont/build | 3 ++- packages/x11/lib/libXmu/build | 1 + packages/x11/lib/xtrans/build | 1 + packages/x11/proto/bigreqsproto/build | 1 + packages/x11/proto/compositeproto/build | 1 + packages/x11/proto/damageproto/build | 1 + packages/x11/proto/dri2proto/build | 1 + packages/x11/proto/fixesproto/build | 1 + packages/x11/proto/fontcacheproto/build | 1 + packages/x11/proto/fontsproto/build | 1 + packages/x11/proto/glproto/build | 1 + packages/x11/proto/inputproto/build | 1 + packages/x11/proto/kbproto/build | 1 + packages/x11/proto/randrproto/build | 1 + packages/x11/proto/recordproto/build | 1 + packages/x11/proto/renderproto/build | 1 + packages/x11/proto/scrnsaverproto/build | 1 + packages/x11/proto/videoproto/build | 1 + packages/x11/proto/xcb-proto/build | 1 + packages/x11/proto/xcmiscproto/build | 1 + packages/x11/proto/xextproto/build | 1 + packages/x11/proto/xf86dgaproto/build | 1 + packages/x11/proto/xf86driproto/build | 1 + packages/x11/proto/xf86miscproto/build | 1 + packages/x11/proto/xf86vidmodeproto/build | 1 + packages/x11/proto/xineramaproto/build | 1 + packages/x11/proto/xproto-host/build | 3 ++- packages/x11/proto/xproto/build | 1 + 31 files changed, 34 insertions(+), 4 deletions(-) diff --git a/packages/x11/lib/libICE/build b/packages/x11/lib/libICE/build index e30522220d..92f310d492 100755 --- a/packages/x11/lib/libICE/build +++ b/packages/x11/lib/libICE/build @@ -31,6 +31,7 @@ cd $PKG_BUILD --disable-static \ --enable-shared \ --disable-ipv6 \ + --without-xmlto make diff --git a/packages/x11/lib/libSM/build b/packages/x11/lib/libSM/build index a7ddabf94e..6e6023560f 100755 --- a/packages/x11/lib/libSM/build +++ b/packages/x11/lib/libSM/build @@ -32,7 +32,7 @@ cd $PKG_BUILD --enable-shared \ --with-libuuid \ --without-xmlto \ - --without-fop \ + --without-fop make diff --git a/packages/x11/lib/libXext/build b/packages/x11/lib/libXext/build index 89581ddb1e..1319fe9bba 100755 --- a/packages/x11/lib/libXext/build +++ b/packages/x11/lib/libXext/build @@ -30,7 +30,8 @@ cd $PKG_BUILD --localstatedir=/var \ --disable-static \ --enable-shared \ - --enable-malloc0returnsnull + --enable-malloc0returnsnull \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/lib/libXfont/build b/packages/x11/lib/libXfont/build index 757552c860..2045719437 100755 --- a/packages/x11/lib/libXfont/build +++ b/packages/x11/lib/libXfont/build @@ -37,7 +37,8 @@ cd $PKG_BUILD --disable-bdfformat \ --disable-snfformat \ --enable-fc \ - --with-gnu-ld + --with-gnu-ld \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/lib/libXmu/build b/packages/x11/lib/libXmu/build index e4f0fdcc63..e4456a00a3 100755 --- a/packages/x11/lib/libXmu/build +++ b/packages/x11/lib/libXmu/build @@ -31,6 +31,7 @@ cd $PKG_BUILD --disable-static \ --enable-shared \ --with-gnu-ld \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/lib/xtrans/build b/packages/x11/lib/xtrans/build index b39b9dd276..eaaa523eb0 100755 --- a/packages/x11/lib/xtrans/build +++ b/packages/x11/lib/xtrans/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/bigreqsproto/build b/packages/x11/proto/bigreqsproto/build index c7c3a8c110..94e504f765 100755 --- a/packages/x11/proto/bigreqsproto/build +++ b/packages/x11/proto/bigreqsproto/build @@ -28,6 +28,7 @@ cd $PKG_BUILD --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/compositeproto/build b/packages/x11/proto/compositeproto/build index c7c3a8c110..94e504f765 100755 --- a/packages/x11/proto/compositeproto/build +++ b/packages/x11/proto/compositeproto/build @@ -28,6 +28,7 @@ cd $PKG_BUILD --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/damageproto/build b/packages/x11/proto/damageproto/build index c7c3a8c110..94e504f765 100755 --- a/packages/x11/proto/damageproto/build +++ b/packages/x11/proto/damageproto/build @@ -28,6 +28,7 @@ cd $PKG_BUILD --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/dri2proto/build b/packages/x11/proto/dri2proto/build index c7c3a8c110..94e504f765 100755 --- a/packages/x11/proto/dri2proto/build +++ b/packages/x11/proto/dri2proto/build @@ -28,6 +28,7 @@ cd $PKG_BUILD --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/fixesproto/build b/packages/x11/proto/fixesproto/build index c7c3a8c110..94e504f765 100755 --- a/packages/x11/proto/fixesproto/build +++ b/packages/x11/proto/fixesproto/build @@ -28,6 +28,7 @@ cd $PKG_BUILD --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/fontcacheproto/build b/packages/x11/proto/fontcacheproto/build index c7c3a8c110..94e504f765 100755 --- a/packages/x11/proto/fontcacheproto/build +++ b/packages/x11/proto/fontcacheproto/build @@ -28,6 +28,7 @@ cd $PKG_BUILD --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/fontsproto/build b/packages/x11/proto/fontsproto/build index c7c3a8c110..94e504f765 100755 --- a/packages/x11/proto/fontsproto/build +++ b/packages/x11/proto/fontsproto/build @@ -28,6 +28,7 @@ cd $PKG_BUILD --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/glproto/build b/packages/x11/proto/glproto/build index c7c3a8c110..94e504f765 100755 --- a/packages/x11/proto/glproto/build +++ b/packages/x11/proto/glproto/build @@ -28,6 +28,7 @@ cd $PKG_BUILD --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/inputproto/build b/packages/x11/proto/inputproto/build index c7c3a8c110..94e504f765 100755 --- a/packages/x11/proto/inputproto/build +++ b/packages/x11/proto/inputproto/build @@ -28,6 +28,7 @@ cd $PKG_BUILD --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/kbproto/build b/packages/x11/proto/kbproto/build index c7c3a8c110..94e504f765 100755 --- a/packages/x11/proto/kbproto/build +++ b/packages/x11/proto/kbproto/build @@ -28,6 +28,7 @@ cd $PKG_BUILD --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/randrproto/build b/packages/x11/proto/randrproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/randrproto/build +++ b/packages/x11/proto/randrproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/recordproto/build b/packages/x11/proto/recordproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/recordproto/build +++ b/packages/x11/proto/recordproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/renderproto/build b/packages/x11/proto/renderproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/renderproto/build +++ b/packages/x11/proto/renderproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/scrnsaverproto/build b/packages/x11/proto/scrnsaverproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/scrnsaverproto/build +++ b/packages/x11/proto/scrnsaverproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/videoproto/build b/packages/x11/proto/videoproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/videoproto/build +++ b/packages/x11/proto/videoproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/xcb-proto/build b/packages/x11/proto/xcb-proto/build index 91c0ebb96e..05d78e76e4 100755 --- a/packages/x11/proto/xcb-proto/build +++ b/packages/x11/proto/xcb-proto/build @@ -26,6 +26,7 @@ cd $PKG_BUILD ./configure --host=$TARGET_NAME \ --build=$HOST_NAME \ --prefix=/usr \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/xcmiscproto/build b/packages/x11/proto/xcmiscproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/xcmiscproto/build +++ b/packages/x11/proto/xcmiscproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/xextproto/build b/packages/x11/proto/xextproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/xextproto/build +++ b/packages/x11/proto/xextproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/xf86dgaproto/build b/packages/x11/proto/xf86dgaproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/xf86dgaproto/build +++ b/packages/x11/proto/xf86dgaproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/xf86driproto/build b/packages/x11/proto/xf86driproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/xf86driproto/build +++ b/packages/x11/proto/xf86driproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/xf86miscproto/build b/packages/x11/proto/xf86miscproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/xf86miscproto/build +++ b/packages/x11/proto/xf86miscproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/xf86vidmodeproto/build b/packages/x11/proto/xf86vidmodeproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/xf86vidmodeproto/build +++ b/packages/x11/proto/xf86vidmodeproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/xineramaproto/build b/packages/x11/proto/xineramaproto/build index c33892ba47..27840be04e 100755 --- a/packages/x11/proto/xineramaproto/build +++ b/packages/x11/proto/xineramaproto/build @@ -27,6 +27,7 @@ cd $PKG_BUILD --build=$HOST_NAME \ --prefix=/usr \ --sysconfdir=/etc \ + --without-xmlto make $MAKEINSTALL diff --git a/packages/x11/proto/xproto-host/build b/packages/x11/proto/xproto-host/build index 300075ae95..21d027bf80 100755 --- a/packages/x11/proto/xproto-host/build +++ b/packages/x11/proto/xproto-host/build @@ -33,7 +33,8 @@ mkdir -p .objdir-host && cd .objdir-host ../configure --host=$HOST_NAME \ --build=$HOST_NAME \ - --prefix=$ROOT/$TOOLCHAIN + --prefix=$ROOT/$TOOLCHAIN \ + --without-xmlto make make install diff --git a/packages/x11/proto/xproto/build b/packages/x11/proto/xproto/build index 997d195335..93051922d0 100755 --- a/packages/x11/proto/xproto/build +++ b/packages/x11/proto/xproto/build @@ -28,6 +28,7 @@ mkdir -p .objdir-target && cd .objdir-target ../configure --host=$TARGET_NAME \ --build=$HOST_NAME \ --prefix=/usr \ + --without-xmlto make $MAKEINSTALL From 1d4d5f827e485c2422212a9eb9c0ec39f067e580 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 26 Oct 2011 01:45:03 +0200 Subject: [PATCH 16/20] xbmc: update to xbmc-cfa1a05 Signed-off-by: Stephan Raue --- packages/mediacenter/xbmc-theme-Confluence/meta | 2 +- packages/mediacenter/xbmc/build | 4 +--- packages/mediacenter/xbmc/meta | 2 +- ...xbmc-cfa1a05-001-add_support_to_specify_GIT_REV-0.1.patch} | 0 ...> xbmc-cfa1a05-013-reenable_lcd_config_settings-0.1.patch} | 0 ...0.1.patch => xbmc-cfa1a05-303-fix_libdvd_xFLAGS-0.1.patch} | 0 ...ld-0.1.patch => xbmc-cfa1a05-311-fix_rsxs_build-0.1.patch} | 0 ...patch => xbmc-cfa1a05-351-increase_YV12_buffers-0.1.patch} | 0 ...a05-353-limit_glxSwapBuffers_going_to_far_ahead-0.1.patch} | 0 ...aapi_increase_number_of_video_surface_allocated-0.1.patch} | 0 ...patch => xbmc-cfa1a05-402-enable_yasm_in_ffmpeg-0.1.patch} | 0 ...ck-0.6.patch => xbmc-cfa1a05-404-add_lame_check-0.6.patch} | 0 ...-408-enable_PYTHONOPTIMIZE_with_external_Python-0.1.patch} | 0 ....1.patch => xbmc-cfa1a05-452-change_lcd_content-0.1.patch} | 0 ...ch => xbmc-cfa1a05-453-add_openelec.tv_RSS_news-0.1.patch} | 0 ...ch => xbmc-cfa1a05-453-ps3_remote_be_more_quiet-0.1.patch} | 0 ...0.1.patch => xbmc-cfa1a05-454-disable_backslash-0.1.patch} | 0 ....patch => xbmc-cfa1a05-457-fix_connection_check-0.1.patch} | 0 ...xbmc-cfa1a05-462-add_remote_irtrans_mediacenter-0.1.patch} | 0 ...1.patch => xbmc-cfa1a05-463-add_remote_devinput-0.1.patch} | 0 ... xbmc-cfa1a05-464-add_eject_keymapping_for_lirc-0.1.patch} | 0 21 files changed, 3 insertions(+), 5 deletions(-) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-001-add_support_to_specify_GIT_REV-0.1.patch => xbmc-cfa1a05-001-add_support_to_specify_GIT_REV-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-013-reenable_lcd_config_settings-0.1.patch => xbmc-cfa1a05-013-reenable_lcd_config_settings-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-303-fix_libdvd_xFLAGS-0.1.patch => xbmc-cfa1a05-303-fix_libdvd_xFLAGS-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-311-fix_rsxs_build-0.1.patch => xbmc-cfa1a05-311-fix_rsxs_build-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-351-increase_YV12_buffers-0.1.patch => xbmc-cfa1a05-351-increase_YV12_buffers-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-353-limit_glxSwapBuffers_going_to_far_ahead-0.1.patch => xbmc-cfa1a05-353-limit_glxSwapBuffers_going_to_far_ahead-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-354-vaapi_increase_number_of_video_surface_allocated-0.1.patch => xbmc-cfa1a05-354-vaapi_increase_number_of_video_surface_allocated-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-402-enable_yasm_in_ffmpeg-0.1.patch => xbmc-cfa1a05-402-enable_yasm_in_ffmpeg-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-404-add_lame_check-0.6.patch => xbmc-cfa1a05-404-add_lame_check-0.6.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-408-enable_PYTHONOPTIMIZE_with_external_Python-0.1.patch => xbmc-cfa1a05-408-enable_PYTHONOPTIMIZE_with_external_Python-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-452-change_lcd_content-0.1.patch => xbmc-cfa1a05-452-change_lcd_content-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-453-add_openelec.tv_RSS_news-0.1.patch => xbmc-cfa1a05-453-add_openelec.tv_RSS_news-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch => xbmc-cfa1a05-453-ps3_remote_be_more_quiet-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-454-disable_backslash-0.1.patch => xbmc-cfa1a05-454-disable_backslash-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-457-fix_connection_check-0.1.patch => xbmc-cfa1a05-457-fix_connection_check-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-462-add_remote_irtrans_mediacenter-0.1.patch => xbmc-cfa1a05-462-add_remote_irtrans_mediacenter-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-463-add_remote_devinput-0.1.patch => xbmc-cfa1a05-463-add_remote_devinput-0.1.patch} (100%) rename packages/mediacenter/xbmc/patches/{xbmc-79cceb5-464-add_eject_keymapping_for_lirc-0.1.patch => xbmc-cfa1a05-464-add_eject_keymapping_for_lirc-0.1.patch} (100%) diff --git a/packages/mediacenter/xbmc-theme-Confluence/meta b/packages/mediacenter/xbmc-theme-Confluence/meta index 03ce319f5e..1011bf08e8 100644 --- a/packages/mediacenter/xbmc-theme-Confluence/meta +++ b/packages/mediacenter/xbmc-theme-Confluence/meta @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="xbmc-theme-Confluence" -PKG_VERSION="79cceb5" +PKG_VERSION="cfa1a05" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/xbmc/build b/packages/mediacenter/xbmc/build index bad981cda0..f5b2aa35e3 100755 --- a/packages/mediacenter/xbmc/build +++ b/packages/mediacenter/xbmc/build @@ -139,7 +139,7 @@ fi # this fixes problems with faac implementation of ffmpeg LDFLAGS=`echo $LDFLAGS | sed -e "s|-Wl,--as-needed||"` - export PYTHON_VERSION="2.6" + export PYTHON_VERSION="2.7" export PYTHON_CPPFLAGS="-I$SYSROOT_PREFIX/usr/include/python$PYTHON_VERSION" export PYTHON_LDFLAGS="-L$SYSROOT_PREFIX/usr/lib/python$PYTHON_VERSION -lpython$PYTHON_VERSION" export PYTHON_SITE_PKG="$SYSROOT_PREFIX/usr/lib/python$PYTHON_VERSION/site-packages" @@ -166,8 +166,6 @@ cd $PKG_BUILD # adding fake Makefile for stripped skin mkdir -p addons/skin.confluence/media touch addons/skin.confluence/media/Makefile.in - mkdir -p addons/skin.touched/media - touch addons/skin.touched/media/Makefile.in # autoreconf do_autoreconf diff --git a/packages/mediacenter/xbmc/meta b/packages/mediacenter/xbmc/meta index abd15b59ba..bfa8f035bb 100644 --- a/packages/mediacenter/xbmc/meta +++ b/packages/mediacenter/xbmc/meta @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="xbmc" -PKG_VERSION="79cceb5" +PKG_VERSION="cfa1a05" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-001-add_support_to_specify_GIT_REV-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-001-add_support_to_specify_GIT_REV-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-001-add_support_to_specify_GIT_REV-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-001-add_support_to_specify_GIT_REV-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-013-reenable_lcd_config_settings-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-013-reenable_lcd_config_settings-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-013-reenable_lcd_config_settings-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-013-reenable_lcd_config_settings-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-303-fix_libdvd_xFLAGS-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-303-fix_libdvd_xFLAGS-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-303-fix_libdvd_xFLAGS-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-303-fix_libdvd_xFLAGS-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-311-fix_rsxs_build-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-311-fix_rsxs_build-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-311-fix_rsxs_build-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-311-fix_rsxs_build-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-351-increase_YV12_buffers-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-351-increase_YV12_buffers-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-351-increase_YV12_buffers-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-351-increase_YV12_buffers-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-353-limit_glxSwapBuffers_going_to_far_ahead-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-353-limit_glxSwapBuffers_going_to_far_ahead-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-353-limit_glxSwapBuffers_going_to_far_ahead-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-353-limit_glxSwapBuffers_going_to_far_ahead-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-354-vaapi_increase_number_of_video_surface_allocated-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-354-vaapi_increase_number_of_video_surface_allocated-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-354-vaapi_increase_number_of_video_surface_allocated-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-354-vaapi_increase_number_of_video_surface_allocated-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-402-enable_yasm_in_ffmpeg-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-402-enable_yasm_in_ffmpeg-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-402-enable_yasm_in_ffmpeg-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-402-enable_yasm_in_ffmpeg-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-404-add_lame_check-0.6.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-404-add_lame_check-0.6.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-404-add_lame_check-0.6.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-404-add_lame_check-0.6.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-408-enable_PYTHONOPTIMIZE_with_external_Python-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-408-enable_PYTHONOPTIMIZE_with_external_Python-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-408-enable_PYTHONOPTIMIZE_with_external_Python-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-408-enable_PYTHONOPTIMIZE_with_external_Python-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-452-change_lcd_content-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-452-change_lcd_content-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-452-change_lcd_content-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-452-change_lcd_content-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-add_openelec.tv_RSS_news-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-453-add_openelec.tv_RSS_news-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-add_openelec.tv_RSS_news-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-453-add_openelec.tv_RSS_news-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-453-ps3_remote_be_more_quiet-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-453-ps3_remote_be_more_quiet-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-453-ps3_remote_be_more_quiet-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-454-disable_backslash-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-454-disable_backslash-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-454-disable_backslash-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-454-disable_backslash-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-457-fix_connection_check-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-457-fix_connection_check-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-457-fix_connection_check-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-457-fix_connection_check-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-462-add_remote_irtrans_mediacenter-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-462-add_remote_irtrans_mediacenter-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-462-add_remote_irtrans_mediacenter-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-462-add_remote_irtrans_mediacenter-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-463-add_remote_devinput-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-463-add_remote_devinput-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-463-add_remote_devinput-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-463-add_remote_devinput-0.1.patch diff --git a/packages/mediacenter/xbmc/patches/xbmc-79cceb5-464-add_eject_keymapping_for_lirc-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-cfa1a05-464-add_eject_keymapping_for_lirc-0.1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/xbmc-79cceb5-464-add_eject_keymapping_for_lirc-0.1.patch rename to packages/mediacenter/xbmc/patches/xbmc-cfa1a05-464-add_eject_keymapping_for_lirc-0.1.patch From 0850e1e5f8e7bf79ff131dbf9b8ed7828d0081ae Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 26 Oct 2011 02:06:17 +0200 Subject: [PATCH 17/20] xbmc: fix last commit Signed-off-by: Stephan Raue --- packages/mediacenter/xbmc/build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediacenter/xbmc/build b/packages/mediacenter/xbmc/build index f5b2aa35e3..034e3eb913 100755 --- a/packages/mediacenter/xbmc/build +++ b/packages/mediacenter/xbmc/build @@ -139,7 +139,7 @@ fi # this fixes problems with faac implementation of ffmpeg LDFLAGS=`echo $LDFLAGS | sed -e "s|-Wl,--as-needed||"` - export PYTHON_VERSION="2.7" + export PYTHON_VERSION="2.6" export PYTHON_CPPFLAGS="-I$SYSROOT_PREFIX/usr/include/python$PYTHON_VERSION" export PYTHON_LDFLAGS="-L$SYSROOT_PREFIX/usr/lib/python$PYTHON_VERSION -lpython$PYTHON_VERSION" export PYTHON_SITE_PKG="$SYSROOT_PREFIX/usr/lib/python$PYTHON_VERSION/site-packages" From ab0c51f40b1ee4092b75bff815c0af705995c8cb Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 26 Oct 2011 03:03:11 +0200 Subject: [PATCH 18/20] Python: update to Python-2.7.2 Signed-off-by: Stephan Raue --- packages/lang/Python/build | 10 +- packages/lang/Python/install | 10 +- packages/lang/Python/meta | 4 +- .../patches/Python-2.6.6-001_xcompile.patch | 294 ------------------ ...hon-2.6.6-004_enable__hashlib.so-0.1.patch | 21 -- ...6-101-fix_subprocess.wait_bug1731717.patch | 96 ------ .../patches/Python-2.6.6-102-ctypes.patch | 46 --- .../patches/Python-2.7.2-001_xcompile.patch | 135 ++++++++ ... Python-2.7.2-002_xcompile_path-0.1.patch} | 23 +- ...compile_disable_modules_and_ssl-0.1.patch} | 0 ...04_xcompile_fix_libffi_configure-0.1.patch | 24 ++ .../Python-2.7.2-008-reread-environment.patch | 37 +++ ...2.7.2-010-change-pyconfig-h-location.patch | 76 +++++ ...h => Python-2.7.2-015_no_static_lib.patch} | 29 +- ...Python-2.7.2-016-python_symlink-0.1.patch} | 0 packages/lang/Python/scripts/python-config | 8 +- packages/mediacenter/xbmc/build | 2 +- 17 files changed, 322 insertions(+), 493 deletions(-) delete mode 100644 packages/lang/Python/patches/Python-2.6.6-001_xcompile.patch delete mode 100644 packages/lang/Python/patches/Python-2.6.6-004_enable__hashlib.so-0.1.patch delete mode 100644 packages/lang/Python/patches/Python-2.6.6-101-fix_subprocess.wait_bug1731717.patch delete mode 100644 packages/lang/Python/patches/Python-2.6.6-102-ctypes.patch create mode 100644 packages/lang/Python/patches/Python-2.7.2-001_xcompile.patch rename packages/lang/Python/patches/{Python-2.6.6-002_xcompile_path-0.1.patch => Python-2.7.2-002_xcompile_path-0.1.patch} (70%) rename packages/lang/Python/patches/{Python-2.6.6-003_xcompile_disable_modules_and_ssl-0.1.patch => Python-2.7.2-003_xcompile_disable_modules_and_ssl-0.1.patch} (100%) create mode 100644 packages/lang/Python/patches/Python-2.7.2-004_xcompile_fix_libffi_configure-0.1.patch create mode 100644 packages/lang/Python/patches/Python-2.7.2-008-reread-environment.patch create mode 100644 packages/lang/Python/patches/Python-2.7.2-010-change-pyconfig-h-location.patch rename packages/lang/Python/patches/{Python-2.6.6-015_no_static_lib.patch => Python-2.7.2-015_no_static_lib.patch} (60%) rename packages/lang/Python/patches/{Python-2.6.6-016-python_symlink-0.1.patch => Python-2.7.2-016-python_symlink-0.1.patch} (100%) diff --git a/packages/lang/Python/build b/packages/lang/Python/build index 91893fdbc5..cf70945fc3 100755 --- a/packages/lang/Python/build +++ b/packages/lang/Python/build @@ -66,13 +66,14 @@ setup_toolchain target strip_lto +#LDFLAGS="$LDFLAGS -lexpat -lffi" \ +#LDFLAGS="$LDFLAGS -lffi" \ ac_cv_file_dev_ptc=no \ ac_cv_file_dev_ptmx=yes \ ac_cv_func_lchflags_works=no \ ac_cv_func_chflags_works=no \ ac_cv_func_printf_zd=yes \ OPT="$CFLAGS -fno-strict-aliasing" \ -LDFLAGS="$LDFLAGS -lexpat -lffi" \ ../configure --host=$TARGET_NAME \ --build=$HOST_NAME \ --cache-file=config.cache \ @@ -91,6 +92,7 @@ LDFLAGS="$LDFLAGS -lexpat -lffi" \ --without-wctype-functions \ --without-cxx-main \ --with-system-ffi \ + --with-system-expat \ make -j1 CC="$TARGET_CC" \ HOSTPYTHON=../.objdir-host/hostpython \ @@ -121,6 +123,6 @@ make -j1 CC="$TARGET_CC" \ rm -rf $ROOT/$TOOLCHAIN/bin/python*-config sed -e "s:%PREFIX%:$SYSROOT_PREFIX/usr:g" -e "s:%CFLAGS%:$TARGET_CFLAGS:g" \ - $ROOT/$PKG_DIR/scripts/python-config > $ROOT/$TOOLCHAIN/bin/python2.6-config - chmod +x $ROOT/$TOOLCHAIN/bin/python2.6-config - ln -s python2.6-config $ROOT/$TOOLCHAIN/bin/python-config + $ROOT/$PKG_DIR/scripts/python-config > $ROOT/$TOOLCHAIN/bin/python2.7-config + chmod +x $ROOT/$TOOLCHAIN/bin/python2.7-config + ln -s python2.7-config $ROOT/$TOOLCHAIN/bin/python-config diff --git a/packages/lang/Python/install b/packages/lang/Python/install index 911aed5ce4..8bf17b62bf 100755 --- a/packages/lang/Python/install +++ b/packages/lang/Python/install @@ -22,15 +22,19 @@ . config/options $1 -PYTHON_VERSION=2.6 +PYTHON_VERSION=2.7 PYTHON_LIB_DIR=$INSTALL/usr/lib/python$PYTHON_VERSION mkdir -p $INSTALL/usr/bin cp $PKG_BUILD/.objdir-target/python $INSTALL/usr/bin/ mkdir -p $INSTALL/usr/lib - cp -PR $PKG_BUILD/.objdir-target/libpython2.6.so.1.0 $INSTALL/usr/lib/ - ln -sf libpython2.6.so.1.0 $INSTALL/usr/lib/libpython2.6.so + cp -PR $PKG_BUILD/.objdir-target/libpython2.7.so.1.0 $INSTALL/usr/lib/ + ln -sf libpython2.7.so.1.0 $INSTALL/usr/lib/libpython2.7.so + +mkdir -p $PYTHON_LIB_DIR/config + cp $PKG_BUILD/.objdir-target/Makefile $PYTHON_LIB_DIR/config + cp $PKG_BUILD/.objdir-target/pyconfig.h $PYTHON_LIB_DIR/config mkdir -p $PYTHON_LIB_DIR/lib-dynload cp $PKG_BUILD/.objdir-target/build/lib*/*.so $PYTHON_LIB_DIR/lib-dynload diff --git a/packages/lang/Python/meta b/packages/lang/Python/meta index 5d3e0101f6..a325e4d0c9 100644 --- a/packages/lang/Python/meta +++ b/packages/lang/Python/meta @@ -19,12 +19,12 @@ ################################################################################ PKG_NAME="Python" -PKG_VERSION="2.6.6" +PKG_VERSION="2.7.2" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="OSS" PKG_SITE="http://www.python.org/" -PKG_URL="http://www.python.org/ftp/python/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.bz2" +PKG_URL="http://www.python.org/ftp/python/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.xz" PKG_DEPENDS="zlib openssl libffi file" PKG_BUILD_DEPENDS="toolchain expat-host sqlite expat zlib-host zlib openssl libffi" PKG_PRIORITY="optional" diff --git a/packages/lang/Python/patches/Python-2.6.6-001_xcompile.patch b/packages/lang/Python/patches/Python-2.6.6-001_xcompile.patch deleted file mode 100644 index 6075333fb3..0000000000 --- a/packages/lang/Python/patches/Python-2.6.6-001_xcompile.patch +++ /dev/null @@ -1,294 +0,0 @@ -diff -u Python-2.6.6_orig/configure Python-2.6.6/configure ---- Python-2.6.6_orig/configure 2010-05-24 22:27:03.000000000 -0400 -+++ Python-2.6.6/configure 2010-09-18 11:10:35.127976185 -0400 -@@ -12760,12 +12760,12 @@ - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for %zd printf() format support" >&5 - $as_echo_n "checking for %zd printf() format support... " >&6; } --if test "$cross_compiling" = yes; then : -- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 --$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} --as_fn_error "cannot run test program while cross compiling --See \`config.log' for more details." "$LINENO" 5; } --else -+#if test "$cross_compiling" = yes; then : -+# { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -+#$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -+#as_fn_error "cannot run test program while cross compiling -+#See \`config.log' for more details." "$LINENO" 5; } -+#else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ - #include -@@ -12815,7 +12815,7 @@ - fi - rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext --fi -+#fi - - - ac_fn_c_check_type "$LINENO" "socklen_t" "ac_cv_type_socklen_t" " -diff -u Python-2.6.6_orig/configure.in Python-2.6.6/configure.in ---- Python-2.6.6_orig/configure.in 2010-05-24 22:27:03.000000000 -0400 -+++ Python-2.6.6/configure.in 2010-09-18 11:34:37.583770305 -0400 -@@ -3860,48 +3860,48 @@ - AC_MSG_RESULT(no) - fi - --AC_MSG_CHECKING(for %zd printf() format support) --AC_TRY_RUN([#include --#include --#include -- --#ifdef HAVE_SYS_TYPES_H --#include --#endif -- --#ifdef HAVE_SSIZE_T --typedef ssize_t Py_ssize_t; --#elif SIZEOF_VOID_P == SIZEOF_LONG --typedef long Py_ssize_t; --#else --typedef int Py_ssize_t; --#endif -- --int main() --{ -- char buffer[256]; -- -- if(sprintf(buffer, "%zd", (size_t)123) < 0) -- return 1; -- -- if (strcmp(buffer, "123")) -- return 1; -- -- if (sprintf(buffer, "%zd", (Py_ssize_t)-123) < 0) -- return 1; -- -- if (strcmp(buffer, "-123")) -- return 1; -- -- return 0; --}], --[AC_MSG_RESULT(yes) -- AC_DEFINE(PY_FORMAT_SIZE_T, "z", [Define to printf format modifier for Py_ssize_t])], -- AC_MSG_RESULT(no)) -+#AC_MSG_CHECKING(for %zd printf() format support) -+#AC_TRY_RUN([#include -+##include -+##include -+# -+##ifdef HAVE_SYS_TYPES_H -+##include -+##endif -+# -+##ifdef HAVE_SSIZE_T -+#typedef ssize_t Py_ssize_t; -+##elif SIZEOF_VOID_P == SIZEOF_LONG -+#typedef long Py_ssize_t; -+##else -+#typedef int Py_ssize_t; -+##endif -+# -+#int main() -+#{ -+# char buffer[256]; -+# -+# if(sprintf(buffer, "%zd", (size_t)123) < 0) -+# return 1; -+# -+# if (strcmp(buffer, "123")) -+# return 1; -+# -+# if (sprintf(buffer, "%zd", (Py_ssize_t)-123) < 0) -+# return 1; -+# -+# if (strcmp(buffer, "-123")) -+# return 1; -+# -+# return 0; -+#}], -+#[AC_MSG_RESULT(yes) -+# AC_DEFINE(PY_FORMAT_SIZE_T, "z", [Define to printf format modifier for Py_ssize_t])], -+# AC_MSG_RESULT(no)) - - AC_CHECK_TYPE(socklen_t,, - AC_DEFINE(socklen_t,int, -- Define to `int' if does not define.),[ -+ Define to 'int' if does not define.),[ - #ifdef HAVE_SYS_TYPES_H - #include - #endif -diff -u Python-2.6.6_orig/Makefile.pre.in Python-2.6.6/Makefile.pre.in ---- Python-2.6.6_orig/Makefile.pre.in 2010-08-01 18:05:31.000000000 -0400 -+++ Python-2.6.6/Makefile.pre.in 2010-09-18 11:21:40.171999625 -0400 -@@ -175,6 +175,7 @@ - - PYTHON= python$(EXE) - BUILDPYTHON= python$(BUILDEXE) -+HOSTPYTHON= ./$(BUILDPYTHON) - - # The task to run while instrument when building the profile-opt target - PROFILE_TASK= $(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck -@@ -205,6 +206,7 @@ - ########################################################################## - # Parser - PGEN= Parser/pgen$(EXE) -+HOSTPGEN= $(PGEN) - - POBJS= \ - Parser/acceler.o \ -@@ -394,8 +396,8 @@ - # Build the shared modules - sharedmods: $(BUILDPYTHON) - @case $$MAKEFLAGS in \ -- *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(LDFLAGS)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \ -- *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(LDFLAGS)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \ -+ *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(LDFLAGS)' OPT='$(OPT)' $(HOSTPYTHON) -E $(srcdir)/setup.py -q build;; \ -+ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(LDFLAGS)' OPT='$(OPT)' $(HOSTPYTHON) -E $(srcdir)/setup.py build;; \ - esac - - # Build static library -@@ -517,7 +519,7 @@ - - $(GRAMMAR_H) $(GRAMMAR_C): $(PGEN) $(GRAMMAR_INPUT) - -@$(INSTALL) -d Include -- -$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) -+ -$(HOSTPGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) - - $(PGEN): $(PGENOBJS) - $(CC) $(OPT) $(LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN) -@@ -886,24 +888,24 @@ - done; \ - done - $(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt -- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- ./$(BUILDPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \ -+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -+ $(HOSTPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST) -f \ - -x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST) -- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- ./$(BUILDPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \ -+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -+ $(HOSTPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST) -f \ - -x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST) - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- ./$(BUILDPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \ -+ $(HOSTPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST)/site-packages -f \ - -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- ./$(BUILDPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \ -+ $(HOSTPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST)/site-packages -f \ - -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- ./$(BUILDPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()" -+ $(HOSTPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()" - - # Create the PLATDIR source directory, if one wasn't distributed.. - $(srcdir)/Lib/$(PLATDIR): -@@ -1001,7 +1003,8 @@ - # Install the dynamically loadable modules - # This goes into $(exec_prefix) - sharedinstall: -- $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py install \ -+ CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' CROSS_COMPILE='$(CROSS_COMPILE)' \ -+ $(RUNSHARED) $(HOSTPYTHON) -E $(srcdir)/setup.py install \ - --prefix=$(prefix) \ - --install-scripts=$(BINDIR) \ - --install-platlib=$(DESTSHARED) \ -diff -u Python-2.6.6_orig/setup.py Python-2.6.6/setup.py ---- Python-2.6.6_orig/setup.py 2010-07-17 08:31:09.000000000 -0400 -+++ Python-2.6.6/setup.py 2010-09-18 11:27:51.803983388 -0400 -@@ -313,33 +313,39 @@ - self.announce('WARNING: skipping import check for Cygwin-based "%s"' - % ext.name) - return -+ if os.environ.get('CROSS_COMPILE_TARGET') == 'yes': -+ return - ext_filename = os.path.join( - self.build_lib, - self.get_ext_filename(self.get_ext_fullname(ext.name))) - try: - imp.load_dynamic(ext.name, ext_filename) - except ImportError, why: -- self.failed.append(ext.name) -- self.announce('*** WARNING: renaming "%s" since importing it' -- ' failed: %s' % (ext.name, why), level=3) -- assert not self.inplace -- basename, tail = os.path.splitext(ext_filename) -- newname = basename + "_failed" + tail -- if os.path.exists(newname): -- os.remove(newname) -- os.rename(ext_filename, newname) -- -- # XXX -- This relies on a Vile HACK in -- # distutils.command.build_ext.build_extension(). The -- # _built_objects attribute is stored there strictly for -- # use here. -- # If there is a failure, _built_objects may not be there, -- # so catch the AttributeError and move on. -- try: -- for filename in self._built_objects: -- os.remove(filename) -- except AttributeError: -- self.announce('unable to remove files (ignored)') -+ if os.environ.get('CROSS_COMPILE_TARGET') != "yes": -+ self.announce('*** WARNING: renaming "%s" since importing it' -+ ' failed: %s' % (ext.name, why), level=3) -+ assert not self.inplace -+ basename, tail = os.path.splitext(ext_filename) -+ newname = basename + "_failed" + tail -+ if os.path.exists(newname): -+ os.remove(newname) -+ os.rename(ext_filename, newname) -+ -+ # XXX -- This relies on a Vile HACK in -+ # distutils.command.build_ext.build_extension(). The -+ # _built_objects attribute is stored there strictly for -+ # use here. -+ # If there is a failure, _built_objects may not be there, -+ # so catch the AttributeError and move on. -+ try: -+ for filename in self._built_objects: -+ os.remove(filename) -+ except AttributeError: -+ self.announce('unable to remove files (ignored)') -+ else: -+ self.announce('WARNING: "%s" failed importing, but we leave it ' -+ 'because we are cross-compiling' % -+ ext.name) - except: - exc_type, why, tb = sys.exc_info() - self.announce('*** WARNING: importing extension "%s" ' -@@ -742,7 +748,7 @@ - - if (ssl_incs is not None and - ssl_libs is not None and -- openssl_ver >= 0x00907000): -+ openssl_ver >= 0x00907000 and False): - # The _hashlib module wraps optimized implementations - # of hash functions from the OpenSSL library. - exts.append( Extension('_hashlib', ['_hashopenssl.c'], -@@ -762,7 +768,7 @@ - depends = ['md5.h']) ) - missing.append('_hashlib') - -- if (openssl_ver < 0x00908000): -+ if (True or openssl_ver < 0x00908000): - # OpenSSL doesn't do these until 0.9.8 so we'll bring our own hash - exts.append( Extension('_sha256', ['sha256module.c']) ) - exts.append( Extension('_sha512', ['sha512module.c']) ) -@@ -1823,7 +1829,7 @@ - ffi_configfile): - from distutils.dir_util import mkpath - mkpath(ffi_builddir) -- config_args = [] -+ config_args = sysconfig.get_config_var("CONFIG_ARGS").split(" ") - - # Pass empty CFLAGS because we'll just append the resulting - # CFLAGS to Python's; -g or -O2 is to be avoided. diff --git a/packages/lang/Python/patches/Python-2.6.6-004_enable__hashlib.so-0.1.patch b/packages/lang/Python/patches/Python-2.6.6-004_enable__hashlib.so-0.1.patch deleted file mode 100644 index e812cb3b0c..0000000000 --- a/packages/lang/Python/patches/Python-2.6.6-004_enable__hashlib.so-0.1.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Naur Python-2.6.6/setup.py Python-2.6.6.patch/setup.py ---- Python-2.6.6/setup.py 2011-05-27 13:46:39.977454633 +0200 -+++ Python-2.6.6.patch/setup.py 2011-05-27 13:47:28.200047208 +0200 -@@ -758,7 +758,7 @@ - - if (ssl_incs is not None and - ssl_libs is not None and -- openssl_ver >= 0x00907000 and False): -+ openssl_ver >= 0x00907000): - # The _hashlib module wraps optimized implementations - # of hash functions from the OpenSSL library. - exts.append( Extension('_hashlib', ['_hashopenssl.c'], -@@ -778,7 +778,7 @@ - depends = ['md5.h']) ) - missing.append('_hashlib') - -- if (True or openssl_ver < 0x00908000): -+ if (openssl_ver < 0x00908000): - # OpenSSL doesn't do these until 0.9.8 so we'll bring our own hash - exts.append( Extension('_sha256', ['sha256module.c']) ) - exts.append( Extension('_sha512', ['sha512module.c']) ) diff --git a/packages/lang/Python/patches/Python-2.6.6-101-fix_subprocess.wait_bug1731717.patch b/packages/lang/Python/patches/Python-2.6.6-101-fix_subprocess.wait_bug1731717.patch deleted file mode 100644 index f9add293a0..0000000000 --- a/packages/lang/Python/patches/Python-2.6.6-101-fix_subprocess.wait_bug1731717.patch +++ /dev/null @@ -1,96 +0,0 @@ - -# HG changeset patch -# User Gregory P. Smith -# Date 1292338973 0 -# Node ID 072ee3f743c21f3770ccf13ad48e10a18048063f -# Parent 8ccf58b0a5da776006d7fc98d9e6975c82265a78 -Merged revisions 87233 via svnmerge from -svn+ssh://pythondev@svn.python.org/python/branches/py3k - -........ - r87233 | gregory.p.smith | 2010-12-14 06:38:00 -0800 (Tue, 14 Dec 2010) | 4 lines - - Issue #1731717: Fixed the problem where subprocess.wait() could cause an - OSError exception when The OS had been told to ignore SIGCLD in our process - or otherwise not wait for exiting child processes. -........ - -diff --git a/Lib/subprocess.py b/Lib/subprocess.py ---- a/Lib/subprocess.py -+++ b/Lib/subprocess.py -@@ -1194,7 +1194,11 @@ class Popen(object): - os.close(errpipe_read) - - if data != "": -- _eintr_retry_call(os.waitpid, self.pid, 0) -+ try: -+ _eintr_retry_call(os.waitpid, self.pid, 0) -+ except OSError as e: -+ if e.errno != errno.ECHILD: -+ raise - child_exception = pickle.loads(data) - for fd in (p2cwrite, c2pread, errread): - if fd is not None: -@@ -1240,7 +1244,15 @@ class Popen(object): - """Wait for child process to terminate. Returns returncode - attribute.""" - if self.returncode is None: -- pid, sts = _eintr_retry_call(os.waitpid, self.pid, 0) -+ try: -+ pid, sts = _eintr_retry_call(os.waitpid, self.pid, 0) -+ except OSError as e: -+ if e.errno != errno.ECHILD: -+ raise -+ # This happens if SIGCLD is set to be ignored or waiting -+ # for child processes has otherwise been disabled for our -+ # process. This child is dead, we can't get the status. -+ sts = 0 - self._handle_exitstatus(sts) - return self.returncode - -diff --git a/Lib/test/subprocessdata/sigchild_ignore.py b/Lib/test/subprocessdata/sigchild_ignore.py -new file mode 100644 ---- /dev/null -+++ b/Lib/test/subprocessdata/sigchild_ignore.py -@@ -0,0 +1,6 @@ -+import signal, subprocess, sys -+# On Linux this causes os.waitpid to fail with OSError as the OS has already -+# reaped our child process. The wait() passing the OSError on to the caller -+# and causing us to exit with an error is what we are testing against. -+signal.signal(signal.SIGCLD, signal.SIG_IGN) -+subprocess.Popen([sys.executable, '-c', 'print("albatross")']).wait() -diff --git a/Lib/test/test_subprocess.py b/Lib/test/test_subprocess.py ---- a/Lib/test/test_subprocess.py -+++ b/Lib/test/test_subprocess.py -@@ -778,6 +778,16 @@ class POSIXProcessTestCase(BaseTestCase) - self.assertStderrEqual(stderr, '') - self.assertEqual(p.wait(), -signal.SIGTERM) - -+ def test_wait_when_sigchild_ignored(self): -+ # NOTE: sigchild_ignore.py may not be an effective test on all OSes. -+ sigchild_ignore = test_support.findfile("sigchild_ignore.py", -+ subdir="subprocessdata") -+ p = subprocess.Popen([sys.executable, sigchild_ignore], -+ stdout=subprocess.PIPE, stderr=subprocess.PIPE) -+ stdout, stderr = p.communicate() -+ self.assertEqual(0, p.returncode, "sigchild_ignore.py exited" -+ " non-zero with this error:\n%s" % stderr) -+ - - @unittest.skipUnless(mswindows, "Windows specific tests") - class Win32ProcessTestCase(BaseTestCase): -diff --git a/Misc/NEWS b/Misc/NEWS ---- a/Misc/NEWS -+++ b/Misc/NEWS -@@ -34,6 +34,10 @@ Library - - - Issue #10464: netrc now correctly handles lines with embedded '#' characters. - -+- Issue #1731717: Fixed the problem where subprocess.wait() could cause an -+ OSError exception when The OS had been told to ignore SIGCLD in our process -+ or otherwise not wait for exiting child processes. -+ - Extension Modules - ----------------- - - diff --git a/packages/lang/Python/patches/Python-2.6.6-102-ctypes.patch b/packages/lang/Python/patches/Python-2.6.6-102-ctypes.patch deleted file mode 100644 index 1e9b2dd842..0000000000 --- a/packages/lang/Python/patches/Python-2.6.6-102-ctypes.patch +++ /dev/null @@ -1,46 +0,0 @@ -diff -Naur Python-2.6.6/Modules/_ctypes/_ctypes.c Python-2.6.6.patch/Modules/_ctypes/_ctypes.c ---- Python-2.6.6/Modules/_ctypes/_ctypes.c 2010-05-09 17:15:40.000000000 +0200 -+++ Python-2.6.6.patch/Modules/_ctypes/_ctypes.c 2011-07-15 22:18:27.367156921 +0200 -@@ -5521,36 +5521,42 @@ - Struct_Type.tp_base = &CData_Type; - if (PyType_Ready(&Struct_Type) < 0) - return; -+ Py_INCREF(&Struct_Type); - PyModule_AddObject(m, "Structure", (PyObject *)&Struct_Type); - - Py_TYPE(&Union_Type) = &UnionType_Type; - Union_Type.tp_base = &CData_Type; - if (PyType_Ready(&Union_Type) < 0) - return; -+ Py_INCREF(&Union_Type); - PyModule_AddObject(m, "Union", (PyObject *)&Union_Type); - - Py_TYPE(&Pointer_Type) = &PointerType_Type; - Pointer_Type.tp_base = &CData_Type; - if (PyType_Ready(&Pointer_Type) < 0) - return; -+ Py_INCREF(&Pointer_Type); - PyModule_AddObject(m, "_Pointer", (PyObject *)&Pointer_Type); - - Py_TYPE(&Array_Type) = &ArrayType_Type; - Array_Type.tp_base = &CData_Type; - if (PyType_Ready(&Array_Type) < 0) - return; -+ Py_INCREF(&Array_Type); - PyModule_AddObject(m, "Array", (PyObject *)&Array_Type); - - Py_TYPE(&Simple_Type) = &SimpleType_Type; - Simple_Type.tp_base = &CData_Type; - if (PyType_Ready(&Simple_Type) < 0) - return; -+ Py_INCREF(&Simple_Type); - PyModule_AddObject(m, "_SimpleCData", (PyObject *)&Simple_Type); - - Py_TYPE(&CFuncPtr_Type) = &CFuncPtrType_Type; - CFuncPtr_Type.tp_base = &CData_Type; - if (PyType_Ready(&CFuncPtr_Type) < 0) - return; -+ Py_INCREF(&CFuncPtr_Type); - PyModule_AddObject(m, "CFuncPtr", (PyObject *)&CFuncPtr_Type); - - /************************************************* diff --git a/packages/lang/Python/patches/Python-2.7.2-001_xcompile.patch b/packages/lang/Python/patches/Python-2.7.2-001_xcompile.patch new file mode 100644 index 0000000000..b8acda082a --- /dev/null +++ b/packages/lang/Python/patches/Python-2.7.2-001_xcompile.patch @@ -0,0 +1,135 @@ +diff -Naur Python-2.7.2/configure Python-2.7.2.patch/configure +--- Python-2.7.2/configure 2011-06-11 17:46:28.000000000 +0200 ++++ Python-2.7.2.patch/configure 2011-10-25 13:10:19.311789641 +0200 +@@ -13673,7 +13673,7 @@ + $as_echo_n "(cached) " >&6 + else + if test "$cross_compiling" = yes; then : +- ac_cv_have_long_long_format=no ++ ac_cv_have_long_long_format="cross -- assuming yes" + else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ +@@ -13725,7 +13725,7 @@ + $as_echo "$ac_cv_have_long_long_format" >&6; } + fi + +-if test "$ac_cv_have_long_long_format" = yes ++if test "$ac_cv_have_long_long_format" != no + then + + $as_echo "#define PY_FORMAT_LONG_LONG \"ll\"" >>confdefs.h +diff -Naur Python-2.7.2/Makefile.pre.in Python-2.7.2.patch/Makefile.pre.in +--- Python-2.7.2/Makefile.pre.in 2011-06-11 17:46:26.000000000 +0200 ++++ Python-2.7.2.patch/Makefile.pre.in 2011-10-25 13:11:38.879809670 +0200 +@@ -182,6 +182,7 @@ + + PYTHON= python$(EXE) + BUILDPYTHON= python$(BUILDEXE) ++HOSTPYTHON= ./$(BUILDPYTHON) + + # The task to run while instrument when building the profile-opt target + PROFILE_TASK= $(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck +@@ -215,6 +216,8 @@ + # Parser + PGEN= Parser/pgen$(EXE) + ++HOSTPGEN= $(PGEN) ++ + POBJS= \ + Parser/acceler.o \ + Parser/grammar1.o \ +@@ -407,8 +410,8 @@ + # Build the shared modules + sharedmods: $(BUILDPYTHON) + @case $$MAKEFLAGS in \ +- *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \ +- *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \ ++ *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' PYTHONXCPREFIX='$(DESTDIR)$(prefix)' $(HOSTPYTHON) -E $(srcdir)/setup.py -q build;; \ ++ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' PYTHONXCPREFIX='$(DESTDIR)$(prefix)' $(HOSTPYTHON) -E $(srcdir)/setup.py build;; \ + esac + + # Build static library +@@ -542,7 +545,7 @@ + $(GRAMMAR_H) $(GRAMMAR_C): Parser/pgen.stamp + Parser/pgen.stamp: $(PGEN) $(GRAMMAR_INPUT) + -@$(INSTALL) -d Include +- $(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) ++ $(HOSTPGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) + -touch Parser/pgen.stamp + + $(PGEN): $(PGENOBJS) +@@ -925,26 +928,26 @@ + done; \ + done + $(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt +- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ +- ./$(BUILDPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \ ++ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ ++ $(HOSTPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST) -f \ + -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ + $(DESTDIR)$(LIBDEST) +- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ +- ./$(BUILDPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \ ++ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ ++ $(HOSTPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST) -f \ + -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ + $(DESTDIR)$(LIBDEST) + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ +- ./$(BUILDPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \ ++ $(HOSTPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST)/site-packages -f \ + -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ +- ./$(BUILDPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \ ++ $(HOSTPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST)/site-packages -f \ + -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ +- ./$(BUILDPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()" ++ $(HOSTPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()" + + # Create the PLATDIR source directory, if one wasn't distributed.. + $(srcdir)/Lib/$(PLATDIR): +@@ -1049,7 +1052,9 @@ + # Install the dynamically loadable modules + # This goes into $(exec_prefix) + sharedinstall: sharedmods +- $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py install \ ++ CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ ++ $(RUNSHARED) $(HOSTPYTHON) -E $(srcdir)/setup.py install \ ++ --skip-build \ + --prefix=$(prefix) \ + --install-scripts=$(BINDIR) \ + --install-platlib=$(DESTSHARED) \ +diff -Naur Python-2.7.2/setup.py Python-2.7.2.patch/setup.py +--- Python-2.7.2/setup.py 2011-06-11 17:46:28.000000000 +0200 ++++ Python-2.7.2.patch/setup.py 2011-10-25 13:10:19.300789501 +0200 +@@ -23,6 +23,10 @@ + # This global variable is used to hold the list of modules to be disabled. + disabled_module_list = [] + ++# _ctypes fails to cross-compile due to the libffi configure script. ++#if os.environ.has_key('PYTHONXCPREFIX'): ++# disabled_module_list.append('_ctypes') ++ + def add_dir_to_list(dirlist, dir): + """Add the directory 'dir' to the list 'dirlist' (at the front) if + 1) 'dir' is not already in 'dirlist' +@@ -278,6 +282,14 @@ + (ext.name, sys.exc_info()[1])) + self.failed.append(ext.name) + return ++ ++ # Inport check will not work when cross-compiling. ++ if os.environ.has_key('PYTHONXCPREFIX'): ++ self.announce( ++ 'WARNING: skipping inport check for cross-compiled: "%s"' % ++ ext.name) ++ return ++ + # Workaround for Mac OS X: The Carbon-based modules cannot be + # reliably imported into a command-line Python + if 'Carbon' in ext.extra_link_args: diff --git a/packages/lang/Python/patches/Python-2.6.6-002_xcompile_path-0.1.patch b/packages/lang/Python/patches/Python-2.7.2-002_xcompile_path-0.1.patch similarity index 70% rename from packages/lang/Python/patches/Python-2.6.6-002_xcompile_path-0.1.patch rename to packages/lang/Python/patches/Python-2.7.2-002_xcompile_path-0.1.patch index 1685b1d701..dfcd9b621a 100644 --- a/packages/lang/Python/patches/Python-2.6.6-002_xcompile_path-0.1.patch +++ b/packages/lang/Python/patches/Python-2.7.2-002_xcompile_path-0.1.patch @@ -1,13 +1,14 @@ -diff -Naur Python-2.6.6/setup.py Python-2.6.6.patch/setup.py ---- Python-2.6.6/setup.py 2010-11-03 00:08:13.955365257 +0100 -+++ Python-2.6.6.patch/setup.py 2010-11-03 00:11:49.838882245 +0100 -@@ -361,9 +361,18 @@ - return sys.platform +diff -Naur Python-2.7.2/setup.py Python-2.7.2.patch/setup.py +--- Python-2.7.2/setup.py 2011-10-25 14:07:59.520264628 +0200 ++++ Python-2.7.2.patch/setup.py 2011-10-25 14:16:32.218793079 +0200 +@@ -380,10 +380,19 @@ + os.unlink(tmpfile) def detect_modules(self): - # Ensure that /usr/local is always used - add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') - add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') +- self.add_multiarch_paths() + try: + modules_include_dirs = os.environ["PYTHON_MODULES_INCLUDE"].split() + except KeyError: @@ -16,6 +17,7 @@ diff -Naur Python-2.6.6/setup.py Python-2.6.6.patch/setup.py + modules_lib_dirs = os.environ["PYTHON_MODULES_LIB"].split() + except KeyError: + modules_lib_dirs = ['/usr/lib'] ++ self.add_multiarch_paths() + for dir in modules_include_dirs: + add_dir_to_list(self.compiler.include_dirs, dir) + for dir in modules_lib_dirs: @@ -23,11 +25,16 @@ diff -Naur Python-2.6.6/setup.py Python-2.6.6.patch/setup.py # Add paths specified in the environment variables LDFLAGS and # CPPFLAGS for header and library files. -@@ -399,12 +408,6 @@ +@@ -419,17 +428,6 @@ for directory in reversed(options.dirs): add_dir_to_list(dir_list, directory) -- if os.path.normpath(sys.prefix) != '/usr': +- if os.path.normpath(sys.prefix) != '/usr' \ +- and not sysconfig.get_config_var('PYTHONFRAMEWORK'): +- # OSX note: Don't add LIBDIR and INCLUDEDIR to building a framework +- # (PYTHONFRAMEWORK is set) to avoid # linking problems when +- # building a framework with different architectures than +- # the one that is currently installed (issue #7473) - add_dir_to_list(self.compiler.library_dirs, - sysconfig.get_config_var("LIBDIR")) - add_dir_to_list(self.compiler.include_dirs, @@ -36,7 +43,7 @@ diff -Naur Python-2.6.6/setup.py Python-2.6.6.patch/setup.py try: have_unicode = unicode except NameError: -@@ -413,11 +416,8 @@ +@@ -438,11 +436,8 @@ # lib_dirs and inc_dirs are used to search for files; # if a file is found in one of those directories, it can # be assumed that no additional -I,-L directives are needed. diff --git a/packages/lang/Python/patches/Python-2.6.6-003_xcompile_disable_modules_and_ssl-0.1.patch b/packages/lang/Python/patches/Python-2.7.2-003_xcompile_disable_modules_and_ssl-0.1.patch similarity index 100% rename from packages/lang/Python/patches/Python-2.6.6-003_xcompile_disable_modules_and_ssl-0.1.patch rename to packages/lang/Python/patches/Python-2.7.2-003_xcompile_disable_modules_and_ssl-0.1.patch diff --git a/packages/lang/Python/patches/Python-2.7.2-004_xcompile_fix_libffi_configure-0.1.patch b/packages/lang/Python/patches/Python-2.7.2-004_xcompile_fix_libffi_configure-0.1.patch new file mode 100644 index 0000000000..670cb900fa --- /dev/null +++ b/packages/lang/Python/patches/Python-2.7.2-004_xcompile_fix_libffi_configure-0.1.patch @@ -0,0 +1,24 @@ +diff -Naur Python-2.7.2/setup.py Python-2.7.2.patch/setup.py +--- Python-2.7.2/setup.py 2011-10-26 01:53:16.014387508 +0200 ++++ Python-2.7.2.patch/setup.py 2011-10-26 02:20:08.236706196 +0200 +@@ -1877,12 +1877,18 @@ + ffi_configfile): + from distutils.dir_util import mkpath + mkpath(ffi_builddir) +- config_args = [] ++ ++ #NOTE: best solution is to add to configure script ++ # as config subdirectory and to exclude darwin ++ # (see configure_ctypes_darwin). ++ #FIXME: lets for now pass all top configure arguments ++ #and do not modify configure script. ++ config_args = sysconfig.get_config_var("CONFIG_ARGS") + + # Pass empty CFLAGS because we'll just append the resulting + # CFLAGS to Python's; -g or -O2 is to be avoided. + cmd = "cd %s && env CFLAGS='' '%s/configure' %s" \ +- % (ffi_builddir, ffi_srcdir, " ".join(config_args)) ++ % (ffi_builddir, ffi_srcdir, config_args) + + res = os.system(cmd) + if res or not os.path.exists(ffi_configfile): diff --git a/packages/lang/Python/patches/Python-2.7.2-008-reread-environment.patch b/packages/lang/Python/patches/Python-2.7.2-008-reread-environment.patch new file mode 100644 index 0000000000..53482a7f1d --- /dev/null +++ b/packages/lang/Python/patches/Python-2.7.2-008-reread-environment.patch @@ -0,0 +1,37 @@ +diff -Naur Python-2.7.2/Makefile.pre.in Python-2.7.2.patch/Makefile.pre.in +--- Python-2.7.2/Makefile.pre.in 2011-10-26 01:53:09.752305358 +0200 ++++ Python-2.7.2.patch/Makefile.pre.in 2011-10-26 01:57:20.158587315 +0200 +@@ -410,8 +410,8 @@ + # Build the shared modules + sharedmods: $(BUILDPYTHON) + @case $$MAKEFLAGS in \ +- *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' PYTHONXCPREFIX='$(DESTDIR)$(prefix)' $(HOSTPYTHON) -E $(srcdir)/setup.py -q build;; \ +- *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' PYTHONXCPREFIX='$(DESTDIR)$(prefix)' $(HOSTPYTHON) -E $(srcdir)/setup.py build;; \ ++ *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' PYTHONXCPREFIX='$(DESTDIR)$(prefix)' CONFIG_ARGS="$(CONFIG_ARGS)" $(HOSTPYTHON) -E $(srcdir)/setup.py -q build;; \ ++ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' PYTHONXCPREFIX='$(DESTDIR)$(prefix)' CONFIG_ARGS="$(CONFIG_ARGS)" $(HOSTPYTHON) -E $(srcdir)/setup.py build;; \ + esac + + # Build static library +@@ -1053,7 +1053,7 @@ + # This goes into $(exec_prefix) + sharedinstall: sharedmods + CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ +- $(RUNSHARED) $(HOSTPYTHON) -E $(srcdir)/setup.py install \ ++ $(RUNSHARED) CONFIG_ARGS="$(CONFIG_ARGS)" $(HOSTPYTHON) -E $(srcdir)/setup.py install \ + --skip-build \ + --prefix=$(prefix) \ + --install-scripts=$(BINDIR) \ +diff -Naur Python-2.7.2/setup.py Python-2.7.2.patch/setup.py +--- Python-2.7.2/setup.py 2011-10-26 01:53:16.014387508 +0200 ++++ Python-2.7.2.patch/setup.py 2011-10-26 01:53:46.158782904 +0200 +@@ -20,6 +20,9 @@ + # Were we compiled --with-pydebug or with #define Py_DEBUG? + COMPILED_WITH_PYDEBUG = hasattr(sys, 'gettotalrefcount') + ++sysconfig.get_config_vars() ++sysconfig._CONFIG_VARS.update(os.environ) ++ + # This global variable is used to hold the list of modules to be disabled. + try: + disabled_module_list = os.environ["PYTHON_DISABLE_MODULES"].split() +diff -Naur Python-2.7.2/setup.py.orig Python-2.7.2.patch/setup.py.orig diff --git a/packages/lang/Python/patches/Python-2.7.2-010-change-pyconfig-h-location.patch b/packages/lang/Python/patches/Python-2.7.2-010-change-pyconfig-h-location.patch new file mode 100644 index 0000000000..fddc6c8836 --- /dev/null +++ b/packages/lang/Python/patches/Python-2.7.2-010-change-pyconfig-h-location.patch @@ -0,0 +1,76 @@ +Change the location of pyconfig.h + +The Python interpreter has a really strange behaviour: at *runtime*, +it reads a Makefile and a header file named pyconfig.h to get some +information about the configuration. + +The Makefile is located in usr/lib/python2.7/config, which is fine +since this location is kept on the target. + +However, by default, the pyconfig.h is installed in +usr/include/python2.7, but we completely remove the usr/include +directory for the target. Since making an exception just for +pyconfig.h is annoying, this patch also installs pyconfig.h to +usr/lib/python2.7/config, and modifies the sysconfig module so that it +looks in this location instead of usr/include. + +The pyconfig.h is still kept in usr/include/python2.7, because it is +needed in the $(STAGING_DIR) when building third-party Python +extensions that contain C code. + +Signed-off-by: Thomas Petazzoni + +--- + Lib/distutils/sysconfig.py | 3 ++- + Lib/sysconfig.py | 2 +- + Makefile.pre.in | 3 ++- + 3 files changed, 5 insertions(+), 3 deletions(-) + +Index: Python-2.7.1/Lib/distutils/sysconfig.py +=================================================================== +--- Python-2.7.1.orig/Lib/distutils/sysconfig.py ++++ Python-2.7.1/Lib/distutils/sysconfig.py +@@ -193,7 +193,8 @@ + else: + inc_dir = project_base + else: +- inc_dir = get_python_inc(plat_specific=1) ++ lib_dir = get_python_lib(plat_specific=1, standard_lib=1) ++ inc_dir = os.path.join(lib_dir, "config") + if get_python_version() < '2.2': + config_h = 'config.h' + else: +Index: Python-2.7.1/Lib/sysconfig.py +=================================================================== +--- Python-2.7.1.orig/Lib/sysconfig.py ++++ Python-2.7.1/Lib/sysconfig.py +@@ -371,7 +371,7 @@ + else: + inc_dir = _PROJECT_BASE + else: +- inc_dir = get_path('platinclude') ++ inc_dir = os.path.join(get_path('stdlib'), "config") + return os.path.join(inc_dir, 'pyconfig.h') + + def get_scheme_names(): +Index: Python-2.7.1/Makefile.pre.in +=================================================================== +--- Python-2.7.1.orig/Makefile.pre.in ++++ Python-2.7.1/Makefile.pre.in +@@ -967,7 +967,6 @@ + echo $(INSTALL_DATA) $$i $(INCLUDEPY); \ + $(INSTALL_DATA) $$i $(DESTDIR)$(INCLUDEPY); \ + done +- $(INSTALL_DATA) pyconfig.h $(DESTDIR)$(CONFINCLUDEPY)/pyconfig.h + + # Install the library and miscellaneous stuff needed for extending/embedding + # This goes into $(exec_prefix) +@@ -1001,6 +1000,8 @@ + $(INSTALL_DATA) Modules/python.o $(DESTDIR)$(LIBPL)/python.o + $(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in + $(INSTALL_DATA) Makefile $(DESTDIR)$(LIBPL)/Makefile ++ $(INSTALL_DATA) pyconfig.h $(DESTDIR)$(LIBPL)/pyconfig.h ++ $(INSTALL_DATA) pyconfig.h $(DESTDIR)$(CONFINCLUDEPY)/pyconfig.h + $(INSTALL_DATA) Modules/Setup $(DESTDIR)$(LIBPL)/Setup + $(INSTALL_DATA) Modules/Setup.local $(DESTDIR)$(LIBPL)/Setup.local + $(INSTALL_DATA) Modules/Setup.config $(DESTDIR)$(LIBPL)/Setup.config diff --git a/packages/lang/Python/patches/Python-2.6.6-015_no_static_lib.patch b/packages/lang/Python/patches/Python-2.7.2-015_no_static_lib.patch similarity index 60% rename from packages/lang/Python/patches/Python-2.6.6-015_no_static_lib.patch rename to packages/lang/Python/patches/Python-2.7.2-015_no_static_lib.patch index e605dc1fe0..30fa25be21 100644 --- a/packages/lang/Python/patches/Python-2.6.6-015_no_static_lib.patch +++ b/packages/lang/Python/patches/Python-2.7.2-015_no_static_lib.patch @@ -1,7 +1,7 @@ -diff -Naur Python-2.6.6/Makefile.pre.in Python-2.6.6.patch/Makefile.pre.in ---- Python-2.6.6/Makefile.pre.in 2010-10-19 22:20:12.198769633 +0200 -+++ Python-2.6.6.patch/Makefile.pre.in 2010-10-19 22:22:07.534168230 +0200 -@@ -384,7 +384,7 @@ +diff -Naur Python-2.7.2/Makefile.pre.in Python-2.7.2.patch/Makefile.pre.in +--- Python-2.7.2/Makefile.pre.in 2011-10-25 16:20:40.178698198 +0200 ++++ Python-2.7.2.patch/Makefile.pre.in 2011-10-25 16:22:33.429160448 +0200 +@@ -398,7 +398,7 @@ # Build the interpreter @@ -10,26 +10,26 @@ diff -Naur Python-2.6.6/Makefile.pre.in Python-2.6.6.patch/Makefile.pre.in $(LINKCC) $(LDFLAGS) $(LINKFORSHARED) -o $@ \ Modules/python.o \ $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) -@@ -400,18 +400,6 @@ - *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' $(HOSTPYTHON) -E $(srcdir)/setup.py build;; \ +@@ -414,18 +414,6 @@ + *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' PYTHONXCPREFIX='$(DESTDIR)$(prefix)' $(HOSTPYTHON) -E $(srcdir)/setup.py build;; \ esac -# Build static library -# avoid long command lines, same as LIBRARY_OBJS -$(LIBRARY): $(LIBRARY_OBJS) - -rm -f $@ -- $(AR) cr $@ Modules/getbuildinfo.o -- $(AR) cr $@ $(PARSER_OBJS) -- $(AR) cr $@ $(OBJECT_OBJS) -- $(AR) cr $@ $(PYTHON_OBJS) -- $(AR) cr $@ $(MODULE_OBJS) $(SIGNAL_OBJS) -- $(AR) cr $@ $(MODOBJS) +- $(AR) $(ARFLAGS) $@ Modules/getbuildinfo.o +- $(AR) $(ARFLAGS) $@ $(PARSER_OBJS) +- $(AR) $(ARFLAGS) $@ $(OBJECT_OBJS) +- $(AR) $(ARFLAGS) $@ $(PYTHON_OBJS) +- $(AR) $(ARFLAGS) $@ $(MODULE_OBJS) $(SIGNAL_OBJS) +- $(AR) $(ARFLAGS) $@ $(MODOBJS) - $(RANLIB) $@ - libpython$(VERSION).so: $(LIBRARY_OBJS) if test $(INSTSONAME) != $(LDLIBRARY); then \ - $(LDSHARED) $(LDFLAGS) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ -@@ -947,18 +935,6 @@ + $(BLDSHARED) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ +@@ -997,18 +985,6 @@ else true; \ fi; \ done @@ -48,3 +48,4 @@ diff -Naur Python-2.6.6/Makefile.pre.in Python-2.6.6.patch/Makefile.pre.in $(INSTALL_DATA) Modules/config.c $(DESTDIR)$(LIBPL)/config.c $(INSTALL_DATA) Modules/python.o $(DESTDIR)$(LIBPL)/python.o $(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in +diff -Naur Python-2.7.2/Makefile.pre.in.orig Python-2.7.2.patch/Makefile.pre.in.orig diff --git a/packages/lang/Python/patches/Python-2.6.6-016-python_symlink-0.1.patch b/packages/lang/Python/patches/Python-2.7.2-016-python_symlink-0.1.patch similarity index 100% rename from packages/lang/Python/patches/Python-2.6.6-016-python_symlink-0.1.patch rename to packages/lang/Python/patches/Python-2.7.2-016-python_symlink-0.1.patch diff --git a/packages/lang/Python/scripts/python-config b/packages/lang/Python/scripts/python-config index c4a25ef8e8..c847e914b5 100755 --- a/packages/lang/Python/scripts/python-config +++ b/packages/lang/Python/scripts/python-config @@ -24,10 +24,10 @@ case $1 in --prefix) echo "/usr" ;; --exec-prefix) echo "/usr" ;; - --includes) echo "-I%PREFIX%/include/python2.6" ;; - --libs) echo "-lpthread -ldl -lutil -lm -lpython2.6" ;; - --cflags) echo "-I%PREFIX%/include/python2.6 -DNDEBUG %CFLAGS%" ;; - --ldflags) echo "-lpthread -ldl -lutil -lm -lpython2.6" ;; + --includes) echo "-I%PREFIX%/include/python2.7" ;; + --libs) echo "-lpthread -ldl -lutil -lm -lpython2.7" ;; + --cflags) echo "-I%PREFIX%/include/python2.7 -DNDEBUG %CFLAGS%" ;; + --ldflags) echo "-lpthread -ldl -lutil -lm -lpython2.7" ;; esac exit 0 diff --git a/packages/mediacenter/xbmc/build b/packages/mediacenter/xbmc/build index 034e3eb913..f5b2aa35e3 100755 --- a/packages/mediacenter/xbmc/build +++ b/packages/mediacenter/xbmc/build @@ -139,7 +139,7 @@ fi # this fixes problems with faac implementation of ffmpeg LDFLAGS=`echo $LDFLAGS | sed -e "s|-Wl,--as-needed||"` - export PYTHON_VERSION="2.6" + export PYTHON_VERSION="2.7" export PYTHON_CPPFLAGS="-I$SYSROOT_PREFIX/usr/include/python$PYTHON_VERSION" export PYTHON_LDFLAGS="-L$SYSROOT_PREFIX/usr/lib/python$PYTHON_VERSION -lpython$PYTHON_VERSION" export PYTHON_SITE_PKG="$SYSROOT_PREFIX/usr/lib/python$PYTHON_VERSION/site-packages" From e0ceb324dc21169e861e16ca5d2b39fcc711a7c6 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 26 Oct 2011 13:13:36 +0200 Subject: [PATCH 19/20] Python: force using system expat (expat-host), thanks to Gujs Signed-off-by: Stephan Raue --- packages/lang/Python/build | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/lang/Python/build b/packages/lang/Python/build index cf70945fc3..26088f8220 100755 --- a/packages/lang/Python/build +++ b/packages/lang/Python/build @@ -40,6 +40,7 @@ LDFLAGS="$LDFLAGS -lexpat" \ --without-cxx-main \ --with-threads \ --enable-unicode=ucs4 \ + --with-system-expat \ make PYTHON_MODULES_INCLUDE="$HOST_INCDIR" \ PYTHON_MODULES_LIB="$HOST_LIBDIR" From e8225354cb8df220372b15548102ee93f9c64afb Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 26 Oct 2011 13:14:34 +0200 Subject: [PATCH 20/20] busybox: create persistent bluetooth workdir to store infos about BT devices on disk Signed-off-by: Stephan Raue --- packages/sysutils/busybox/init.d/02_make-directorys | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/sysutils/busybox/init.d/02_make-directorys b/packages/sysutils/busybox/init.d/02_make-directorys index f52d5c4c69..97c29cb883 100644 --- a/packages/sysutils/busybox/init.d/02_make-directorys +++ b/packages/sysutils/busybox/init.d/02_make-directorys @@ -25,6 +25,7 @@ progress "make variable directory structure" mkdir -p /var/cache \ + /var/lib \ /var/lock \ /var/media \ /var/run \ @@ -58,3 +59,6 @@ progress "make variable directory structure" mkdir -p /var/lib/udisks mkdir -p /var/lib/upower + + mkdir -p $HOME/.cache/bluetooth + ln -sf $HOME/.cache/bluetooth /var/lib/bluetooth