summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKen Dreyer <ktdreyer@ktdreyer.com>2014-02-23 23:25:05 -0700
committerKen Dreyer <ktdreyer@ktdreyer.com>2014-02-23 23:25:05 -0700
commitad2fa8bf32377efe6d56e8a154677ce160d108f1 (patch)
treef52e81bc5abdb943aa37209a6669cc04ce06a262
parent498cea578f97d699717294344cd65d0b70f3ec0b (diff)
downloadxbmc-rpm-ad2fa8bf32377efe6d56e8a154677ce160d108f1.tar.gz
xbmc-rpm-ad2fa8bf32377efe6d56e8a154677ce160d108f1.tar.xz
xbmc-rpm-ad2fa8bf32377efe6d56e8a154677ce160d108f1.zip
use internal ffmpeg
- switch to bcond conditionals - remove hardcoded mysql directory in LIBS, since mysql_config will insert this automatically. - rm BuildRoot
-rw-r--r--xbmc-13.0-dvdread.patch10
-rw-r--r--xbmc-13.0-hdhomerun.patch12
-rw-r--r--xbmc-13.0-libmysqlclient.patch26
-rwxr-xr-xxbmc-generate-tarball-xz.sh2
-rw-r--r--xbmc.spec71
5 files changed, 85 insertions, 36 deletions
diff --git a/xbmc-13.0-dvdread.patch b/xbmc-13.0-dvdread.patch
index d4dfeb9..4a87b6d 100644
--- a/xbmc-13.0-dvdread.patch
+++ b/xbmc-13.0-dvdread.patch
@@ -1,7 +1,7 @@
-From 28f6184a53d5b4bac2ed45636c27fd7b54c7c3fc Mon Sep 17 00:00:00 2001
+From d04be10106d05c87a81cb1d886703bed1963a3d7 Mon Sep 17 00:00:00 2001
From: Ken Dreyer <ktdreyer@ktdreyer.com>
Date: Mon, 6 May 2013 17:07:40 -0600
-Subject: [PATCH 1/2] Fedora: use external dvdread
+Subject: [PATCH 1/3] Fedora: use external dvdread
Original patch by Alex Lancaster <alexlan[AT]fedoraproject org>
(cherry picked from commit 9f9845af842a376d5bdf70742785e7727695fd03)
@@ -35,10 +35,10 @@ index 8bc4795..1fc31a4 100644
autoreconf -vif $(@D)
-@rm -rf $(@D)/autom4te.cache
diff --git a/configure.in b/configure.in
-index 09f11cd..4182c66 100644
+index f277cac..433c4a2 100644
--- a/configure.in
+++ b/configure.in
-@@ -2836,29 +2836,9 @@ XB_CONFIG_MODULE([lib/libdvd/libdvdcss], [
+@@ -2842,29 +2842,9 @@ XB_CONFIG_MODULE([lib/libdvd/libdvdcss], [
--with-pic
], [$SKIP_CONFIG_DVDCSS])
@@ -137,5 +137,5 @@ index 69d2286..1f5eebb 100644
libdvdnav: compile
$(MAKE) -C $@
--
-1.8.3.1
+1.8.5.3
diff --git a/xbmc-13.0-hdhomerun.patch b/xbmc-13.0-hdhomerun.patch
index a8b126a..a762d0d 100644
--- a/xbmc-13.0-hdhomerun.patch
+++ b/xbmc-13.0-hdhomerun.patch
@@ -1,7 +1,7 @@
-From ca26da928991f0e3e48018255abc79c86fb46caf Mon Sep 17 00:00:00 2001
+From 3de14b3f561594c326c96dbbe853d516fa8c242e Mon Sep 17 00:00:00 2001
From: Ken Dreyer <ktdreyer@ktdreyer.com>
Date: Fri, 24 Aug 2012 19:34:47 -0600
-Subject: [PATCH 2/2] Fedora: use external hdhomerun
+Subject: [PATCH 2/3] Fedora: use external hdhomerun
Original patch by Alex Lancaster <alexlan[AT]fedoraproject org>
(cherry picked from commit ef5c269992b32d67de7547e9f530b6c971381f45)
@@ -12,7 +12,7 @@ Original patch by Alex Lancaster <alexlan[AT]fedoraproject org>
3 files changed, 53 insertions(+), 31 deletions(-)
diff --git a/Makefile.in b/Makefile.in
-index a14b3c5..f389b51 100644
+index 76936d4..0f9bc0c 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -211,7 +211,6 @@ endif
@@ -42,10 +42,10 @@ index a14b3c5..f389b51 100644
externals: codecs libs visualizations screensavers libaddon pvraddons
diff --git a/configure.in b/configure.in
-index 4182c66..b78085a 100644
+index 433c4a2..24a5e89 100644
--- a/configure.in
+++ b/configure.in
-@@ -2522,7 +2522,6 @@ OUTPUT_FILES="Makefile \
+@@ -2528,7 +2528,6 @@ OUTPUT_FILES="Makefile \
lib/libexif/Makefile \
lib/libXDAAP/Makefile \
lib/cmyth/Makefile \
@@ -149,5 +149,5 @@ index 150b00f..57936be 100644
};
--
-1.8.3.1
+1.8.5.3
diff --git a/xbmc-13.0-libmysqlclient.patch b/xbmc-13.0-libmysqlclient.patch
new file mode 100644
index 0000000..7a26922
--- /dev/null
+++ b/xbmc-13.0-libmysqlclient.patch
@@ -0,0 +1,26 @@
+From 7f3906cd055135adc0930f5a9bb341b4be5a0675 Mon Sep 17 00:00:00 2001
+From: Ken Dreyer <ktdreyer@ktdreyer.com>
+Date: Sat, 22 Feb 2014 13:46:01 -0700
+Subject: [PATCH 3/3] Fedora: avoid linking libmysqlclient during Goom
+
+If libmysqlclient and libgnutls are linked to the same binary, we get a
+segfault.
+---
+ configure.in | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/configure.in b/configure.in
+index 24a5e89..4535204 100644
+--- a/configure.in
++++ b/configure.in
+@@ -2879,6 +2879,7 @@ XB_CONFIG_MODULE([xbmc/visualizations/Goom/goom2k4-0],[
+ ./configure \
+ CFLAGS="$CFLAGS" \
+ CXXFLAGS="$CXXFLAGS" \
++ LIBS="$(echo $LIBS | sed -e s/-lmysqlclient//g)" \
+ --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
+ --host=$host_alias \
+ --build=$build_alias \
+--
+1.8.5.3
+
diff --git a/xbmc-generate-tarball-xz.sh b/xbmc-generate-tarball-xz.sh
index a1706bc..0da18c4 100755
--- a/xbmc-generate-tarball-xz.sh
+++ b/xbmc-generate-tarball-xz.sh
@@ -27,7 +27,7 @@ pushd xbmc-$VERSION
# grrr, *still* have to keep in ffmpeg for now (2011-12-28) since upstream
# seems to require files within that subdirectory <sigh>, filed
# http://trac.xbmc.org/ticket/12370
-for i in cximage-6.0/zlib libhdhomerun libmpeg2 ffmpeg
+for i in cximage-6.0/zlib libhdhomerun libmpeg2
do
rm -r lib/$i
done
diff --git a/xbmc.spec b/xbmc.spec
index b771b78..24078ea 100644
--- a/xbmc.spec
+++ b/xbmc.spec
@@ -4,9 +4,13 @@
%global DIRVERSION %{version}-%{PRERELEASE}
%global _hardened_build 1
+# It will no longer be possible to build with external ffmpeg.
+# https://github.com/xbmc/xbmc/pull/4005
+%bcond_without external_ffmpeg
+
Name: xbmc
Version: 13.0
-Release: 0.3.Gotham_alpha11%{?dist}
+Release: 0.4.Gotham_alpha11%{?dist}
URL: http://www.xbmc.org/
Source0: %{name}-%{DIRVERSION}-patched.tar.xz
@@ -25,20 +29,23 @@ Patch1: xbmc-13.0-dvdread.patch
# functionality, needs to be able fallback internal version
Patch2: xbmc-13.0-hdhomerun.patch
+# Avoid segfault during goom's configure
+Patch3: xbmc-13.0-libmysqlclient.patch
# Optional deps (not in EPEL)
+%if 0%{?fedora}
# (libbluray in EPEL 6 is too old.)
-%{?fedora:%global _with_hdhomerun 1}
+%bcond_with libbluray
+%bcond_with cwiid
+%bcond_with libssh
+%bcond_with libcec
+%endif
+
%ifarch x86_64 i686
-%{?fedora:%global _with_crystalhd 1}
+%bcond_with crystalhd
%endif
-%{?fedora:%global _with_libbluray 1}
-%{?fedora:%global _with_cwiid 1}
-%{?fedora:%global _with_libssh 1}
-%{?fedora:%global _with_libcec 1}
ExcludeArch: ppc64
-Buildroot: %{_tmppath}/%{name}-%{version}
Summary: Media center
License: GPLv2+ and GPLv3+
Group: Applications/Multimedia
@@ -104,15 +111,17 @@ BuildRequires: libtool
BuildRequires: libtiff-devel
BuildRequires: libvdpau-devel
BuildRequires: libdvdread-devel
+%if %{with external_ffmpeg}
BuildRequires: ffmpeg-devel
+%endif
BuildRequires: faad2-devel
BuildRequires: pulseaudio-libs-devel
BuildRequires: libdca-devel
BuildRequires: libass-devel >= 0.9.7
-%if 0%{?_with_hdhomerun}
+%if %{with hdhomerun}
BuildRequires: hdhomerun-devel
%endif
-%if 0%{?_with_crystalhd}
+%if %{with crystalhd}
BuildRequires: libcrystalhd-devel
%endif
BuildRequires: libmodplug-devel
@@ -128,25 +137,25 @@ BuildRequires: gettext-devel
BuildRequires: gettext-autopoint
%endif
BuildRequires: librtmp-devel
-%if 0%{?_with_libbluray}
+%if %{with libbluray}
BuildRequires: libbluray-devel
#BuildRequires: libbluray-devel >= 0.2.1
%endif
BuildRequires: yajl-devel
BuildRequires: bluez-libs-devel
BuildRequires: tinyxml-devel
-%if 0%{?_with_cwiid}
+%if %{with cwiid}
BuildRequires: cwiid-devel
%endif
BuildRequires: taglib-devel >= 1.8
BuildRequires: swig
BuildRequires: java-devel
BuildRequires: lame-devel
-%if 0%{?_with_libssh}
+%if %{with libssh}
BuildRequires: libssh-devel
%endif
BuildRequires: libcap-devel
-%if 0%{?_with_libcec}
+%if %{with libcec}
BuildRequires: libcec-devel
%endif
BuildRequires: libxml-devel
@@ -162,16 +171,16 @@ BuildRequires: libva-devel
# pseudo-DLL loading scheme (sigh)
Requires: librtmp
Requires: libmad
-%if 0%{?_with_hdhomerun}
+%if %{with hdhomerun}
BuildRequires: hdhomerun
%endif
-%if 0%{?_with_crystalhd}
+%if %{with crystalhd}
Requires: libcrystalhd
%endif
-%if 0%{?_with_libbluray}
+%if %{with libbluray}
Requires: libbluray
%endif
-%if 0%{?_with_libcec}
+%if %{with libcec}
Requires: libcec
%endif
@@ -223,8 +232,9 @@ libraries, you need to install this package.
%patch1 -p1
%patch2 -p1
+%patch3 -p1
-%if 0%{?_with_hdhomerun}
+%if %{with hdhomerun}
%else
# Remove hdhomerun from the build.
pushd xbmc/filesystem/
@@ -248,22 +258,28 @@ chmod +x bootstrap
--prefix=%{_prefix} --bindir=%{_bindir} --includedir=%{_includedir} \
--libdir=%{_libdir} --datadir=%{_datadir} \
--with-lirc-device=/var/run/lirc/lircd \
---enable-goom \
--enable-external-libraries \
+--enable-goom \
--enable-pulse \
-%if 0%{?_with_libcec}
+%if %{with libcec}
--enable-libcec \
+%else
+--disable-libcec \
%endif
-%if 0%{?_with_libssh} == 0
+%if %{with libssh}
+--enable-ssh \
+%else
--disable-ssh \
%endif
--disable-dvdcss \
--disable-optimizations --disable-debug \
+%if %{with external_ffmpeg}
CPPFLAGS="-I/usr/include/ffmpeg" \
+%endif
CFLAGS="$RPM_OPT_FLAGS -fPIC -I/usr/include/afpfs-ng/ -I/usr/include/ffmpeg -I/usr/include/samba-4.0/ -D__STDC_CONSTANT_MACROS" \
CXXFLAGS="$RPM_OPT_FLAGS -fPIC -I/usr/include/afpfs-ng/ -I/usr/include/ffmpeg -I/usr/include/samba-4.0/ -D__STDC_CONSTANT_MACROS" \
LDFLAGS="-fPIC" \
-LIBS="-L%{_libdir}/mysql %{?_with_hdhomerun:-lhdhomerun} $LIBS" \
+LIBS="%{?_with_hdhomerun:-lhdhomerun} $LIBS" \
ASFLAGS=-fPIC
make %{?_smp_mflags} VERBOSE=1
@@ -333,7 +349,14 @@ fi
#%%{_includedir}/xbmc/xbmcclient.h
%changelog
-* Mon Jan 27 2014 Ken Dreyer <ktdreyer@ktdreyer.com> - 13.0-0.5.Gotham_alpha11
+* Fri Feb 21 2014 Ken Dreyer <ktdreyer@ktdreyer.com> - 13.0-0.4.Gotham_alpha11
+- use internal ffmpeg
+- switch to bcond conditionals
+- remove hardcoded mysql directory in LIBS, since mysql_config will insert this
+ automatically.
+- rm BuildRoot
+
+* Mon Jan 27 2014 Ken Dreyer <ktdreyer@ktdreyer.com> - 13.0-0.3.Gotham_alpha11
- Update to Gotham alpha 11
* Mon Nov 25 2013 Ken Dreyer <ktdreyer@ktdreyer.com> - 13.0-0.3.Gotham_alpha9