summaryrefslogtreecommitdiffstats
path: root/abs/extra/xbmc-svn/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/xbmc-svn/PKGBUILD')
-rw-r--r--abs/extra/xbmc-svn/PKGBUILD147
1 files changed, 91 insertions, 56 deletions
diff --git a/abs/extra/xbmc-svn/PKGBUILD b/abs/extra/xbmc-svn/PKGBUILD
index d7debbe..fa2be23 100644
--- a/abs/extra/xbmc-svn/PKGBUILD
+++ b/abs/extra/xbmc-svn/PKGBUILD
@@ -1,49 +1,55 @@
-# Contributors : Ralf Barth <archlinux dot org at haggy dot org>
-# Richard Atkinson atkinsonr-at-gmail
+# Maintainer: DonVla <donvla@users.sourceforge.net>
+# Contributor: BlackEagle < ike DOT devolder AT herecura DOT be >
+# Contributor: Ulf Winkelvos <ulf [at] winkelvos [dot] de>
+# Contributor: Ralf Barth <archlinux dot org at haggy dot org>
+# Contributor: B - Thanks for your hints :)
#
# Original credits go to Edgar Hucek <gimli at dark-green dot com>
# for his xbmc-vdpau-vdr PKGBUILD at https://archvdr.svn.sourceforge.net/svnroot/archvdr/trunk/archvdr/xbmc-vdpau-vdr/PKGBUILD
pkgname=xbmc-svn
-pkgver=25089
+pkgver=35648
pkgrel=1
pkgdesc="XBMC Media Center from SVN"
provides=('xbmc')
-conflicts=('xbmc')
+conflicts=('xbmc' 'xbmc-pulse')
arch=('i686' 'x86_64')
-url="http://xbmc.org"
+url="http://xbmc.svn.sourceforge.net/viewvc/xbmc/trunk"
license=('GPL' 'LGPL')
-depends=('alsa-lib' 'curl' 'enca' 'faac' 'freetype2' 'fribidi' 'gawk' 'glew'
- 'hal' 'jasper' 'libgl' 'libmad' 'libmysqlclient' 'libjpeg'
- 'libxinerama' 'libxrandr' 'lzo2' 'sdl_image' 'sdl_mixer' 'sqlite3'
- 'tre' 'unzip' 'libcdio' 'libsamplerate' 'python' 'avahi' 'libmad'
- 'a52dec' 'libdca' 'faad2' 'libmpeg2' 'libvorbis' 'libogg' 'libmms'
- 'libmpcdec' 'flac' 'wavpack' 'xorg-utils' 'smbclient' 'libvdpau')
-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'
- 'pmount: mount removable devices as normal user'
+depends=('bzip2' 'faac' 'faad2' 'fribidi' 'glew' 'jasper' 'libass' 'libcdio' 'libgl' 'libmad'
+ 'libmicrohttpd-xbmc' 'libmms' 'libmodplug' 'libmpeg2' 'libmysqlclient' 'libsamplerate' 'libxrandr'
+ 'libxinerama' 'libxtst' 'lzo2' 'sdl_image>=1.2.10' 'sdl_mixer' 'smbclient' 'unzip' 'wavpack' 'mesa-demos')
+makedepends=('cvs' 'boost' 'cmake' 'gperf' 'nasm' 'python2' 'subversion' 'zip')
+optdepends=('avahi: to use zerconf features (remote, etc...)'
+ 'gdb: for meaningful backtraces in case of trouble - STRONGLY RECOMMENDED'
+ 'libssh: support for sshfs'
+ 'libvdpau: accelerated video playback for nvidia cards'
+ 'libva: accelerated video playback for nvidia, ati/amd and some intel cards'
+ 'lirc: remote controller support'
+ 'pulseaudio: pulseaudio support'
+ 'udisks: automount external drives'
+ 'upower: used to trigger suspend functionality'
'unrar: access compressed files without unpacking them')
-install=("${pkgname}.install")
-source=(Lircmap.xml)
-noextract=()
-md5sums=()
-options=(makeflags)
+options=('makeflags')
+install="${pkgname}.install"
+source=("FEH.sh")
+md5sums=('c3e2ab79b9965f1a4a048275d5f222c4')
+sha256sums=('1b391dfbaa07f81e5a5a7dfd1288bf2bdeab8dc50bbb6dbf39a80d8797dfaeb0')
_svnmod=XBMC
_prefix=/usr
build() {
-
_svntrunk=http://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk
+ #_svntrunk=http://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/Dharma
- cd ${srcdir}/
- if [ -d $_svnmod/.svn ]; then
+ cd "${srcdir}/"
+ if [ -d "$_svnmod/.svn" ]; then
msg "SVN tree found, reverting changes and updating to -r$pkgver"
- (cd $_svnmod && svn revert -R . && svn up -r $pkgver) || return 1
+ (cd "$_svnmod" && svn revert -R . && (make distclean || :); svn up -r "$pkgver")
else
msg "Checking out SVN tree of -r$pkgver"
- svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod || return 1
+ svn co "$_svntrunk" --config-dir ./ -r "$pkgver" "$_svnmod"
fi
# Configure XBMC
@@ -51,47 +57,76 @@ build() {
# 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 Arch's libass because it's incompatible with XBMC's
- # subtitle rendering
- # - We cannot use external ffmpeg because we would loose VDPAU functionality
- cd "$srcdir/$_svnmod"
- msg "Configuring XBMC"
+ cd "${srcdir}/${_svnmod}"
+
+ # Archlinux Branding by SVN_REV
+ export SVN_REV="${pkgver}-ARCH"
+ # fix lsb_release dependency
+ sed -i -e 's:/usr/bin/lsb_release -d:cat /etc/arch-release:' xbmc/utils/SystemInfo.cpp
+
+ # remove "--as-needed" from LDFLAGS
+ unset LDFLAGS; LDFLAGS="-Wl,--hash-style=gnu"
+
+ msg "Bootstrapping XBMC"
./bootstrap
- ./configure --prefix=${_prefix} \
- --enable-external-liba52 \
- --enable-external-libdts \
- --enable-external-libmpeg2 \
- --enable-external-libogg \
- --enable-external-libwavpack \
- --disable-external-libass \
+
+ msg "Configuring XBMC"
+ ./configure --prefix="${_prefix}" --disable-hal \
+ --enable-external-libraries \
--disable-external-ffmpeg \
--disable-external-python \
- --disable-debug || return 1
-
+ --enable-webserver \
+ --enable-debug \
+# --disable-rtmp
+
# Now (finally) build
msg "Running make"
- make || return 1
+ make ${MAKEFLAGS}
+ make -C lib/addons/script.module.pil
+ make -C lib/addons/script.module.pysqlite
+}
+
+package() {
- cd "$srcdir/$_svnmod"
+ cd "${srcdir}/${_svnmod}"
msg "Running make install"
- make prefix=${pkgdir}${_prefix} install || return 1
+ make prefix="${pkgdir}${_prefix}" install
+
+# Replace FEH.py with FEH.sh (and thus remove external python dependency)
+ install -D -m 0755 "${srcdir}/FEH.sh" "${pkgdir}${_prefix}/share/xbmc/FEH.sh"
+ sed -i -e 's/^python \(.*\)FEH.py \(.*\)$/\1FEH.sh \2/' "${pkgdir}${_prefix}/bin/xbmc"
+
+# lsb_release fix
+ sed -i -e 's/which lsb_release &> \/dev\/null/\[ -f \/etc\/arch-release ]/g' "${pkgdir}${_prefix}/bin/xbmc"
+ sed -i -e "s/lsb_release -a 2> \/dev\/null | sed -e 's\/\^\/ \/'/cat \/etc\/arch-release/g" "${pkgdir}${_prefix}/bin/xbmc"
+
+# .desktop files
+ install -D -m 0644 "${srcdir}/${_svnmod}/tools/Linux/xbmc.desktop" "${pkgdir}${_prefix}/share/applications/xbmc.desktop"
+ install -D -m 0644 "${srcdir}/${_svnmod}/tools/Linux/xbmc-48x48.png" "${pkgdir}${_prefix}/share/pixmaps/xbmc.png"
- # Install
- install -Dm755 ${srcdir}/$_svnmod/xbmc-xrandr \
- ${pkgdir}${_prefix}/share/xbmc/xbmc-xrandr || return 1
+# Tools
+ install -D -m 0755 "${srcdir}/${_svnmod}/xbmc-xrandr" "${pkgdir}${_prefix}/share/xbmc/xbmc-xrandr"
+ install -D -m 0755 "${srcdir}/${_svnmod}/tools/TexturePacker/TexturePacker" "${pkgdir}${_prefix}/share/xbmc/"
- install -Dm644 ${srcdir}/$_svnmod/tools/Linux/xbmc.desktop \
- ${pkgdir}${_prefix}/share/applications/xbmc.desktop || return 1
+# Licenses
+ install -d -m 0755 "${pkgdir}${_prefix}/share/licenses/${pkgname}"
+ for licensef in LICENSE.GPL copying.txt; do
+ mv "${pkgdir}${_prefix}/share/doc/xbmc/${licensef}" "${pkgdir}${_prefix}/share/licenses/${pkgname}"
+ done
- install -Dm644 ${srcdir}/$_svnmod/tools/Linux/xbmc.png \
- ${pkgdir}${_prefix}/share/pixmaps/xbmc.png || return 1
+# Docs
+ install -d -m 0755 "${pkgdir}${_prefix}/share/doc/${pkgname}"
+ for docsf in keymapping.txt README.linux; do
+ mv "${pkgdir}${_prefix}/share/doc/xbmc/${docsf}" "${pkgdir}${_prefix}/share/doc/${pkgname}"
+ done
- install -dm755 ${pkgdir}${_prefix}/share/licenses/${pkgname}
- for licensef in LICENSE.GPL README.linux copying.txt; do
- mv ${pkgdir}${_prefix}/share/xbmc/${licensef} \
- ${pkgdir}${_prefix}/share/licenses/${pkgname} || return 1
- done
+# cleanup some stuff
+ msg "Cleanup unneeded files"
+ rm -rf "${pkgdir}/usr/share/xsessions"
+ rm -f "${pkgdir}/usr/share/xbmc/FEH.py"
+ rm -f "${pkgdir}/usr/share/icons/hicolor/icon-theme.cache"
- # Use custom Lircmap to support StreamZap remote
- cp ${srcdir}/Lircmap.xml ${pkgdir}${_prefix}/share/xbmc/system/Lircmap.xml
+# strip
+ msg "Stripping binaries"
+ find "$pkgdir" -type f -exec strip {} \; >/dev/null 2>/dev/null
}