multimedia/xbmc: Updated for version 11.0.

Signed-off-by: Erik Hanson <erik@slackbuilds.org>
This commit is contained in:
Larry Hajali 2012-04-23 19:35:02 -05:00 committed by Erik Hanson
parent 4d968b01ea
commit c40f1a2611
6 changed files with 89 additions and 50 deletions

View file

@ -5,22 +5,25 @@ viewing and playing a vast library of audio, video and image formats.
XBMC has a sophisticated library management system that allows you to XBMC has a sophisticated library management system that allows you to
organize all your media to give you quick and immediate access. organize all your media to give you quick and immediate access.
XBMC requires libmpeg2, faad2, libmodplug, libmms and enca. XBMC requires libass, libmpeg2, libmodplug and yajl.
Optional: vobcopy, lirc, faac, cwiid, pybluez, libdvdcss, libssh, Optional: libcec, pulseaudio, libbluray, libnfs,
lightblue, libvdpau, libass, rtmpdump, libmicrohttpd, libva, avahi, libdvdcss, vobcopy, lirc, cwiid, pybluez, libssh, id3lib,
ffmpeg, libdca (aka libdts), a52dec (aka liba52) (all available at libvdpau, rtmpdump, libmicrohttpd, libva, avahi, ffmpeg
slackbuilds.org). (all available at slackbuilds.org).
Optional: pulseaudio, libcrystalhd and libbluray (not available at Optional: afpfs-ng is also an optional build time requirement but
slackbuilds.org) doesn't get picked up by xbmc due to lack of afpfs-ng header files.
Optional: libcrystalhd and shairpoint (not available at slackbuilds.org)
Below are some paramaters that can be passed to the slackbuild to turn Below are some paramaters that can be passed to the slackbuild to turn
on some optional components. on some optional components.
EXT_FFMPEG=yes|no (Default is no), requires ffmpeg EXT_FFMPEG=yes|no (Default is no), requires ffmpeg
EXT_A52DEC=yes|no (Default is no), requires a52dec
EXT_DTS=yes|no (Default is no), requires libdca
EXT_ALL=yes|no (Default is no), turns on all of the above options
USE_WII=yes|no (Default is no), requires cwiid and pybluez USE_WII=yes|no (Default is no), requires cwiid and pybluez
WEBSERVER=yes|no (Default is no), requires libmicrohttpd WEBSERVER=yes|no (Default is no), requires libmicrohttpd
Note: The use of external ffmpeg is discouraged by the XBMC developers.
A patch is provided so XBMC can be built against newer ffmpeg. However,
this patch is NOT fully tested.

View file

@ -1,12 +1,21 @@
diff -Naur xbmc-10.00.orig/xbmc/lib/libsquish/Makefile.in xbmc-10.00/xbmc/lib/libsquish/Makefile.in diff -Naur xbmc-11.0-Eden_beta1.orig/lib/libsquish/Makefile.in xbmc-11.0-Eden_beta1/lib/libsquish/Makefile.in
--- xbmc-10.00.orig/xbmc/lib/libsquish/Makefile.in 2010-05-18 07:29:17.000000000 +0000 --- xbmc-11.0-Eden_beta1.orig/lib/libsquish/Makefile.in 2011-12-23 03:12:21.000000000 +0000
+++ xbmc-10.00/xbmc/lib/libsquish/Makefile.in 2010-10-29 03:17:26.000000000 +0000 +++ xbmc-11.0-Eden_beta1/lib/libsquish/Makefile.in 2012-01-02 20:14:20.792407216 +0000
@@ -8,7 +8,7 @@ @@ -15,7 +15,7 @@
ifeq ($(ARCH),arm) ifeq ($(findstring powerpc,$(ARCH)),powerpc)
CXXFLAGS+=-I. CXXFLAGS+=-DSQUISH_USE_ALTIVEC=1 -maltivec
else ifeq ($(findstring x86,$(ARCH)), x86)
- CXXFLAGS+=-DSQUISH_USE_SSE=2 -msse2
+ CXXFLAGS+=-DSQUISH_USE_SSE=1 -msse
endif
LIB=libsquish.a
@@ -30,7 +30,7 @@
ifeq ($(findstring osx,$(ARCH)),osx)
g++ -m32 -DSQUISH_USE_SSE=2 -msse2 -I. $(SRCS) -dynamiclib -install_name `pwd`/libsquish-native.so -o $@
else else
-CXXFLAGS+=-I. -DSQUISH_USE_SSE=2 -msse2 - g++ -DSQUISH_USE_SSE=2 -msse2 -I. $(SRCS) -shared -fPIC -Wl,-soname,`pwd`/libsquish-native.so -o $@
+CXXFLAGS+=-I. -DSQUISH_USE_SSE=1 -msse + g++ -DSQUISH_USE_SSE=1 -msse -I. $(SRCS) -shared -fPIC -Wl,-soname,`pwd`/libsquish-native.so -o $@
endif endif
endif endif
LIB=libsquish-@ARCH@.a

