PKGBUILDs/community/xbmc/PKGBUILD
2014-12-08 03:14:06 +00:00

147 lines
5.2 KiB
Bash

# $Id: PKGBUILD 71695 2012-06-01 13:05:36Z dreisner $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Brad Fanella <bradfanella@archlinux.us>
# Contributor: [vEX] <niechift.dot.vex.at.gmail.dot.com>
# Contributor: Zeqadious <zeqadious.at.gmail.dot.com>
# Contributor: BlackIkeEagle < ike DOT devolder AT gmail DOT com >
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - --disable-vdpau/xvda, remove from makedepends
# - --disable-vaapi, --disable-openmax
# - --enable-gl -> --enable-gles
# - specify our C/CXXFLAGS in configure
buildarch=4
_prefix=/usr
pkgname=xbmc
pkgver=13.2
_codename=Gotham
pkgrel=6
pkgdesc="A software media player and entertainment hub for digital media"
arch=('i686' 'x86_64')
url="http://xbmc.org"
license=('GPL2')
depends=(
'avahi' 'ffmpeg' 'hicolor-icon-theme' 'lame' 'libass' 'libbluray' 'libcdio' 'libmad'
'libmicrohttpd' 'libmodplug' 'libmpeg2' 'libmysqlclient' 'libpulse'
'libsamplerate' 'libssh' 'libva' 'libvdpau' 'libvorbis' 'libxrandr' 'libxslt'
'lzo' 'mesa' 'mesa-demos' 'python2' 'python2-pillow' 'rtmpdump' 'sdl_image'
'smbclient' 'taglib' 'tinyxml' 'unzip' 'xorg-xdpyinfo' 'yajl'
)
makedepends=(
'afpfs-ng' 'libnfs' 'libplist' 'shairplay' 'libcec' 'boost' 'cmake' 'doxygen'
'gperf' 'jasper' 'java-runtime-headless' 'nasm' 'swig' 'taglib' 'udisks'
'upower' 'zip'
)
optdepends=(
'afpfs-ng: Apple File Protocol suport'
'libnfs: NFS Share support'
'libplist: AirPlay support'
'shairplay: AirPlay support'
'libcec: Pulse-Eight USB-CEC adapter support'
'pulseaudio: for pulseaudio support'
'lirc: remote controller support'
'unrar: access compressed files without unpacking them'
'xorg-xinit: autostart xbmc'
'udisks: automount external drives'
'upower: display battery level'
)
install="${pkgname}.install"
source=("xbmc-$pkgver-$_codename.tar.gz::https://github.com/xbmc/xbmc/archive/$pkgver-$_codename.tar.gz"
'enable-external-ffmpeg.patch'
'0001-CEC-fixed-don-t-try-to-stick-a-value-255-in-a-byte.patch'
'0002-CEC-bump-libCEC-to-2.2.0.patch'
'0003-CEC-prevent-bus-rescan-on-a-Pi-since-the-adapter-can.patch'
'0004-CEC-fixed-don-t-return-garbage-from-CEC-related-app-.patch'
'0005-CEC-renamed-the-iDoubleTapTimeoutMs-in-the-new-libCE.patch'
'0006-CEC-fixed-don-t-use-CEC_CLIENT_VERSION_CURRENT-for-t.patch')
sha256sums=('acbf5dffa3034a3406240ee3cf81e721386cd383d23d056ddde1f769e050e585'
'0239e33e87292c7340ed2092f2b5f1e82f5e283b1f763fb125b3aee78f50c355'
'f4b436a64e32af6728fc9a584292b56de356d9090f0db0af30798a43aaa077f3'
'9d9ccbd140a71b90d43a22b7722804b9cb509b4e1e1fec02c0e2bceaed3b3958'
'0f0401189cc8481f05d7b68c50d66e18144c7d261be783e32c5b269f4b356ad7'
'33d6bd2b0da3d8563bfdf6059ad59ca10d9fe617e51990220ceb40d6fb3129d3'
'd98f86ceefb039b43a66332658aeee4aff25370248955ece10d04ae21f33d2a9'
'd829a5267f0b8042308b291366915253b3104d85a780a03cdaff6bec82493b95')
prepare() {
cd "$srcdir/xbmc-$pkgver-$_codename"
patch -p1 -i "$srcdir/enable-external-ffmpeg.patch"
patch -Np1 -i "$srcdir/0001-CEC-fixed-don-t-try-to-stick-a-value-255-in-a-byte.patch"
patch -Np1 -i "$srcdir/0002-CEC-bump-libCEC-to-2.2.0.patch"
patch -Np1 -i "$srcdir/0003-CEC-prevent-bus-rescan-on-a-Pi-since-the-adapter-can.patch"
patch -Np1 -i "$srcdir/0004-CEC-fixed-don-t-return-garbage-from-CEC-related-app-.patch"
patch -Np1 -i "$srcdir/0005-CEC-renamed-the-iDoubleTapTimeoutMs-in-the-new-libCE.patch"
patch -Np1 -i "$srcdir/0006-CEC-fixed-don-t-use-CEC_CLIENT_VERSION_CURRENT-for-t.patch"
find -type f -name *.py -exec sed 's|^#!.*python$|#!/usr/bin/python2|' -i "{}" +
sed 's|^#!.*python$|#!/usr/bin/python2|' -i tools/depends/native/rpl-native/rpl
sed 's/python/python2/' -i tools/Linux/xbmc.sh.in
}
build() {
cd "$srcdir/xbmc-$pkgver-$_codename"
# Bootstrapping XBMC
./bootstrap
# Configuring XBMC
export PYTHON_VERSION=2 # external python v2
./configure --prefix=$_prefix --exec-prefix=$_prefix \
--disable-debug \
--enable-optimizations \
--enable-gles \
--enable-sdl \
--disable-vaapi \
--disable-vdpau \
--disable-xvba \
--enable-joystick \
--enable-xrandr \
--enable-rsxs \
--enable-projectm \
--enable-x11 \
--enable-pulse \
--enable-rtmp \
--enable-samba \
--enable-nfs \
--enable-afpclient \
--enable-airplay \
--enable-airtunes \
--enable-ffmpeg-libvorbis \
--enable-dvdcss \
--disable-hal \
--enable-avahi \
--enable-webserver \
--enable-optical-drive \
--enable-libbluray \
--enable-texturepacker \
--enable-udev \
--enable-libusb \
--enable-libcec \
--with-lirc-device=/run/lirc/lircd \
--disable-openmax \
CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}"
# Now (finally) build
make
}
package() {
cd "$srcdir/xbmc-$pkgver-$_codename"
# Running make install
make DESTDIR="$pkgdir" install
# Tools
# Stupid TexturePacker does not exist.
#install -D -m 0755 "${srcdir}/xbmc-$pkgver-$_codename/tools/TexturePacker/TexturePacker" "${pkgdir}${_prefix}/share/xbmc/"
# Licenses
install -dm755 "${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
}