aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/xbmc/xbmc
diff options
context:
space:
mode:
authorKoen Kooi <koen@openembedded.org>2010-06-29 20:18:07 +0200
committerKoen Kooi <koen@openembedded.org>2010-06-29 20:18:50 +0200
commit0cc02ded7bd429208ccb0e0e0aa3e43aec8a4722 (patch)
tree1952e273cd46c8f1fd79ef7b62e64df92c490ef9 /recipes/xbmc/xbmc
parentc86e303133eb530ea12a4e57cec5d3af62d141a0 (diff)
downloadopenembedded-0cc02ded7bd429208ccb0e0e0aa3e43aec8a4722.tar.gz
xbmc: build a slightly more standard version
* performance tweaks from the summer of code project will be applied later
Diffstat (limited to 'recipes/xbmc/xbmc')
-rw-r--r--recipes/xbmc/xbmc/0001-Only-check-for-nasm-on-i686-it-is-bogus-on-ARM-which.patch26
-rw-r--r--recipes/xbmc/xbmc/0002-Exclude-gnu-configize-for-ngstr-m-Thanks-koen.patch45
-rw-r--r--recipes/xbmc/xbmc/0003-Workaround-to-compile-python-on-ngstr-m-with-Python-.patch45
-rw-r--r--recipes/xbmc/xbmc/0004-Don-t-use-sudo-in-install-of-xbmc.bin-not-all-distri.patch26
-rw-r--r--recipes/xbmc/xbmc/0005-Hardcode-arm7-for-now.patch26
-rw-r--r--recipes/xbmc/xbmc/0006-Hardcode-python2.6-for-now.patch26
-rw-r--r--recipes/xbmc/xbmc/0007-No-need-for-FEH-on-embedded-need-a-better-way-to-not.patch38
-rw-r--r--recipes/xbmc/xbmc/0008-configure.in-also-pass-down-target-when-using-host-a.patch129
-rw-r--r--recipes/xbmc/xbmc/0009-Added-a-configure-option-disable-optical-drive.patch76
-rw-r--r--recipes/xbmc/xbmc/0010-Fixed-so-compile-worked-when-disabling-optical.patch136
-rw-r--r--recipes/xbmc/xbmc/0011-reverted-so-normal-bootstrap-doesn-t-exclude-gnu-con.patch66
11 files changed, 639 insertions, 0 deletions
diff --git a/recipes/xbmc/xbmc/0001-Only-check-for-nasm-on-i686-it-is-bogus-on-ARM-which.patch b/recipes/xbmc/xbmc/0001-Only-check-for-nasm-on-i686-it-is-bogus-on-ARM-which.patch
new file mode 100644
index 0000000000..995e767764
--- /dev/null
+++ b/recipes/xbmc/xbmc/0001-Only-check-for-nasm-on-i686-it-is-bogus-on-ARM-which.patch
@@ -0,0 +1,26 @@
+From cbe1089a3455c306d58e175dced0227b5d22ffa5 Mon Sep 17 00:00:00 2001
+From: topfs2 <topfs2@568bbfeb-2a22-0410-94d2-cc84cf5bfa90>
+Date: Mon, 7 Jun 2010 21:03:47 +0000
+Subject: [PATCH 01/11] Only check for nasm on i686, it is bogus on ARM, which is also !x86_64 - Thanks koen
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@30917 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+---
+ configure.in | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 8d714b5..806e9c2 100644
+--- a/configure.in
++++ b/configure.in
+@@ -986,7 +986,7 @@ if test "$HAVE_ZIP" = "no" ; then
+ AC_MSG_ERROR($missing_program)
+ fi
+
+-if test "$ARCH" != "x86_64-linux"; then
++if test "$ARCH" = "i686-linux"; then
+ AC_CHECK_PROG(HAVE_NASM,nasm,"yes","no",)
+ if test "$HAVE_NASM" = "no" ; then
+ AC_MSG_ERROR($missing_program)
+--
+1.6.6.1
+
diff --git a/recipes/xbmc/xbmc/0002-Exclude-gnu-configize-for-ngstr-m-Thanks-koen.patch b/recipes/xbmc/xbmc/0002-Exclude-gnu-configize-for-ngstr-m-Thanks-koen.patch
new file mode 100644
index 0000000000..663b216d0a
--- /dev/null
+++ b/recipes/xbmc/xbmc/0002-Exclude-gnu-configize-for-ngstr-m-Thanks-koen.patch
@@ -0,0 +1,45 @@
+From 517276ac7ef1d01b2edfc1f66323a685bfc25229 Mon Sep 17 00:00:00 2001
+From: topfs2 <topfs2@568bbfeb-2a22-0410-94d2-cc84cf5bfa90>
+Date: Mon, 7 Jun 2010 21:04:05 +0000
+Subject: [PATCH 02/11] =?UTF-8?q?Exclude=20gnu-configize=20for=20=C3=85ngstr=C3=B6m=20-=20Thanks=20koen!?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@30918 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+---
+ bootstrap | 16 ++++++++--------
+ 1 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/bootstrap b/bootstrap
+index 8485ea7..09ceefc 100755
+--- a/bootstrap
++++ b/bootstrap
+@@ -2,16 +2,16 @@
+
+ set -e
+
+-autoreconf -vif
+-autoreconf -vif lib/cpluff
+-# we must autoreconf libass as we don't know till later if it's used.
+-autoreconf -vif lib/libass
+-autoreconf -vif xbmc/cores/dvdplayer/Codecs/libbdnav
++autoreconf -vif --exclude gnu-configize
++autoreconf -vif --exclude gnu-configize lib/cpluff
++# w must autoreconf libass as we don't know till later if it's used.
++autoreconf -vif --exclude gnu-configize lib/libass
++autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libbdnav
+ # order matters with libbdnav and friends
+ [ -d xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss ] && \
+- autoreconf -vif xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss
+-autoreconf -vif xbmc/cores/dvdplayer/Codecs/libdvd/libdvdread
+-autoreconf -vif xbmc/cores/dvdplayer/Codecs/libdvd/libdvdnav
++ autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss
++autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libdvd/libdvdread
++autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libdvd/libdvdnav
+
+ # Clean the generated files
+ find . -depth -type d -name "autom4te.cache" -exec rm -rf {} \;
+--
+1.6.6.1
+
diff --git a/recipes/xbmc/xbmc/0003-Workaround-to-compile-python-on-ngstr-m-with-Python-.patch b/recipes/xbmc/xbmc/0003-Workaround-to-compile-python-on-ngstr-m-with-Python-.patch
new file mode 100644
index 0000000000..e984f6bdd3
--- /dev/null
+++ b/recipes/xbmc/xbmc/0003-Workaround-to-compile-python-on-ngstr-m-with-Python-.patch
@@ -0,0 +1,45 @@
+From 50193c0722ff25e4fcb762884fc24fb69181ebda Mon Sep 17 00:00:00 2001
+From: topfs2 <topfs2@568bbfeb-2a22-0410-94d2-cc84cf5bfa90>
+Date: Mon, 7 Jun 2010 21:04:34 +0000
+Subject: [PATCH 03/11] =?UTF-8?q?Workaround=20to=20compile=20python=20on=20=C3=85ngstr=C3=B6m=20with=20Python=202.6?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@30919 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+---
+ xbmc/lib/libPython/Python/Include/unicodeobject.h | 2 +-
+ xbmc/lib/libPython/xbmcmodule/pyutil.cpp | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/xbmc/lib/libPython/Python/Include/unicodeobject.h b/xbmc/lib/libPython/Python/Include/unicodeobject.h
+index b534187..8a66ab7 100644
+--- a/xbmc/lib/libPython/Python/Include/unicodeobject.h
++++ b/xbmc/lib/libPython/Python/Include/unicodeobject.h
+@@ -147,7 +147,7 @@ typedef PY_UNICODE_TYPE Py_UNICODE;
+ # define PyUnicode_AsRawUnicodeEscapeString PyUnicodeUCS2_AsRawUnicodeEscapeString
+ # define PyUnicode_AsUTF16String PyUnicodeUCS2_AsUTF16String
+ # define PyUnicode_AsUTF8String PyUnicodeUCS2_AsUTF8String
+-# define PyUnicode_AsUnicode PyUnicodeUCS2_AsUnicode
++//# define PyUnicode_AsUnicode PyUnicodeUCS2_AsUnicode
+ # define PyUnicode_AsUnicodeEscapeString PyUnicodeUCS2_AsUnicodeEscapeString
+ # define PyUnicode_AsWideChar PyUnicodeUCS2_AsWideChar
+ # define PyUnicode_Compare PyUnicodeUCS2_Compare
+diff --git a/xbmc/lib/libPython/xbmcmodule/pyutil.cpp b/xbmc/lib/libPython/xbmcmodule/pyutil.cpp
+index 673b2e3..0322b10 100644
+--- a/xbmc/lib/libPython/xbmcmodule/pyutil.cpp
++++ b/xbmc/lib/libPython/xbmcmodule/pyutil.cpp
+@@ -55,8 +55,8 @@ namespace PYXBMC
+ //
+ CStdString utf8String;
+
+- CStdStringW utf16String = (wchar_t*) PyUnicode_AsUnicode(pObject);
+- g_charsetConverter.wToUTF8(utf16String, utf8String);
++// CStdStringW utf16String = (wchar_t*) PyUnicode_AsUnicode(pObject);
++// g_charsetConverter.wToUTF8(utf16String, utf8String);
+
+ buf = utf8String;
+ return 1;
+--
+1.6.6.1
+
diff --git a/recipes/xbmc/xbmc/0004-Don-t-use-sudo-in-install-of-xbmc.bin-not-all-distri.patch b/recipes/xbmc/xbmc/0004-Don-t-use-sudo-in-install-of-xbmc.bin-not-all-distri.patch
new file mode 100644
index 0000000000..c3d066ba21
--- /dev/null
+++ b/recipes/xbmc/xbmc/0004-Don-t-use-sudo-in-install-of-xbmc.bin-not-all-distri.patch
@@ -0,0 +1,26 @@
+From cbac0c8500a67e06ca136591a574c0cf1ae1b0e9 Mon Sep 17 00:00:00 2001
+From: topfs2 <topfs2@568bbfeb-2a22-0410-94d2-cc84cf5bfa90>
+Date: Mon, 7 Jun 2010 21:04:52 +0000
+Subject: [PATCH 04/11] Don't use sudo in install of xbmc.bin - not all distributions have sudo
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@30920 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+---
+ Makefile.in | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index f6a8b8d..01bbf54 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -503,7 +503,7 @@ tools/TexturePacker/TexturePacker: guilib/guilib.a xbmc/lib/libsquish/libsquish-
+ $(MAKE) -C tools/TexturePacker/
+
+ install-bin: xbmc.bin # developement convenience target
+- sudo install -D xbmc.bin $(DESTDIR)$(libdir)/xbmc
++ install -D xbmc.bin $(DESTDIR)$(libdir)/xbmc
+
+ ifeq ($(findstring osx,$(ARCH)), osx)
+ # TODO: add osx install
+--
+1.6.6.1
+
diff --git a/recipes/xbmc/xbmc/0005-Hardcode-arm7-for-now.patch b/recipes/xbmc/xbmc/0005-Hardcode-arm7-for-now.patch
new file mode 100644
index 0000000000..fe64763314
--- /dev/null
+++ b/recipes/xbmc/xbmc/0005-Hardcode-arm7-for-now.patch
@@ -0,0 +1,26 @@
+From ea6d35da9dd3c0ce3e22b3390574e2362348c3ec Mon Sep 17 00:00:00 2001
+From: topfs2 <topfs2@568bbfeb-2a22-0410-94d2-cc84cf5bfa90>
+Date: Mon, 7 Jun 2010 21:05:16 +0000
+Subject: [PATCH 05/11] Hardcode arm7 for now
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@30921 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+---
+ xbmc/lib/libPython/linux/Makefile.in | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/xbmc/lib/libPython/linux/Makefile.in b/xbmc/lib/libPython/linux/Makefile.in
+index 9df6b02..e4caecb 100644
+--- a/xbmc/lib/libPython/linux/Makefile.in
++++ b/xbmc/lib/libPython/linux/Makefile.in
+@@ -32,7 +32,7 @@ ifeq ($(ARCH), x86_64-linux)
+ PYLIBDIR=lib.linux-x86_64-2.4
+ else
+ ifeq ($(ARCH), arm)
+- PYLIBDIR=lib.linux-armv6tel-2.4
++ PYLIBDIR=lib.linux-armv7l-2.4
+ else
+ PYLIBDIR=lib.linux-i686-2.4
+ endif
+--
+1.6.6.1
+
diff --git a/recipes/xbmc/xbmc/0006-Hardcode-python2.6-for-now.patch b/recipes/xbmc/xbmc/0006-Hardcode-python2.6-for-now.patch
new file mode 100644
index 0000000000..b48d1a28af
--- /dev/null
+++ b/recipes/xbmc/xbmc/0006-Hardcode-python2.6-for-now.patch
@@ -0,0 +1,26 @@
+From 9a9456d3355a1b1c341cbf27d193af0f25a2f01d Mon Sep 17 00:00:00 2001
+From: topfs2 <topfs2@568bbfeb-2a22-0410-94d2-cc84cf5bfa90>
+Date: Mon, 7 Jun 2010 21:05:33 +0000
+Subject: [PATCH 06/11] Hardcode python2.6 for now
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@30922 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+---
+ Makefile.in | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 01bbf54..e700604 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -472,7 +472,7 @@ DYNOBJSXBMC= \
+
+ ifeq (arm, $(ARCH))
+ # Force external python2.5 for now!
+-LIBS +=-lpython2.5
++LIBS +=-lpython2.6
+ endif
+
+ xbmc.bin: $(OBJSXBMC) $(DYNOBJSXBMC)
+--
+1.6.6.1
+
diff --git a/recipes/xbmc/xbmc/0007-No-need-for-FEH-on-embedded-need-a-better-way-to-not.patch b/recipes/xbmc/xbmc/0007-No-need-for-FEH-on-embedded-need-a-better-way-to-not.patch
new file mode 100644
index 0000000000..02894c4ed0
--- /dev/null
+++ b/recipes/xbmc/xbmc/0007-No-need-for-FEH-on-embedded-need-a-better-way-to-not.patch
@@ -0,0 +1,38 @@
+From d119bc01f9f15950ef40dfeef9925789f7414b45 Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Tue, 29 Jun 2010 19:06:37 +0200
+Subject: [PATCH 07/11] No need for FEH on embedded (need a better way to not be hardcoded for armv7l)
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@30923 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+
+Conflicts:
+
+ tools/Linux/xbmc.sh.in
+---
+ tools/Linux/xbmc.sh.in | 10 ++++++----
+ 1 files changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/tools/Linux/xbmc.sh.in b/tools/Linux/xbmc.sh.in
+index 9612659..5b5f967 100644
+--- a/tools/Linux/xbmc.sh.in
++++ b/tools/Linux/xbmc.sh.in
+@@ -100,10 +100,12 @@ print_crash_report()
+ echo "Crash report available at $FILE"
+ }
+
+-python @datadir@/xbmc/FEH.py "$SAVED_ARGS"
+-RET=$?
+-if [ $RET -ne 0 ]; then
+- exit $RET
++if [ ! `uname -m` = "armv7l" ]; then
++ python @prefix@/share/xbmc/FEH.py "$SAVED_ARGS"
++ RET=$?
++ if [ $RET -ne 0 ]; then
++ exit $RET
++ fi
+ fi
+
+ # Output warning in case ulimit is unsupported by shell
+--
+1.6.6.1
+
diff --git a/recipes/xbmc/xbmc/0008-configure.in-also-pass-down-target-when-using-host-a.patch b/recipes/xbmc/xbmc/0008-configure.in-also-pass-down-target-when-using-host-a.patch
new file mode 100644
index 0000000000..da54acfeb6
--- /dev/null
+++ b/recipes/xbmc/xbmc/0008-configure.in-also-pass-down-target-when-using-host-a.patch
@@ -0,0 +1,129 @@
+From 8cd72c7fdfb625c9be7a367ec92c763924bd7bf1 Mon Sep 17 00:00:00 2001
+From: topfs2 <topfs2@568bbfeb-2a22-0410-94d2-cc84cf5bfa90>
+Date: Fri, 18 Jun 2010 14:03:47 +0000
+Subject: [PATCH 08/11] configure.in: also pass down --target when using --host and --build. Thanks Koen Kooi!
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@31176 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+---
+ configure.in | 21 +++++++++++++++++----
+ 1 files changed, 17 insertions(+), 4 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 806e9c2..b69261f 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1510,6 +1510,7 @@ XB_CONFIG_MODULE([xbmc/lib/libPython/Python], [
+ ./configure \
+ --host=$host_alias \
+ --build=$build_alias \
++ --target=$target_alias \
+ --disable-ipv6 \
+ --enable-unicode=ucs4 \
+ --without-cxx \
+@@ -1622,6 +1623,7 @@ XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/libdts], [
+ ./configure \
+ --host=$host_alias \
+ --build=$build_alias \
++ --target=$target_alias \
+ --disable-oss \
+ --disable-solaris-audio \
+ --disable-al-audio \
+@@ -1642,6 +1644,7 @@ XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss], [
+ CFLAGS="$CFLAGS" \
+ --host=$host_alias \
+ --build=$build_alias \
++ --target=$target_alias \
+ --disable-doc \
+ --enable-static \
+ --with-pic
+@@ -1664,6 +1667,7 @@ XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/libdvd/libdvdread], [
+ --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
+ --host=$host_alias \
+ --build=$build_alias \
++ --target=$target_alias \
+ --enable-static \
+ --disable-shared \
+ --disable-strip \
+@@ -1692,6 +1696,7 @@ XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/libdvd/libdvdnav], [
+ --with-dvdread-config="`pwd`/../libdvdread/obj/dvdread-config" \
+ --host=$host_alias \
+ --build=$build_alias \
++ --target=$target_alias \
+ --enable-static \
+ --disable-shared \
+ --cc="$CC"
+@@ -1723,6 +1728,7 @@ XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/liba52], [
+ ./configure \
+ --host=$host_alias \
+ --build=$build_alias \
++ --target=$target_alias \
+ --with-pic \
+ --disable-static \
+ --enable-shared \
+@@ -1760,7 +1766,8 @@ XB_CONFIG_MODULE([lib/libass], [
+ CFLAGS="$CFLAGS" \
+ ./configure \
+ --host=$host_alias \
+- --build=$build_alias
++ --build=$build_alias \
++ --target=$target_alias
+ fi
+ ], [$USE_EXTERNAL_LIBASS])
+
+@@ -1778,6 +1785,7 @@ XB_CONFIG_MODULE([xbmc/lib/libid3tag/libid3tag],[
+ --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
+ --host=$host_alias \
+ --build=$build_alias \
++ --target=$target_alias \
+ --disable-static \
+ --with-pic
+ fi
+@@ -1805,6 +1813,7 @@ XB_CONFIG_MODULE([xbmc/visualizations/Goom/goom2k4-0],[
+ --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
+ --host=$host_alias \
+ --build=$build_alias \
++ --target=$target_alias \
+ --disable-shared \
+ --enable-static \
+ --with-pic
+@@ -1837,6 +1846,7 @@ if expr "X$host_cpu" : 'Xarm.*' > /dev/null; then :; else
+ --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
+ --host=$host_alias \
+ --build=$build_alias \
++ --target=$target_alias \
+ --without-xscreensaver \
+ --disable-sound \
+ --disable-cyclone \
+@@ -1857,7 +1867,8 @@ XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/libbdnav/], [
+ else
+ ./configure --without-openssl \
+ --host=$host_alias \
+- --build=$build_alias CFLAGS="$CFLAGS"
++ --build=$build_alias \
++ --target=$target_alias CFLAGS="$CFLAGS"
+ fi
+ ], [0])
+
+@@ -1868,7 +1879,8 @@ XB_CONFIG_MODULE([xbmc/lib/libapetag], [
+ else
+ ./configure \
+ --host=$host_alias \
+- --build=$build_alias CFLAGS="$CFLAGS"
++ --build=$build_alias \
++ --target=$target_alias CFLAGS="$CFLAGS"
+ fi
+ ], [0])
+
+@@ -1898,7 +1910,8 @@ XB_CONFIG_MODULE([lib/cpluff], [
+ else
+ ./configure --disable-nls \
+ --host=$host_alias \
+- --build=$build_alias CFLAGS="$CFLAGS"
++ --build=$build_alias \
++ --target=$target_alias CFLAGS="$CFLAGS"
+ fi
+ ], [0])
+
+--
+1.6.6.1
+
diff --git a/recipes/xbmc/xbmc/0009-Added-a-configure-option-disable-optical-drive.patch b/recipes/xbmc/xbmc/0009-Added-a-configure-option-disable-optical-drive.patch
new file mode 100644
index 0000000000..4a1487e9a9
--- /dev/null
+++ b/recipes/xbmc/xbmc/0009-Added-a-configure-option-disable-optical-drive.patch
@@ -0,0 +1,76 @@
+From f5ba37fc083be1acd412cf2643dab9aaa81f20d8 Mon Sep 17 00:00:00 2001
+From: topfs2 <topfs2@568bbfeb-2a22-0410-94d2-cc84cf5bfa90>
+Date: Fri, 25 Jun 2010 08:58:43 +0000
+Subject: [PATCH 09/11] Added a configure option --disable-optical-drive
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@31373 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+---
+ configure.in | 17 +++++++++++++++++
+ guilib/system.h | 2 +-
+ 2 files changed, 18 insertions(+), 1 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index b69261f..d861b28 100644
+--- a/configure.in
++++ b/configure.in
+@@ -228,6 +228,12 @@ AC_ARG_ENABLE([webserver],
+ [use_webserver=$enableval],
+ [use_webserver=yes])
+
++AC_ARG_ENABLE([optical-drive],
++ [AS_HELP_STRING([--disable-optical-drive],
++ [disable optical drive])],
++ [use_optical_drive=$enableval],
++ [use_optical_drive=yes])
++
+ AC_ARG_ENABLE([libdts],
+ [AS_HELP_STRING([--enable-libdts],
+ [enable deprecated libdts support])],
+@@ -616,6 +622,11 @@ else
+ fi
+ fi
+
++# Optical
++if test "$use_optical_drive" = "yes"; then
++ AC_DEFINE([HAS_DVD_DRIVE], [1], [Define to 1 to have optical drive support])
++fi
++
+ # PulseAudio
+ if test "x$use_pulse" != "xno"; then
+ if test "$host_vendor" = "apple" ; then
+@@ -1258,6 +1269,12 @@ else
+ final_message="$final_message\n WebM support:\tNo"
+ fi
+
++if test "$use_optical_drive" = "yes"; then
++ final_message="$final_message\n Optical drive:\tYes"
++else
++ final_message="$final_message\n Optical drive:\tNo"
++fi
++
+ if test "$use_librtmp" = "yes"; then
+ final_message="$final_message\n libRTMP support:\tYes"
+ else
+diff --git a/guilib/system.h b/guilib/system.h
+index 560778d..6e21cdb 100644
+--- a/guilib/system.h
++++ b/guilib/system.h
+@@ -32,7 +32,6 @@
+ #define HAS_SDL
+ #endif
+
+-#define HAS_DVD_DRIVE
+ #define HAS_DVD_SWSCALE
+ #define HAS_DVDPLAYER
+ #define HAS_EVENT_SERVER
+@@ -87,6 +86,7 @@
+ *****************/
+
+ #ifdef _WIN32
++#define HAS_DVD_DRIVE
+ #define HAS_SDL_JOYSTICK
+ #define HAS_WIN32_NETWORK
+ #define HAS_IRSERVERSUITE
+--
+1.6.6.1
+
diff --git a/recipes/xbmc/xbmc/0010-Fixed-so-compile-worked-when-disabling-optical.patch b/recipes/xbmc/xbmc/0010-Fixed-so-compile-worked-when-disabling-optical.patch
new file mode 100644
index 0000000000..39b611f5d3
--- /dev/null
+++ b/recipes/xbmc/xbmc/0010-Fixed-so-compile-worked-when-disabling-optical.patch
@@ -0,0 +1,136 @@
+From 2a5804ffc7c27496605c033bcbb9fc6569ec134f Mon Sep 17 00:00:00 2001
+From: topfs2 <topfs2@568bbfeb-2a22-0410-94d2-cc84cf5bfa90>
+Date: Fri, 25 Jun 2010 09:00:12 +0000
+Subject: [PATCH 10/11] Fixed so compile worked when disabling optical
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@31374 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+---
+ guilib/system.h | 5 ++++-
+ xbmc/MediaManager.h | 3 ++-
+ xbmc/MusicDatabase.cpp | 1 +
+ xbmc/MusicInfoTagLoaderCDDA.cpp | 4 +++-
+ xbmc/Util.cpp | 2 +-
+ xbmc/utils/Builtins.cpp | 7 ++++++-
+ 6 files changed, 17 insertions(+), 5 deletions(-)
+
+diff --git a/guilib/system.h b/guilib/system.h
+index 6e21cdb..f24665a 100644
+--- a/guilib/system.h
++++ b/guilib/system.h
+@@ -52,7 +52,6 @@
+ #define HAS_JSONRPC
+ #define HAS_HTTPAPI
+
+-#define HAS_CDDA_RIPPER
+ #ifdef HAVE_ASAP_CODEC
+ #define HAS_ASAP_CODEC
+ #endif
+@@ -250,6 +249,10 @@
+ #endif
+ #endif
+
++#ifdef HAS_DVD_DRIVE
++#define HAS_CDDA_RIPPER
++#endif
++
+ #define SAFE_DELETE(p) { delete (p); (p)=NULL; }
+ #define SAFE_DELETE_ARRAY(p) { delete[] (p); (p)=NULL; }
+ #define SAFE_RELEASE(p) { if(p) { (p)->Release(); (p)=NULL; } }
+diff --git a/xbmc/MediaManager.h b/xbmc/MediaManager.h
+index 11338b1..4cba1df 100644
+--- a/xbmc/MediaManager.h
++++ b/xbmc/MediaManager.h
+@@ -22,6 +22,7 @@
+
+ #include "MediaSource.h" // for VECSOURCES
+ #include <map>
++#include "utils/SingleLock.h"
+ #ifdef HAS_DVD_DRIVE
+ #include "FileSystem/cdioSupport.h"
+ #endif
+@@ -70,8 +71,8 @@ public:
+ #ifdef HAS_DVD_DRIVE
+ CCdInfo* GetCdInfo(const CStdString& devicePath="");
+ bool RemoveCdInfo(const CStdString& devicePath="");
+-#endif
+ CStdString GetDiskLabel(const CStdString& devicePath="");
++#endif
+ void SetHasOpticalDrive(bool bstatus);
+
+ bool Eject(CStdString mountpath);
+diff --git a/xbmc/MusicDatabase.cpp b/xbmc/MusicDatabase.cpp
+index f53271e..5d608a5 100644
+--- a/xbmc/MusicDatabase.cpp
++++ b/xbmc/MusicDatabase.cpp
+@@ -58,6 +58,7 @@
+ #include "utils/TimeUtils.h"
+ #include "TextureCache.h"
+ #include "GUIWindowAddonBrowser.h"
++#include "AutoPtrHandle.h"
+
+ using namespace std;
+ using namespace AUTOPTR;
+diff --git a/xbmc/MusicInfoTagLoaderCDDA.cpp b/xbmc/MusicInfoTagLoaderCDDA.cpp
+index 8b4dcbe..aad19c3 100644
+--- a/xbmc/MusicInfoTagLoaderCDDA.cpp
++++ b/xbmc/MusicInfoTagLoaderCDDA.cpp
+@@ -27,9 +27,11 @@
+ #include "MediaManager.h"
+ #include "utils/log.h"
+
+-using namespace MEDIA_DETECT;
+ using namespace MUSIC_INFO;
++#ifdef HAS_DVD_DRIVE
++using namespace MEDIA_DETECT;
+ using namespace CDDB;
++#endif
+
+ CMusicInfoTagLoaderCDDA::CMusicInfoTagLoaderCDDA(void)
+ {
+diff --git a/xbmc/Util.cpp b/xbmc/Util.cpp
+index 276bf5f..dab73a4 100644
+--- a/xbmc/Util.cpp
++++ b/xbmc/Util.cpp
+@@ -1829,7 +1829,7 @@ bool CUtil::ThumbCached(const CStdString& strFileName)
+
+ void CUtil::PlayDVD(const CStdString& strProtocol)
+ {
+-#ifdef HAS_DVDPLAYER
++#if defined(HAS_DVDPLAYER) && defined(HAS_DVD_DRIVE)
+ CIoSupport::Dismount("Cdrom0");
+ CIoSupport::RemapDriveLetter('D', "Cdrom0");
+ CStdString strPath;
+diff --git a/xbmc/utils/Builtins.cpp b/xbmc/utils/Builtins.cpp
+index 64e44a9..a7e8b31 100644
+--- a/xbmc/utils/Builtins.cpp
++++ b/xbmc/utils/Builtins.cpp
+@@ -87,9 +87,12 @@
+
+ using namespace std;
+ using namespace XFILE;
+-using namespace MEDIA_DETECT;
+ using namespace ADDON;
+
++#ifdef HAS_DVD_DRIVE
++using namespace MEDIA_DETECT;
++#endif
++
+ typedef struct
+ {
+ const char* command;
+@@ -759,10 +762,12 @@ int CBuiltins::Execute(const CStdString& execString)
+ {
+ g_playlistPlayer.Clear();
+ }
++#ifdef HAS_DVD_DRIVE
+ else if (execute.Equals("ejecttray"))
+ {
+ CIoSupport::ToggleTray();
+ }
++#endif
+ else if( execute.Equals("alarmclock") && params.size() > 1 )
+ {
+ // format is alarmclock(name,command[,seconds,true]);
+--
+1.6.6.1
+
diff --git a/recipes/xbmc/xbmc/0011-reverted-so-normal-bootstrap-doesn-t-exclude-gnu-con.patch b/recipes/xbmc/xbmc/0011-reverted-so-normal-bootstrap-doesn-t-exclude-gnu-con.patch
new file mode 100644
index 0000000000..6cc41725b3
--- /dev/null
+++ b/recipes/xbmc/xbmc/0011-reverted-so-normal-bootstrap-doesn-t-exclude-gnu-con.patch
@@ -0,0 +1,66 @@
+From f217484b4c0d036697dacb3a93a450b90dd44f82 Mon Sep 17 00:00:00 2001
+From: topfs2 <topfs2@568bbfeb-2a22-0410-94d2-cc84cf5bfa90>
+Date: Fri, 25 Jun 2010 09:00:55 +0000
+Subject: [PATCH 11/11] reverted so normal bootstrap doesn't exclude gnu-configize but added a bootstrap.angstrom who does
+
+git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/gsoc-2010-beagleboard@31375 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
+---
+ bootstrap | 14 +++++++-------
+ bootstrap.angstrom | 17 +++++++++++++++++
+ 2 files changed, 24 insertions(+), 7 deletions(-)
+ create mode 100755 bootstrap.angstrom
+
+diff --git a/bootstrap b/bootstrap
+index 09ceefc..c77ae98 100755
+--- a/bootstrap
++++ b/bootstrap
+@@ -2,16 +2,16 @@
+
+ set -e
+
+-autoreconf -vif --exclude gnu-configize
+-autoreconf -vif --exclude gnu-configize lib/cpluff
++autoreconf -vif
++autoreconf -vif lib/cpluff
+ # w must autoreconf libass as we don't know till later if it's used.
+-autoreconf -vif --exclude gnu-configize lib/libass
+-autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libbdnav
++autoreconf -vif lib/libass
++autoreconf -vif xbmc/cores/dvdplayer/Codecs/libbdnav
+ # order matters with libbdnav and friends
+ [ -d xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss ] && \
+- autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss
+-autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libdvd/libdvdread
+-autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libdvd/libdvdnav
++ autoreconf -vif xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss
++autoreconf -vif xbmc/cores/dvdplayer/Codecs/libdvd/libdvdread
++autoreconf -vif xbmc/cores/dvdplayer/Codecs/libdvd/libdvdnav
+
+ # Clean the generated files
+ find . -depth -type d -name "autom4te.cache" -exec rm -rf {} \;
+diff --git a/bootstrap.angstrom b/bootstrap.angstrom
+new file mode 100755
+index 0000000..8549f89
+--- /dev/null
++++ b/bootstrap.angstrom
+@@ -0,0 +1,17 @@
++#!/bin/sh
++
++set -e
++
++autoreconf -vif --exclude gnu-configize
++autoreconf -vif --exclude gnu-configize lib/cpluff
++# w must autoreconf libass as we don't know till later if it's used.
++autoreconf -vif --exclude gnu-configize lib/libass
++autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libbdnav
++# order matters with libbdnav and friends
++[ -d xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss ] && \
++ autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss
++autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libdvd/libdvdread
++autoreconf -vif --exclude gnu-configize xbmc/cores/dvdplayer/Codecs/libdvd/libdvdnav
++
++echo "Please (re)run configure..."
++
+--
+1.6.6.1
+