summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--abs/extra-testing/community/xbmc-svn/CHANGELOG30
-rw-r--r--abs/extra-testing/community/xbmc-svn/PKGBUILD72
-rw-r--r--abs/extra-testing/community/xbmc-svn/libcurl-not-in-lib64.patch2
-rw-r--r--abs/extra-testing/community/xbmc-svn/libfaad2-enable-AC_PROG_CXX.patch13
-rw-r--r--abs/extra-testing/community/xbmc-svn/xbmc-safe-fullscreen.patch16
-rw-r--r--abs/extra-testing/community/xbmc-svn/xbmc-svn.install4
6 files changed, 92 insertions, 45 deletions
diff --git a/abs/extra-testing/community/xbmc-svn/CHANGELOG b/abs/extra-testing/community/xbmc-svn/CHANGELOG
index 170990b..258e5ef 100644
--- a/abs/extra-testing/community/xbmc-svn/CHANGELOG
+++ b/abs/extra-testing/community/xbmc-svn/CHANGELOG
@@ -1,5 +1,35 @@
xbmc-svn Change log:
--------------------
+3rd June 2009
+20896 haggy: enabled external libs for every lib supported despite python and ffmpeg
+ enabling external python breaks python support in xbmc due to Arch's python
+ compiled with UCS2 support whereas xbmc expects UCS4. Enabling external ffmpeg
+ disables VDPAU and we don't want that for sure.
+
+ IMPORTANT NOTE: If compilation breaks at configure step with some message about
+ not being able to compute the size of int or size_t, try running makepkg as root
+ with 'sudo makepkg --asroot'. This is a known issue and happens only on systems
+ linked to nvidia's libgl which causes binaries to segfault within a fakeroot
+ environment. pacman 3.3 will fix this by splitting configure and installation steps.
+
+1st June 2009
+20818 haggy: this is the last revision before external-libs-support got patched
+ in. Unfortunately this will not compile with fakeroot. waiting for
+ pacman 3.3 which can split up configure and make install steps.
+
+30th May 2009
+20793 haggy: removed gcc44-fixes.patch - got merged into svn
+
+29th May 2009
+20755 haggy: pushed rev as requested
+
+27th May 2009
+20705 haggy: added a patch which fixed compilation with GCC 4.4.
+
+21th May 2009
+20509 haggy: xbmc got updates on goom due to the jaunty build system update. i
+ i wiped all goom specific hacks from the PKGBUILD and it compiled
+ fine, so let's see what you guys achieve.
19th May 2009
20449-1 richy: 1. Removed the autoreconf line as it didn't seem to help
diff --git a/abs/extra-testing/community/xbmc-svn/PKGBUILD b/abs/extra-testing/community/xbmc-svn/PKGBUILD
index e583600..57efdca 100644
--- a/abs/extra-testing/community/xbmc-svn/PKGBUILD
+++ b/abs/extra-testing/community/xbmc-svn/PKGBUILD
@@ -5,7 +5,7 @@
# for his xbmc-vdpau-vdr PKGBUILD at https://archvdr.svn.sourceforge.net/svnroot/archvdr/trunk/archvdr/xbmc-vdpau-vdr/PKGBUILD
pkgname=xbmc-svn
-pkgver=20449
+pkgver=20948
pkgrel=1
pkgdesc="XBMC Media Center from SVN (linuxport branch)"
provides=('xbmc')
@@ -13,10 +13,12 @@ conflicts=('xbmc' 'xbmc-smoothvideo' 'xbmc-vdpau')
arch=('i686' 'x86_64')
url="http://xbmc.org"
license=('GPL' 'LGPL')
-depends=('alsa-lib' 'curl' 'enca' 'faac' 'freetype2' 'fribidi' 'gawk' 'glew' \
- 'hal' 'jasper' 'libgl' 'libjpeg>=6b-5' 'libmad' 'libmysqlclient' \
- 'libxinerama' 'libxrandr' 'lzo2' 'sdl_image' 'sdl_mixer' 'sqlite3' \
- 'tre' 'unzip' 'libcdio' 'libsamplerate' 'python')
+depends=('alsa-lib' 'curl' 'enca' 'faac' 'freetype2' 'fribidi' 'gawk' 'glew'
+ 'hal' 'jasper' 'libgl' 'libjpeg>=6b-5' 'libmad' 'libmysqlclient'
+ 'libxinerama' 'libxrandr' 'lzo2' 'sdl_image' 'sdl_mixer' 'sqlite3'
+ 'tre' 'unzip' 'libcdio' 'libsamplerate' 'python' 'avahi' 'libmad'
+ 'a52dec' 'libdca' 'faad2' 'libmpeg2' 'libvorbis' 'libogg'
+ 'libmpcdec' 'flac' 'wavpack' 'xorg-utils')
makedepends=('subversion' 'autoconf' 'automake' 'boost' 'cmake' 'gcc' 'gperf'
'libtool>=2.2.6a-1' 'make' 'nasm' 'patch' 'pkgconfig' 'zip' 'flex' 'bison')
optdepends=('lirc: remote controller support'
@@ -24,17 +26,14 @@ optdepends=('lirc: remote controller support'
'smbclient: access windows shares'
'unrar: access compressed files without unpacking them')
install=("${pkgname}.install")
-source=('libcurl-not-in-lib64.patch' \
- 'libfaad2-enable-AC_PROG_CXX.patch' \
+source=('libcurl-not-in-lib64.patch'
'xbmc-safe-fullscreen.patch'
'Lircmap.xml')
-noextract=('libcurl-not-in-lib64.patch' \
- 'libfaad2-enable-AC_PROG_CXX.patch' \
- 'xbmc-safe-fullscreen.patch')
-
-md5sums=('96636ee964e37b78ca62235eb10d29c1'
- '6864778d6adc3ccc79130c294f2fffd9'
- 'c4d53522773846d8670884cc38f94aa0'
+noextract=('libcurl-not-in-lib64.patch'
+ 'xbmc-safe-fullscreen.patch'
+ 'Lircmap.xml')
+md5sums=('ac1244a5b4aad0e7d59e86a0d318df1b'
+ '809c684287b68621d3b19923bb57adfe'
'3f93186f1ea4aad73011d00754c7265a')
options=(!makeflags)
@@ -60,36 +59,48 @@ build() {
# Experimental safe fullscreen patch from the forums (by motd2k)
msg "Patching with xbmc-safe-fullscreen.patch"
- patch --quiet -p0 < "$srcdir/xbmc-safe-fullscreen.patch" || return 1
+ patch -p0 < "$srcdir/xbmc-safe-fullscreen.patch" || return 1
# Arch's libcurl lives in /usr/lib, not /usr/lib64 - fix the path:
msg "Patching with libcurl-not-in-lib64.patch"
- patch --quiet -p0 < "$srcdir/libcurl-not-in-lib64.patch" || return 1
-
- # libfaad2 complains about a missing AC_PROG_CXX - add it and bootstrap:
- msg "Patching with libfaad2-enable-AC_PROG_CXX.patch"
- patch --quiet -p0 < "$srcdir/libfaad2-enable-AC_PROG_CXX.patch" || return 1
- autoreconf -vif xbmc/cores/dvdplayer/Codecs/libfaad2
-
- # libass needs a bootstrap due to newer autotools in Arch Linux
- autoreconf -vif xbmc/lib/libass
-
- # Another autotools mismatch between Arch and Ubuntu (xbmc-linuxport is developed against Ubuntu)
- autoreconf -vif "$srcdir/$_svnmod/xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss"
+ patch -p0 < "$srcdir/libcurl-not-in-lib64.patch" || return 1
# Goom also needs a fixup due to newer autotools
cd "$srcdir/$_svnmod/xbmc/visualizations/Goom/goom2k4-0"
aclocal
libtoolize --copy --force
./autogen.sh --enable-static --with-pic
-
+
# Configure XBMC
+ #
+ # Note on external-libs:
+ # - We cannot use external python because Arch's python was built with
+ # UCS2 unicode support, whereas xbmc expects UCS4 support
+ # - We cannot use external ffmpeg as we would loose VDPAU functionality
+ # because Arch's ffmpeg package does not support VDPAU
+ # - We don't want to rely on AUR packages, so we also don't use libass
+ # as long as it's in AUR
+ msg "Configuring XBMC"
cd "$srcdir/$_svnmod"
make distclean
./configure --prefix=${_prefix} \
+ --enable-external-libmad \
+ --enable-external-liba52 \
+ --enable-external-libdts \
+ --enable-external-libfaad \
+ --enable-external-libmpeg2 \
+ --enable-external-libvorbis \
+ --enable-external-libogg \
+ --enable-external-libmpcdec \
+ --enable-external-libflac \
+ --enable-external-libwavpack \
+ --disable-external-libass \
+ --disable-external-python \
+ --disable-external-ffmpeg \
--disable-debug || return 1
# Fix false negative detections of realloc that happens some times
+ msg "Fixing false negative detections of realloc"
if grep -q 'HAVE_REALLOC 0' config.h; then
sed -e 's|#define HAVE_REALLOC 0|#define HAVE_REALLOC 1|' \
-e 's|#define realloc rpl_realloc|/* #define realloc rpl_realloc */|' \
@@ -97,11 +108,14 @@ build() {
fi
# XBMCTex will segfault on systems with nvidia installed if linked to OpenGL
+ msg "Fixing XBMCTex on systems using the nvidia driver blob"
sed -e 's/-lGLU -lGLEW -lGL//' \
-i ${srcdir}/$_svnmod/tools/XBMCTex/Makefile
# Now (finally) build
+ msg "Running make"
make || return 1
+ msg "Running make install"
make prefix=${pkgdir}${_prefix} install || return 1
# Install
@@ -127,5 +141,5 @@ build() {
done
# Use custom Lircmap to support StreamZap remote
- cp $srcdir/Lircmap.xml ${pkgdir}${_prefix}/share/xbmc/system/Lircmap.xml
+ cp ${srcdir}/Lircmap.xml ${pkgdir}${_prefix}/share/xbmc/system/Lircmap.xml
}
diff --git a/abs/extra-testing/community/xbmc-svn/libcurl-not-in-lib64.patch b/abs/extra-testing/community/xbmc-svn/libcurl-not-in-lib64.patch
index b89db5a..54402ab 100644
--- a/abs/extra-testing/community/xbmc-svn/libcurl-not-in-lib64.patch
+++ b/abs/extra-testing/community/xbmc-svn/libcurl-not-in-lib64.patch
@@ -2,7 +2,7 @@ Index: Makefile.include.in
===================================================================
--- Makefile.include.in (revision 20149)
+++ Makefile.include.in (working copy)
-@@ -24,7 +24,7 @@
+@@ -30,7 +30,7 @@
ifeq (linux,$(findstring linux, $(ARCH)))
ifeq ($(ARCH), x86_64-linux)
diff --git a/abs/extra-testing/community/xbmc-svn/libfaad2-enable-AC_PROG_CXX.patch b/abs/extra-testing/community/xbmc-svn/libfaad2-enable-AC_PROG_CXX.patch
deleted file mode 100644
index 89d7497..0000000
--- a/abs/extra-testing/community/xbmc-svn/libfaad2-enable-AC_PROG_CXX.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: xbmc/cores/dvdplayer/Codecs/libfaad2/configure.in
-===================================================================
---- xbmc/cores/dvdplayer/Codecs/libfaad2/configure.in (revision 19486)
-+++ xbmc/cores/dvdplayer/Codecs/libfaad2/configure.in (working copy)
-@@ -18,7 +18,7 @@
- AC_PROG_CC
- AC_PROG_CPP
- dnl disable for mpeg4ip plugin
--dnl AC_PROG_CXX
-+AC_PROG_CXX
- AC_PROG_INSTALL
- AC_PROG_LN_S
- AC_PROG_MAKE_SET
diff --git a/abs/extra-testing/community/xbmc-svn/xbmc-safe-fullscreen.patch b/abs/extra-testing/community/xbmc-svn/xbmc-safe-fullscreen.patch
index d112e52..2da0c91 100644
--- a/abs/extra-testing/community/xbmc-svn/xbmc-safe-fullscreen.patch
+++ b/abs/extra-testing/community/xbmc-svn/xbmc-safe-fullscreen.patch
@@ -2,7 +2,7 @@ Index: xbmc/Application.cpp
===================================================================
--- xbmc/Application.cpp (revision 20059)
+++ xbmc/Application.cpp (working copy)
-@@ -873,6 +873,8 @@
+@@ -877,6 +877,8 @@
#endif
// set GUI res and force the clear of the screen
@@ -11,7 +11,7 @@ Index: xbmc/Application.cpp
g_graphicsContext.SetVideoResolution(g_guiSettings.m_LookAndFeelResolution, TRUE, true);
#ifdef _WIN32PC
-@@ -949,6 +951,9 @@
+@@ -953,6 +955,9 @@
time(&seconds);
srand((unsigned int)seconds);
@@ -21,3 +21,15 @@ Index: xbmc/Application.cpp
return CXBApplicationEx::Create(hWnd);
}
+Index: GUISettings.cpp
+===================================================================
+--- xbmc/GUISettings.cpp (revision 20824)
++++ xbmc/GUISettings.cpp (working copy)
+@@ -651,6 +651,7 @@
+ #else
+ AddInt(6, "videoscreen.vsync", 13105, DEFAULT_VSYNC, VSYNC_DISABLED, 1, VSYNC_DRIVER, SPIN_CONTROL_TEXT);
+ #endif
++ AddBool(7, "videoscreen.safefull", 13121, false);
+ AddCategory(7, "filelists", 14018);
+ AddBool(1, "filelists.hideparentdiritems", 13306, false);
+ AddBool(2, "filelists.hideextensions", 497, false);
diff --git a/abs/extra-testing/community/xbmc-svn/xbmc-svn.install b/abs/extra-testing/community/xbmc-svn/xbmc-svn.install
index 9316bc8..acf409c 100644
--- a/abs/extra-testing/community/xbmc-svn/xbmc-svn.install
+++ b/abs/extra-testing/community/xbmc-svn/xbmc-svn.install
@@ -3,6 +3,10 @@ post_install() {
echo ">> so that your display depth is at least 24-bit. Eg: change "
echo ">> \"DefaultDepth 16\" under the \"Screen\" section so it says 24 instead"
echo ">> of 16."
+ echo ">> If you have problems or suggestions for this PKGBUILD, have a look at its"
+ echo ">> dedicated forum thread: http://bbs.archlinux.org/viewtopic.php?pid=559107"
+ echo ">> or the wiki: http://xbmc.org/wiki/?title=XBMC_on_Arch_Linux_(Unofficial)"
+ echo
/bin/true
}