View file

@ -0,0 +1,19 @@
diff -Naur xbmc-11.0-Eden_beta1.orig/Makefile.include.in xbmc-11.0-Eden_beta1/Makefile.include.in
--- xbmc-11.0-Eden_beta1.orig/Makefile.include.in 2011-12-23 03:12:21.000000000 +0000
+++ xbmc-11.0-Eden_beta1/Makefile.include.in 2012-01-02 22:07:34.114048145 +0000
@@ -32,7 +32,6 @@
CXXFLAGS+=@CXXFLAGS@
CFLAGS+=@CFLAGS@
LDFLAGS+=@LDFLAGS@
-INCLUDES+=$(sort @INCLUDES@)
INCLUDES+=-I@abs_top_srcdir@/lib
INCLUDES+=-I@abs_top_srcdir@/xbmc
ifneq (@USE_EXTERNAL_FFMPEG@,1)
@@ -40,6 +39,7 @@
endif
INCLUDES+=-I@abs_top_srcdir@/xbmc/linux
INCLUDES+=-I@abs_top_srcdir@/xbmc/cores/dvdplayer
+INCLUDES+=$(sort @INCLUDES@)
DEFINES+= \
@ARCH_DEFINES@ \
-D_FILE_DEFINED \

View file

@ -0,0 +1,13 @@
diff -Naur xbmc-11.0.orig/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamRTMP.cpp xbmc-11.0/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamRTMP.cpp
--- xbmc-11.0.orig/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamRTMP.cpp 2012-03-21 22:07:50.000000000 +0000
+++ xbmc-11.0/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamRTMP.cpp 2012-03-31 21:44:15.320639375 +0000
@@ -22,9 +22,7 @@
#if (defined HAVE_CONFIG_H) && (!defined WIN32)
#include "config.h"
#endif
-#ifdef _WIN32
#include "system.h" // just for HAS_LIBRTMP
-#endif
#ifdef HAS_LIBRTMP
#include "settings/AdvancedSettings.h"

View file

