summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--multimedia/xbmc/README29
-rw-r--r--multimedia/xbmc/doinst.sh5
-rw-r--r--multimedia/xbmc/patches/fix-wrapper_c.patch11
-rw-r--r--multimedia/xbmc/patches/jpegint_h.patch17
-rw-r--r--multimedia/xbmc/patches/non-sse2-cpu.patch12
-rw-r--r--multimedia/xbmc/patches/xbmc-9.11-libpng14.patch89
-rw-r--r--multimedia/xbmc/patches/xbmc-9.11-use-cdio-system-headers-on-non-win32.patch129
-rw-r--r--multimedia/xbmc/patches/xbmc-9.11-wavpack.patch44
-rw-r--r--multimedia/xbmc/patches/xbmc-lib64.patch38
-rw-r--r--multimedia/xbmc/xbmc.SlackBuild110
-rw-r--r--multimedia/xbmc/xbmc.info8
11 files changed, 80 insertions, 412 deletions
diff --git a/multimedia/xbmc/README b/multimedia/xbmc/README
index cfa3ed8e08..9baade23c7 100644
--- a/multimedia/xbmc/README
+++ b/multimedia/xbmc/README
@@ -5,21 +5,22 @@ viewing and playing a vast library of audio, video and image formats.
XBMC has a sophisticated library management system that allows you to
organize all your media to give you quick and immediate access.
-XBMC requires faad2, libmms and enca.
+XBMC requires libmpeg2, faad2, libmodplug, libmms and enca.
-Optional: vobcopy, lirc, faac, SDL_gfx, cwiid, pybluez,
-lightblue, libvdpau and avahi. Starting with version 9.11 XBMC can
-be built with additional system libraries which are ffmpeg, libmpeg2,
-libdca (aka libdts), a52dec (aka liba52) libass and python (all available
-at slackbuilds.org or included in Slackware). Look inside the slackbuild
-for additional information to turn these options on.
+Optional: vobcopy, lirc, faac, cwiid, pybluez, libdvdcss, libssh,
+lightblue, libvdpau, libass, rtmpdump, libmicrohttpd, libva, avahi,
+ffmpeg, libdca (aka libdts), a52dec (aka liba52) (all available at
+slackbuilds.org).
-Optional: pulseaudio (not available at slackbuilds.org)
+Optional: pulseaudio, libcrystalhd and libbluray (not available at
+slackbuilds.org)
-In order to use a Wii remote with XBMC pass USE_WII=yes to the
-slackbuild. This now makes cwiid a build requirement and also requires
-pybluez or lightblue for bluetooth support.
+Below are some paramaters that can be passed to the slackbuild to turn
+on some optional components.
-Some plugins to use are available at:
-http://code.google.com/p/xbmc-addons/
-http://www.xbmcscripts.com/
+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
+WEBSERVER=yes|no (Default is no), requires libmicrohttpd
diff --git a/multimedia/xbmc/doinst.sh b/multimedia/xbmc/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/multimedia/xbmc/doinst.sh
+++ b/multimedia/xbmc/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/multimedia/xbmc/patches/fix-wrapper_c.patch b/multimedia/xbmc/patches/fix-wrapper_c.patch
deleted file mode 100644
index cb019b98da..0000000000
--- a/multimedia/xbmc/patches/fix-wrapper_c.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-Index: /trunk/xbmc/cores/DllLoader/exports/wrapper.c
-===================================================================
---- xbmc/cores/DllLoader/exports/wrapper.c (revision 23049)
-+++ xbmc/cores/DllLoader/exports/wrapper.c (revision 25862)
-@@ -77,5 +77,5 @@
- int dll_fseek64(FILE *stream, off64_t offset, int origin);
- long dll_ftell(FILE *stream);
--off64_t ftell64(FILE *stream);
-+off64_t dll_ftell64(FILE *stream);
- void dll_rewind(FILE* stream);
- int dll_fgetpos(FILE* stream, fpos_t* pos);
diff --git a/multimedia/xbmc/patches/jpegint_h.patch b/multimedia/xbmc/patches/jpegint_h.patch
deleted file mode 100644
index 61e8d78c03..0000000000
--- a/multimedia/xbmc/patches/jpegint_h.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff -Naur XBMC.orig/xbmc/lib/cximage-6.0/tiff/tif_ojpeg.c XBMC/xbmc/lib/cximage-6.0/tiff/tif_ojpeg.c
---- XBMC.orig/xbmc/lib/cximage-6.0/tiff/tif_ojpeg.c 2009-05-26 22:38:28.000000000 +0000
-+++ XBMC/xbmc/lib/cximage-6.0/tiff/tif_ojpeg.c 2009-09-08 00:55:37.000000000 +0000
-@@ -31,11 +31,9 @@
- #endif
- #define JPEG_INTERNALS /* Include "jpegint.h" for "DSTATE_*" symbols */
- #undef INLINE
--#ifdef _LINUX
--#include <jpeglib.h>
--#else
-+#ifdef _LINUX
- #include "../jpeg/jpeglib.h"
--#endif
-+#endif
- #undef JPEG_INTERNALS
-
- /* Hack for Microsoft's Wang Imaging for Windows output files */
diff --git a/multimedia/xbmc/patches/non-sse2-cpu.patch b/multimedia/xbmc/patches/non-sse2-cpu.patch
new file mode 100644
index 0000000000..0af727f2f7
--- /dev/null
+++ b/multimedia/xbmc/patches/non-sse2-cpu.patch
@@ -0,0 +1,12 @@
+diff -Naur xbmc-10.00.orig/xbmc/lib/libsquish/Makefile.in xbmc-10.00/xbmc/lib/libsquish/Makefile.in
+--- xbmc-10.00.orig/xbmc/lib/libsquish/Makefile.in 2010-05-18 07:29:17.000000000 +0000
++++ xbmc-10.00/xbmc/lib/libsquish/Makefile.in 2010-10-29 03:17:26.000000000 +0000
+@@ -8,7 +8,7 @@
+ ifeq ($(ARCH),arm)
+ CXXFLAGS+=-I.
+ else
+-CXXFLAGS+=-I. -DSQUISH_USE_SSE=2 -msse2
++CXXFLAGS+=-I. -DSQUISH_USE_SSE=1 -msse
+ endif
+ endif
+ LIB=libsquish-@ARCH@.a
diff --git a/multimedia/xbmc/patches/xbmc-9.11-libpng14.patch b/multimedia/xbmc/patches/xbmc-9.11-libpng14.patch
deleted file mode 100644
index d3b236329a..0000000000
--- a/multimedia/xbmc/patches/xbmc-9.11-libpng14.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-diff -Nur xbmc-9.11.orig/xbmc/lib/cximage-6.0/CxImage/ximapng.cpp xbmc-9.11/xbmc/lib/cximage-6.0/CxImage/ximapng.cpp
---- xbmc-9.11.orig/xbmc/lib/cximage-6.0/CxImage/ximapng.cpp 2008-07-18 23:40:53.000000000 +0300
-+++ xbmc-9.11/xbmc/lib/cximage-6.0/CxImage/ximapng.cpp 2010-01-20 21:55:11.000000000 +0200
-@@ -142,9 +142,9 @@
- if (info_ptr->num_trans!=0){ //palette transparency
- if (info_ptr->num_trans==1){
- if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE){
-- info.nBkgndIndex = info_ptr->trans_values.index;
-+ info.nBkgndIndex = info_ptr->trans_color.index;
- } else{
-- info.nBkgndIndex = info_ptr->trans_values.gray>>nshift;
-+ info.nBkgndIndex = info_ptr->trans_color.gray>>nshift;
- }
- }
- if (info_ptr->num_trans>1){
-@@ -152,7 +152,7 @@
- if (pal){
- DWORD ip;
- for (ip=0;ip<min(head.biClrUsed,(unsigned long)info_ptr->num_trans);ip++)
-- pal[ip].rgbReserved=info_ptr->trans[ip];
-+ pal[ip].rgbReserved=info_ptr->trans_alpha[ip];
- for (ip=info_ptr->num_trans;ip<head.biClrUsed;ip++){
- pal[ip].rgbReserved=255;
- }
-@@ -166,9 +166,9 @@
- int num_trans;
- png_color_16 *image_background;
- if (png_get_tRNS(png_ptr, info_ptr, &trans, &num_trans, &image_background)){
-- info.nBkgndColor.rgbRed = (BYTE)(info_ptr->trans_values.red>>nshift);
-- info.nBkgndColor.rgbGreen = (BYTE)(info_ptr->trans_values.green>>nshift);
-- info.nBkgndColor.rgbBlue = (BYTE)(info_ptr->trans_values.blue>>nshift);
-+ info.nBkgndColor.rgbRed = (BYTE)(info_ptr->trans_color.red>>nshift);
-+ info.nBkgndColor.rgbGreen = (BYTE)(info_ptr->trans_color.green>>nshift);
-+ info.nBkgndColor.rgbBlue = (BYTE)(info_ptr->trans_color.blue>>nshift);
- info.nBkgndColor.rgbReserved = 0;
- info.nBkgndIndex = 0;
- }
-@@ -417,12 +417,12 @@
- if (info.nBkgndIndex >= 0){
- info_ptr->num_trans = 1;
- info_ptr->valid |= PNG_INFO_tRNS;
-- info_ptr->trans = trans;
-- info_ptr->trans_values.index = (BYTE)info.nBkgndIndex;
-- info_ptr->trans_values.red = tc.rgbRed;
-- info_ptr->trans_values.green = tc.rgbGreen;
-- info_ptr->trans_values.blue = tc.rgbBlue;
-- info_ptr->trans_values.gray = info_ptr->trans_values.index;
-+ info_ptr->trans_alpha = trans;
-+ info_ptr->trans_color.index = (BYTE)info.nBkgndIndex;
-+ info_ptr->trans_color.red = tc.rgbRed;
-+ info_ptr->trans_color.green = tc.rgbGreen;
-+ info_ptr->trans_color.blue = tc.rgbBlue;
-+ info_ptr->trans_color.gray = info_ptr->trans_color.index;
-
- // the transparency indexes start from 0 for non grayscale palette
- if (!bGrayScale && head.biClrUsed && info.nBkgndIndex)
-@@ -443,7 +443,7 @@
- trans[ip]=GetPaletteColor((BYTE)ip).rgbReserved;
- info_ptr->num_trans = (WORD)nc;
- info_ptr->valid |= PNG_INFO_tRNS;
-- info_ptr->trans = trans;
-+ info_ptr->trans_alpha = trans;
- }
-
- // copy the palette colors
-diff -Nur xbmc-9.11.orig/xbmc/screensavers/rsxs-0.9/src/pngimage.cc xbmc-9.11/xbmc/screensavers/rsxs-0.9/src/pngimage.cc
---- xbmc-9.11.orig/xbmc/screensavers/rsxs-0.9/src/pngimage.cc 2008-07-30 23:35:38.000000000 +0300
-+++ xbmc-9.11/xbmc/screensavers/rsxs-0.9/src/pngimage.cc 2010-01-20 22:21:01.000000000 +0200
-@@ -65,7 +65,7 @@
- (png_get_color_type(png, pngInfo) == PNG_COLOR_TYPE_GRAY) &&
- png_get_bit_depth(png, pngInfo) < 8
- )
-- png_set_gray_1_2_4_to_8(png);
-+ png_set_expand_gray_1_2_4_to_8(png);
- if (png_get_valid(png, pngInfo, PNG_INFO_tRNS))
- png_set_tRNS_to_alpha(png);
- if (fullColor)
-diff -Nur xbmc-9.11.orig/xbmc/visualizations/Goom/goom2k4-0/src/pngload.c xbmc-9.11/xbmc/visualizations/Goom/goom2k4-0/src/pngload.c
---- xbmc-9.11.orig/xbmc/visualizations/Goom/goom2k4-0/src/pngload.c 2008-08-04 05:05:51.000000000 +0300
-+++ xbmc-9.11/xbmc/visualizations/Goom/goom2k4-0/src/pngload.c 2010-01-20 22:16:23.000000000 +0200
-@@ -94,7 +94,7 @@
- png_set_palette_to_rgb (png_ptr);
-
- if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8)
-- png_set_gray_1_2_4_to_8 (png_ptr);
-+ png_set_expand_gray_1_2_4_to_8 (png_ptr);
- else if (color_type == PNG_COLOR_TYPE_GRAY ||
- color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
- png_set_gray_to_rgb (png_ptr);
diff --git a/multimedia/xbmc/patches/xbmc-9.11-use-cdio-system-headers-on-non-win32.patch b/multimedia/xbmc/patches/xbmc-9.11-use-cdio-system-headers-on-non-win32.patch
deleted file mode 100644
index 2f29b37f5c..0000000000
--- a/multimedia/xbmc/patches/xbmc-9.11-use-cdio-system-headers-on-non-win32.patch
+++ /dev/null
@@ -1,129 +0,0 @@
-diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
-index 9097519..9b6418d 100644
---- a/xbmc/Application.cpp
-+++ b/xbmc/Application.cpp
-@@ -236,7 +236,11 @@
- #endif
-
- #ifdef HAS_DVD_DRIVE
-+#ifdef _WIN32
- #include "lib/libcdio/logging.h"
-+#else
-+#include <cdio/logging.h>
-+#endif
- #endif
-
- #ifdef HAS_HAL
-diff --git a/xbmc/FileSystem/Makefile b/xbmc/FileSystem/Makefile
-index 782d57a..1e524ed 100644
---- a/xbmc/FileSystem/Makefile
-+++ b/xbmc/FileSystem/Makefile
-@@ -1,5 +1,4 @@
- INCLUDES=-I. -I../ -I../cores -I../linux -I../../guilib -I../lib/UnrarXLib -I../utils -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib64/dbus-1.0/include -I/usr/lib64/glib-2.0/include
--INCLUDES+=-I../lib/libcdio/libcdio/include
-
- CXXFLAGS+=-D__STDC_FORMAT_MACROS \
-
-diff --git a/xbmc/FileSystem/cdioSupport.cpp b/xbmc/FileSystem/cdioSupport.cpp
-index 00e5fdd..21a0b67 100644
---- a/xbmc/FileSystem/cdioSupport.cpp
-+++ b/xbmc/FileSystem/cdioSupport.cpp
-@@ -26,7 +26,7 @@
- #include "cdioSupport.h"
- #include "utils/SingleLock.h"
- #include "utils/log.h"
--#ifndef _LINUX
-+#ifdef _WIN32
- #include "lib/libcdio/logging.h"
- #include "lib/libcdio/util.h"
- #include "lib/libcdio/mmc.h"
-diff --git a/xbmc/FileSystem/iso9660.cpp b/xbmc/FileSystem/iso9660.cpp
-index 6e1633f..58fbc50 100644
---- a/xbmc/FileSystem/iso9660.cpp
-+++ b/xbmc/FileSystem/iso9660.cpp
-@@ -44,7 +44,7 @@ ISO9660
- #include "utils/CharsetConverter.h"
-
- #include "DetectDVDType.h" // for MODE2_DATA_SIZE etc.
--#ifdef _LINUX
-+#ifndef _WIN32
- #include <cdio/bytesex.h>
- #else
- #include "lib/libcdio/bytesex.h" // for from_723 & from_733
-diff --git a/xbmc/Makefile b/xbmc/Makefile
-index abfbdcb..f55381a 100644
---- a/xbmc/Makefile
-+++ b/xbmc/Makefile
-@@ -8,8 +8,6 @@ INCLUDES+=-Ilib/libUPnP/Platinum/Source/Core \
- -Ilib/libUPnP/Neptune/Source/System/Posix \
- -Ilib/libUPnP/Neptune/Source/Core
-
--INCLUDES+=-Ilib/libcdio/libcdio/include
--
- SRCS=Application.cpp \
- CueDocument.cpp \
- GUISettings.cpp \
-diff --git a/xbmc/cdrip/CDDAReader.cpp b/xbmc/cdrip/CDDAReader.cpp
-index c8b37b2..e3e9c0b 100644
---- a/xbmc/cdrip/CDDAReader.cpp
-+++ b/xbmc/cdrip/CDDAReader.cpp
-@@ -24,7 +24,11 @@
- #ifdef HAS_CDDA_RIPPER
-
- #include "CDDAReader.h"
-+#ifdef _WIN32
- #include "lib/libcdio/cdio.h"
-+#else
-+#include <cdio/cdio.h>
-+#endif
- #include "utils/log.h"
-
- #define SECTOR_COUNT 52
-diff --git a/xbmc/cores/paplayer/AC3CDDACodec.cpp b/xbmc/cores/paplayer/AC3CDDACodec.cpp
-index 20cded7..f2a077a 100644
---- a/xbmc/cores/paplayer/AC3CDDACodec.cpp
-+++ b/xbmc/cores/paplayer/AC3CDDACodec.cpp
-@@ -22,7 +22,11 @@
- #include "system.h"
- #include "AC3CDDACodec.h"
- #ifdef HAS_AC3_CDDA_CODEC
-+#ifdef _WIN32
- #include "lib/libcdio/sector.h"
-+#else
-+#include <cdio/sector.h>
-+#endif
-
- AC3CDDACodec::AC3CDDACodec() : AC3Codec()
- {
-diff --git a/xbmc/cores/paplayer/CDDAcodec.cpp b/xbmc/cores/paplayer/CDDAcodec.cpp
-index ca8f1be..42460dc 100644
---- a/xbmc/cores/paplayer/CDDAcodec.cpp
-+++ b/xbmc/cores/paplayer/CDDAcodec.cpp
-@@ -20,7 +20,11 @@
- */
-
- #include "CDDAcodec.h"
-+#ifdef _WIN32
- #include "lib/libcdio/sector.h"
-+#else
-+#include <cdio/sector.h>
-+#endif
-
- #define SECTOR_COUNT 55 // max. sectors that can be read at once
- #define MAX_BUFFER_SIZE 2*SECTOR_COUNT*CDIO_CD_FRAMESIZE_RAW
-diff --git a/xbmc/cores/paplayer/DTSCDDACodec.cpp b/xbmc/cores/paplayer/DTSCDDACodec.cpp
-index e64cc2e..9bc46c6 100644
---- a/xbmc/cores/paplayer/DTSCDDACodec.cpp
-+++ b/xbmc/cores/paplayer/DTSCDDACodec.cpp
-@@ -22,7 +22,11 @@
- #include "system.h"
- #include "DTSCDDACodec.h"
- #ifdef HAS_DTS_CODEC
-+#ifdef _WIN32
- #include "lib/libcdio/sector.h"
-+#else
-+#include <cdio/sector.h>
-+#endif
-
- DTSCDDACodec::DTSCDDACodec() : DTSCodec()
- {
diff --git a/multimedia/xbmc/patches/xbmc-9.11-wavpack.patch b/multimedia/xbmc/patches/xbmc-9.11-wavpack.patch
deleted file mode 100644
index ac2f5211c0..0000000000
--- a/multimedia/xbmc/patches/xbmc-9.11-wavpack.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-fix from upstream trunk
-
-http://xbmc.org/trac/ticket/8185
-
-Index: trunk/xbmc/cores/paplayer/DllWAVPack.h
-===================================================================
---- xbmc/cores/paplayer/DllWAVPack.h (revision 22927)
-+++ xbmc/cores/paplayer/DllWAVPack.h (revision 25321)
-@@ -58,7 +58,7 @@
- virtual int WavpackGetReducedChannels (WavpackContext *wpc)=0;
- virtual int WavpackGetFloatNormExp (WavpackContext *wpc)=0;
-- virtual int WavpackGetMD5Sum (WavpackContext *wpc, uchar data [16])=0;
-+ virtual int WavpackGetMD5Sum (WavpackContext *wpc, unsigned char data [16])=0;
- virtual uint32_t WavpackGetWrapperBytes (WavpackContext *wpc)=0;
-- virtual uchar *WavpackGetWrapperData (WavpackContext *wpc)=0;
-+ virtual unsigned char *WavpackGetWrapperData (WavpackContext *wpc)=0;
- virtual void WavpackFreeWrapper (WavpackContext *wpc)=0;
- virtual void WavpackSeekTrailingWrapper (WavpackContext *wpc)=0;
-@@ -77,5 +77,5 @@
- virtual int WavpackSetConfiguration (WavpackContext *wpc, WavpackConfig *config, uint32_t total_samples)=0;
- virtual int WavpackAddWrapper (WavpackContext *wpc, void *data, uint32_t bcount)=0;
-- virtual int WavpackStoreMD5Sum (WavpackContext *wpc, uchar data [16])=0;
-+ virtual int WavpackStoreMD5Sum (WavpackContext *wpc, unsigned char data [16])=0;
- virtual int WavpackPackInit (WavpackContext *wpc)=0;
- virtual int WavpackPackSamples (WavpackContext *wpc, int32_t *sample_buffer, uint32_t sample_count)=0;
-@@ -133,9 +133,9 @@
- virtual int WavpackGetFloatNormExp (WavpackContext *wpc)
- { return ::WavpackGetFloatNormExp (wpc); }
-- virtual int WavpackGetMD5Sum (WavpackContext *wpc, uchar data [16])
-+ virtual int WavpackGetMD5Sum (WavpackContext *wpc, unsigned char data [16])
- { return ::WavpackGetMD5Sum (wpc, data); }
- virtual uint32_t WavpackGetWrapperBytes (WavpackContext *wpc)
- { return ::WavpackGetWrapperBytes (wpc); }
-- virtual uchar *WavpackGetWrapperData (WavpackContext *wpc)
-+ virtual unsigned char *WavpackGetWrapperData (WavpackContext *wpc)
- { return ::WavpackGetWrapperData (wpc); }
- virtual void WavpackFreeWrapper (WavpackContext *wpc)
-@@ -171,5 +171,5 @@
- virtual int WavpackAddWrapper (WavpackContext *wpc, void *data, uint32_t bcount)
- { return ::WavpackAddWrapper (wpc, data, bcount); }
-- virtual int WavpackStoreMD5Sum (WavpackContext *wpc, uchar data [16])
-+ virtual int WavpackStoreMD5Sum (WavpackContext *wpc, unsigned char data [16])
- { return ::WavpackStoreMD5Sum (wpc, data); }
- virtual int WavpackPackInit (WavpackContext *wpc)
diff --git a/multimedia/xbmc/patches/xbmc-lib64.patch b/multimedia/xbmc/patches/xbmc-lib64.patch
deleted file mode 100644
index 2b1856fb54..0000000000
--- a/multimedia/xbmc/patches/xbmc-lib64.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff -Naur xbmc-9.11.orig/xbmc/FileSystem/Makefile xbmc-9.11/xbmc/FileSystem/Makefile
---- xbmc-9.11.orig/xbmc/FileSystem/Makefile 2009-10-10 13:00:16.000000000 +0000
-+++ xbmc-9.11/xbmc/FileSystem/Makefile 2009-12-31 16:37:12.000000000 +0000
-@@ -1,4 +1,4 @@
--INCLUDES=-I. -I../ -I../cores -I../linux -I../../guilib -I../lib/UnrarXLib -I../utils -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-+INCLUDES=-I. -I../ -I../cores -I../linux -I../../guilib -I../lib/UnrarXLib -I../utils -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib64/dbus-1.0/include -I/usr/lib64/glib-2.0/include
- INCLUDES+=-I../lib/libcdio/libcdio/include
-
- CXXFLAGS+=-D__STDC_FORMAT_MACROS \
-diff -Naur xbmc-9.11.orig/xbmc/Makefile xbmc-9.11/xbmc/Makefile
---- xbmc-9.11.orig/xbmc/Makefile 2009-10-26 12:04:25.000000000 +0000
-+++ xbmc-9.11/xbmc/Makefile 2009-12-31 16:37:12.000000000 +0000
-@@ -1,4 +1,4 @@
--INCLUDES+=-I. -Ilinux -Icores -I../guilib -Iutils -IFileSystem -I/usr/include/freetype2 -Icores/dvdplayer -Icores/ffmpeg
-+INCLUDES+=-I. -Ilinux -Icores -I../guilib -Iutils -IFileSystem -I/usr/include/freetype2 -Icores/dvdplayer -Icores/ffmpeg -I/usr/lib64/dbus-1.0/include -I/usr/lib64/glib-2.0/include
-
- INCLUDES+=-Ilib/libUPnP/Platinum/Source/Core \
- -Ilib/libUPnP/Platinum/Source/Platinum \
-diff -Naur xbmc-9.11.orig/xbmc/linux/Makefile.in xbmc-9.11/xbmc/linux/Makefile.in
---- xbmc-9.11.orig/xbmc/linux/Makefile.in 2009-10-12 10:36:28.000000000 +0000
-+++ xbmc-9.11/xbmc/linux/Makefile.in 2009-12-31 16:37:12.000000000 +0000
-@@ -1,6 +1,6 @@
- ARCH=@ARCH@
-
--INCLUDES=-I. -I.. -I../../guilib -I../utils -I../cores -I../FileSystem
-+INCLUDES=-I. -I.. -I../../guilib -I../utils -I../cores -I../FileSystem -I/usr/lib64/dbus-1.0/include -I/usr/lib64/glib-2.0/include
- ifeq ($(findstring osx,$(ARCH)), osx)
- INCLUDES+=-I../osx
- endif
-diff -Naur xbmc-9.11.orig/xbmc/utils/Makefile xbmc-9.11/xbmc/utils/Makefile
---- xbmc-9.11.orig/xbmc/utils/Makefile 2009-10-28 01:59:14.000000000 +0000
-+++ xbmc-9.11/xbmc/utils/Makefile 2009-12-31 16:37:12.000000000 +0000
-@@ -1,4 +1,4 @@
--INCLUDES=-I. -I.. -I../../ -I../linux -I../cores -I../../guilib
-+INCLUDES=-I. -I.. -I../../ -I../linux -I../cores -I../../guilib -I/usr/lib64/dbus-1.0/include -I/usr/lib64/glib-2.0/include
-
- SRCS=AlarmClock.cpp \
- Archive.cpp \
diff --git a/multimedia/xbmc/xbmc.SlackBuild b/multimedia/xbmc/xbmc.SlackBuild
index 08a1a7cff2..620aceb473 100644
--- a/multimedia/xbmc/xbmc.SlackBuild
+++ b/multimedia/xbmc/xbmc.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for XBMC
-# Copyright 2009-2010 Larry Hajali <larryhaja[at]gmail[dot]com>
+# Copyright 2009-2011 Larry Hajali <larryhaja[at]gmail[dot]com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,8 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=xbmc
-VERSION=9.11
-BUILD=${BUILD:-2}
+VERSION=10.0
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -70,107 +70,85 @@ find . \
-exec chmod 644 {} \;
# Let's get rid of the lsb_release dependency.
-sed -i 's|/usr/bin/lsb_release -d|/bin/cat /etc/slackware-version|' \
+sed -i 's|lsb_release -d|cat /etc/slackware-version|' \
xbmc/utils/SystemInfo.cpp
-# Fix a hardcoded python2.5 install path in the EventClients Makefile.
-PYVER=$(python -c 'import sys; print sys.version[:3]')
-sed -i "s|lib/python2.5|lib${LIBDIRSUFFIX}/python${PYVER}|g" \
- tools/EventClients/Makefile
-
-# Patch to use XBMC's jpegint.h because of a missing header file in Slackware.
-# Fix lib64 compatibility.
-patch -p1 < $CWD/patches/jpegint_h.patch
-patch -p1 < $CWD/patches/xbmc-lib64.patch
-# Fixes from upstream not included in stable release.
-patch -p0 < $CWD/patches/fix-wrapper_c.patch
-patch -p0 < $CWD/patches/xbmc-9.11-wavpack.patch
-patch -p1 < $CWD/patches/xbmc-9.11-libpng14.patch
-patch -p1 < $CWD/patches/xbmc-9.11-use-cdio-system-headers-on-non-win32.patch
+# Fix for non-sse2 cpu's.
+if ! grep 'sse2' /proc/cpuinfo 2>&1 > /dev/null; then
+ patch -p1 < $CWD/patches/non-sse2-cpu.patch
+fi
# Create configure scripts.
[ ! -x bootstrap ] && chmod +x bootstrap
./bootstrap
-# XBMC doesn't use a consistent --libdir so we need to provide
-# some missing includes.
-EXTRA_INCLUDES="\
- -I/usr/lib${LIBDIRSUFFIX}/dbus-1.0/include \
- -I/usr/lib${LIBDIRSUFFIX}/glib-2.0/include \
- -I/usr/include/SDL"
-
-# Here are some additional flags that can be manually added to configure
+# Here are some additional flags that can turned on in the script
# so XBMC will use system libraries instead of shipped libraries.
# --enable-external-ffmpeg * to use system ffmpeg
# --enable-external-liba52 * to use system liba52 library
# comes with a52dec
# --enable-external-libdts * to use system DTS Coherent Acoustics decoder
-# also known as libdca
-# --enable-external-libmpeg2 * to use system mpeg-2 and mpeg-1 decoder
-# --enable-external-libass * to use system subtitle renderer
-# --enable-external-python * to use system python
+# --enable-external-python * to use system python (On by default)
# --enable-external-libraries * to enable all optional system libraries
-ENABLE_OPTS="\
- --enable-external-libogg \
- --enable-external-libwavpack"
-[ "${EXT_FFMPEG:-no}" == "yes" ] && ENABLE_OPTS="$ENABLE_OPTS --enable-external-ffmpeg" \
- SLKCFLAGS="$SLKCFLAGS -D__STDC_CONSTANT_MACROS" # Workaround for ffmpeg 0.6+
-[ "${EXT_A52DEC:-no}" == "yes" ] && ENABLE_OPTS="$ENABLE_OPTS --enable-external-liba52"
-[ "${EXT_DTS:-no}" == "yes" ] && ENABLE_OPTS="$ENABLE_OPTS --enable-external-libdts"
-[ "${EXT_MPEG2:-no}" == "yes" ] && ENABLE_OPTS="$ENABLE_OPTS --enable-external-libmpeg2"
-[ "${EXT_ASS:-no}" == "yes" ] && ENABLE_OPTS="$ENABLE_OPTS --enable-external-libass"
-[ "${EXT_PYTHON:-no}" == "yes" ] && ENABLE_OPTS="$ENABLE_OPTS --enable-external-python"
-[ "${EXT_ALL:-no}" == "yes" ] && ENABLE_OPTS="--enable-external-libraries" \
- SLKCFLAGS="$SLKCFLAGS -D__STDC_CONSTANT_MACROS" # Workaround for ffmpeg 0.6+
-
-CFLAGS="$SLKCFLAGS $EXTRA_INCLUDES" \
-CXXFLAGS="$SLKCFLAGS $EXTRA_INCLUDES" \
+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.
+if [ "${WEBSERVER:-no}" == "yes" ]; then
+ OPT_SERVER="--enable-webserver"
+else
+ OPT_SERVER="--disable-webserver"
+fi
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
- --enable-vdpau \
- --enable-xrandr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-ccache \
--disable-debug \
--enable-gl \
- --enable-faac \
--enable-dvdcss \
--enable-mid \
- --enable-avahi \
- --enable-joystick \
--enable-goom \
- $ENABLE_OPTS \
- --build=$ARCH-slackware-linux
+ --enable-ffmpeg-libvorbis \
+ --disable-asap-codec \
+ $OPT_SERVER \
+ $OPT_DEPS \
+ --build=$ARCH-slackware-linux \
make
# Wii controller usage. Default is no.
if ! [ "${USE_WII:-no}" = "no" ]; then
- make eventclients prefix=$PKG/usr installdir=/usr WII_EXTRA_OPTS="-DCWIID_OLD"
+ make eventclients DESTDIR=$PKG WII_EXTRA_OPTS="-DCWIID_OLD"
fi
-make install install-livedatas prefix=$PKG/usr
-
-# Fix executable permissions.
-chmod 0755 $PKG/usr/bin/*
+make install install-livedatas DESTDIR=$PKG
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
# Install manpages.
mkdir -p $PKG/usr/man/man1
-install -m 0644 \
- docs/manpages/{diskmounter,runXBMC,xbmc.bin,xbmc,xbmc-standalone,xbmc-send,setAlsaVolumes,installXBMC}.1 \
- $PKG/usr/man/man1
+for i in diskmounter.1 runXBMC.1 xbmc.bin.1 xbmc.1 xbmc-standalone.1 xbmc-send.1 \
+ setAlsaVolumes.1 installXBMC.1
+do
+ install -D -m 0644 docs/manpages/$i $PKG/usr/man/man1/$i
+done
+
if ! [ "${USE_WII:-no}" = "no" ]; then
- install -m 0644 docs/manpages/{xbmc-j2meremote,xbmc-ps3remote,xbmc-wiiremote}.1 \
- $PKG/usr/man/man1
+ 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
+ done
fi
gzip -9 $PKG/usr/man/man?/*.?
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- copying.txt keymapping.txt LICENSE.GPL README.linux tools/EventClients/README.txt \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a tools/EventClients/README.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
rm -f $PKG/usr/share/xbmc/{README.linux,LICENSE.GPL,*.txt}
diff --git a/multimedia/xbmc/xbmc.info b/multimedia/xbmc/xbmc.info
index db8fe5fb16..a1c199b975 100644
--- a/multimedia/xbmc/xbmc.info
+++ b/multimedia/xbmc/xbmc.info
@@ -1,10 +1,10 @@
PRGNAM="xbmc"
-VERSION="9.11"
+VERSION="10.0"
HOMEPAGE="http://xbmc.org/"
-DOWNLOAD="http://downloads.sourceforge.net/xbmc/xbmc-9.11.tar.gz"
-MD5SUM="9a68ac1e2f44a54cc3803fcdb1265767"
+DOWNLOAD="http://mirrors.xbmc.org/releases/source/xbmc-10.0.tar.gz"
+MD5SUM="728fb514e5f43f27bb880305061b4e72"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
MAINTAINER="Larry Hajali"
EMAIL="larryhaja[at]gmail[dot]com"
-APPROVED="Erik Hanson"
+APPROVED="Erik Hanson,Niels Horn"