# Contributor: [vEX] <niechift.dot.vex.at.gmail.dot.com> # Contributor: Zeqadious <zeqadious.at.gmail.dot.com> pkgname=xbmc pkgver=8.10 pkgrel=10 pkgdesc="XBMC Media Center" arch=('i686' 'x86_64') url="http://xbmc.org" license=('GPL' 'custom') 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' 'x-server') makedepends=('autoconf' 'automake' 'boost' 'cmake' 'gcc' 'gperf' 'libtool>=2.2.6a-1' 'make' 'nasm' 'patch' 'pkgconfig' 'zip') optdepends=('libcdio: optical disc support' 'lirc: remote controller support' 'pmount: mount removable devices as normal user' 'smbclient: access windows shares' 'unrar: access compressed files without unpacking them') install=("${pkgname}.install") source=("http://downloads.sourceforge.net/${pkgname}/XBMC-${pkgver}.src.tar.gz") md5sums=('2d20d255a211223eaa47f1c6bcf4be8e') build() { cd "${srcdir}/XBMC" # Remove Mac OS X specific files rm -rf system/python/lib-osx/ rm system/players/dvdplayer/*-osx* # Fix permissions for the configure scripts find -type f -name "configure"|xargs chmod a+x || return 1 # Fix other permissions find -type f -name "*.pl"|xargs chmod a+x || return 1 # Make it gcc 4.3.x compatible sed '92i#include <stdlib.h>' -i guilib/system.h || return 1 # Clean up the configure files and make sure they support C++. for file in `find . -type f -name configure.in -or -name configure.ac`; do echo 'AC_PROG_CXX' >> "${file}" sed -e '/AM_PATH_XMMS/ c\echo' \ -e '/AM_PATH_SDL2/ c\echo' \ -i ${file} || return 1 done sed -e 's/test_libFLAC++//g' \ -i "${srcdir}/XBMC/xbmc/cores/paplayer/flac-1.2.1/src/Makefile.am" || return 1 # Fix some autoconf issues touch ${srcdir}/XBMC/xbmc/cores/dvdplayer/Codecs/libmad/{NEWS,AUTHORS,ChangeLog} || return 1 touch ${srcdir}/XBMC/xbmc/visualizations/Goom/goom2k4-0/ylwrap || return 1 touch ${srcdir}/XBMC/xbmc/lib/libid3tag/libid3tag/{NEWS,README,AUTHORS,ChangeLog} || return 1 for dir in \ . \ xbmc/cores/dvdplayer/Codecs/libDVDCSS \ xbmc/cores/dvdplayer/Codecs/libdts \ xbmc/cores/dvdplayer/Codecs/libdvdnav \ xbmc/cores/dvdplayer/Codecs/libfaad2 \ xbmc/cores/dvdplayer/Codecs/libmad \ xbmc/cores/dvdplayer/Codecs/libmpeg2 \ xbmc/cores/paplayer/flac-1.2.1 \ xbmc/cores/paplayer/vorbisfile/libvorbis \ xbmc/cores/paplayer/vorbisfile/ogg \ xbmc/visualizations/Goom/goom2k4-0 \ xbmc/lib/libass \ xbmc/lib/libid3tag/libid3tag do autoreconf --install "${srcdir}/XBMC/${dir}" || return 1 done cd "${srcdir}/XBMC/" # Configure XBMC ./configure --prefix=/usr \ --disable-debug || return 1 # Fix false negative detections of realloc that happens some times 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 */|' \ -i config.h || return 1 fi # XBMCTex will segfault on systems with nvidia instaleld if linked to OpenGL sed -e 's/-lGLU -lGLEW -lGL//' \ -i ${srcdir}/XBMC/tools/XBMCTex/Makefile # Now (finally) build make || return 1 make prefix=${pkgdir}/usr install || return 1 # Fix the shell script sed -i '4iexport SDL_AUDIODRIVER=alsa' ${pkgdir}/usr/bin/xbmc # Xrandr install -Dm755 ${srcdir}/XBMC/xbmc-xrandr \ ${pkgdir}/usr/share/xbmc/xbmc-xrandr || return 1 # Menu item install -Dm644 ${srcdir}/XBMC/tools/Linux/xbmc.desktop \ ${pkgdir}/usr/share/applications/xbmc.desktop || return 1 install -Dm644 ${srcdir}/XBMC/tools/Linux/xbmc.png \ ${pkgdir}/usr/share/pixmaps/xbmc.png || return 1 # XBMCTex install -Dm755 ${srcdir}/XBMC/tools/XBMCTex/XBMCTex \ ${pkgdir}/usr/share/xbmc/tools/xbmctex || return 1 # License(s) install -dm755 ${pkgdir}/usr/share/licenses/${pkgname} for licensef in LICENSE.GPL README.linux copying.txt; do mv ${pkgdir}/usr/share/xbmc/${licensef} \ ${pkgdir}/usr/share/licenses/${pkgname} || return 1 done }