@ -2,7 +2,7 @@
# Slackware build script for XBMC # Slackware build script for XBMC
# Copyright 2009-2011 Larry Hajali <larryhaja[at]gmail[dot]com> # Copyright 2009-2012 Larry Hajali <larryhaja[at]gmail[dot]com>
# All rights reserved. # All rights reserved.
# #
# Redistribution and use of this script, with or without modification, is # Redistribution and use of this script, with or without modification, is
@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=xbmc PRGNAM=xbmc
VERSION=10.0 VERSION=11.0
BUILD=${BUILD:-1} BUILD=${BUILD:-1}
TAG=${TAG:-_SBo} TAG=${TAG:-_SBo}
@ -69,7 +69,7 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \; -exec chmod 644 {} \;
# Let's get rid of the lsb_release dependency. # Let's get rid of the lsb_release dependency. May not be needed for 11.0.
sed -i 's|lsb_release -d|cat /etc/slackware-version|' \ sed -i 's|lsb_release -d|cat /etc/slackware-version|' \
xbmc/utils/SystemInfo.cpp xbmc/utils/SystemInfo.cpp
@ -78,29 +78,24 @@ if ! grep 'sse2' /proc/cpuinfo 2>&1 > /dev/null; then
patch -p1 < $CWD/patches/non-sse2-cpu.patch patch -p1 < $CWD/patches/non-sse2-cpu.patch
fi fi
# Create configure scripts. # Patch for building against rtmpdump. Only needed if xbmc fails to build
[ ! -x bootstrap ] && chmod +x bootstrap # w/rtmpdump. See the following link for a rather obtuse explanation.
./bootstrap # http://slaxbmc.blogspot.com/2011/03/23-install-xbmc-from-source.html
patch -p1 < $CWD/patches/xbmc-rtmpdump-build.patch
# Here are some additional flags that can turned on in the script # Build external ffmpeg.
# so XBMC will use system libraries instead of shipped libraries. if [ "${EXT_FFMPEG:-no}" == "yes" ]; then
# --enable-external-ffmpeg * to use system ffmpeg OPT_DEPS="--enable-external-ffmpeg"
# --enable-external-liba52 * to use system liba52 library patch -p1 < $CWD/patches/system-includes.patch
# comes with a52dec else
# --enable-external-libdts * to use system DTS Coherent Acoustics decoder OPT_DEPS="--disable-external-ffmpeg"
# --enable-external-python * to use system python (On by default) fi
# --enable-external-libraries * to enable all optional system libraries
OPT_DEPS="--enable-external-python"
[ "${EXT_FFMPEG:-no}" == "yes" ] && OPT_DEPS="$OPT_DEPS --enable-external-ffmpeg"
[ "${EXT_A52DEC:-no}" == "yes" ] && OPT_DEPS="$OPT_DEPS --enable-external-liba52"
[ "${EXT_DTS:-no}" == "yes" ] && OPT_DEPS="$OPT_DEPS --enable-external-libdts"
[ "${EXT_ALL:-no}" == "yes" ] && OPT_DEPS="--enable-external-libraries"
# Build webserver. Requires libmicrohttpd. # Build webserver. Requires libmicrohttpd.
if [ "${WEBSERVER:-no}" == "yes" ]; then if [ "${WEBSERVER:-no}" == "yes" ]; then
OPT_SERVER="--enable-webserver" OPT_DEPS="$OPT_DEPS --enable-webserver"
else else
OPT_SERVER="--disable-webserver" OPT_DEPS="$OPT_DEPS --disable-webserver"
fi fi
CFLAGS="$SLKCFLAGS" \ CFLAGS="$SLKCFLAGS" \
@ -109,17 +104,17 @@ CXXFLAGS="$SLKCFLAGS" \
--prefix=/usr \ --prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \ --libdir=/usr/lib${LIBDIRSUFFIX} \
--docdir=/usr/doc/$PRGNAM-$VERSION \ --docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-ccache \ --enable-static=no \
--enable-neon \
--disable-debug \ --disable-debug \
--enable-gl \ --enable-gl \
--enable-dvdcss \
--enable-mid \ --enable-mid \
--enable-goom \ --enable-goom \
--enable-ffmpeg-libvorbis \ --enable-ffmpeg-libvorbis \
--disable-asap-codec \ --disable-asap-codec \
$OPT_SERVER \
$OPT_DEPS \ $OPT_DEPS \
--build=$ARCH-slackware-linux \ --enable-external-libraries \
--build=$ARCH-slackware-linux
make make
@ -128,7 +123,7 @@ if ! [ "${USE_WII:-no}" = "no" ]; then
make eventclients DESTDIR=$PKG WII_EXTRA_OPTS="-DCWIID_OLD" make eventclients DESTDIR=$PKG WII_EXTRA_OPTS="-DCWIID_OLD"
fi fi
make install install-livedatas DESTDIR=$PKG make install DESTDIR=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@ -138,12 +133,12 @@ mkdir -p $PKG/usr/man/man1
for i in diskmounter.1 runXBMC.1 xbmc.bin.1 xbmc.1 xbmc-standalone.1 xbmc-send.1 \ for i in diskmounter.1 runXBMC.1 xbmc.bin.1 xbmc.1 xbmc-standalone.1 xbmc-send.1 \
setAlsaVolumes.1 installXBMC.1 setAlsaVolumes.1 installXBMC.1
do do
install -D -m 0644 docs/manpages/$i $PKG/usr/man/man1/$i install -m 0644 docs/manpages/$i $PKG/usr/man/man1/$i
done done
if ! [ "${USE_WII:-no}" = "no" ]; then if ! [ "${USE_WII:-no}" = "no" ]; then
for i in xbmc-j2meremote.1 xbmc-ps3remote.1 xbmc-wiiremote.1; do for i in xbmc-j2meremote.1 xbmc-ps3remote.1 xbmc-wiiremote.1; do
install -D -m 0644 docs/manpages/$i $PKG/usr/man/man1/$i install -m 0644 docs/manpages/$i $PKG/usr/man/man1/$i
done done
fi fi
gzip -9 $PKG/usr/man/man?/*.? gzip -9 $PKG/usr/man/man?/*.?

View file

@ -1,8 +1,8 @@
PRGNAM="xbmc" PRGNAM="xbmc"
VERSION="10.0" VERSION="11.0"
HOMEPAGE="http://xbmc.org/" HOMEPAGE="http://xbmc.org/"
DOWNLOAD="http://mirrors.xbmc.org/releases/source/xbmc-10.0.tar.gz" DOWNLOAD="http://mirrors.xbmc.org/releases/source/xbmc-11.0.tar.gz"
MD5SUM="728fb514e5f43f27bb880305061b4e72" MD5SUM="9e8a26ee25173c7268abea7f1d82d428"
DOWNLOAD_x86_64="" DOWNLOAD_x86_64=""
MD5SUM_x86_64="" MD5SUM_x86_64=""
MAINTAINER="Larry Hajali" MAINTAINER="Larry Hajali"