]> git.pld-linux.org Git - packages/kodi.git/blame - kodi.spec
- updated gcc5 patch to cover new issues
[packages/kodi.git] / kodi.spec
CommitLineData
18b90c81 1# TODO:
3a71016a 2# - fix build flags - some files are compiled with -O3 and without rpm*flags
92b96980 3# - add and/or fix users/groups permissions
63ff963e 4# - split to subpackages?
928406b7 5# - bundled ffmpeg build (tools/depends/target/ffmpeg/autobuild.sh) enables nonfree & gpl!
18b90c81 6#
92b96980 7# Conditional build:
ceb94d36 8# Features:
c0d69361
ER
9%bcond_with afpclient # AFP support via libafpclient
10%bcond_without airplay # AirPlay support
11%bcond_with airtunes # AirTunes support
e148a10d
ER
12%bcond_without alsa # ALSA support
13%bcond_without avahi # Avahi support
ceb94d36
ER
14%bcond_without dbus # DBUS support
15%bcond_without dvdcss # DVDCSS support
98f23c16 16%bcond_without gl # OpenGL rendering
ceb94d36 17%bcond_with gtest # configure Google Test Framework
98f23c16 18%bcond_without joystick # SDL joystick support
c0d69361
ER
19%bcond_without libcap # libcap support
20%bcond_with libcec # libcec support
296d79de 21%bcond_without libgif # gif support via libgif
8ea15fa3 22%bcond_without libusb # libusb support
c0d69361 23%bcond_with mdnsembedded # mDNSEmbedded support
ceb94d36 24%bcond_without mysql # MySQL
8ea15fa3 25%bcond_without nfs # NFS support via libnfs
ceb94d36 26%bcond_without non_free # componentents with non-compliant licenses
c0d69361 27%bcond_with openmax # OpenMax decoding, requires OpenGLES
ceb94d36 28%bcond_without optical_drive # optical drive
98f23c16 29%bcond_without projectm # ProjectM visualisation
c0d69361 30%bcond_without pulse # PulseAudio support
c0d69361 31%bcond_without rtmp # RTMP support via librtmp
e148a10d 32%bcond_without samba # SAMBA support
c0d69361 33%bcond_without sdl # SDL
e148a10d 34%bcond_without ssh # SSH SFTP support
98f23c16 35%bcond_without texturepacker # texturepacker support
c0d69361 36%bcond_without udev # udev support
e148a10d 37%bcond_without upnp # UPnP support
c0d69361
ER
38%bcond_without vaapi # VAAPI decoding
39%bcond_without vdpau # VDPAU decoding
40%bcond_with vtbdecoder # VTBDecoder decoding (VTB Decoder not supported on this platform)
ceb94d36 41%bcond_without webserver # webserver
98f23c16
ER
42%bcond_without x11 # x11 'Linux Only'
43%bcond_without xrandr # XRandR support
e148a10d
ER
44%bcond_with asap_codec # ASAP ADPCM support
45%bcond_with gles # OpenGLES rendering
46%bcond_without libbluray # libbluray support
47%bcond_without mid # MID support
48%bcond_with profiling # gprof profiling
49%bcond_with tegra # Tegra2 arm
50%bcond_with wayland # wayland
ceb94d36 51# System libs:
6e5f6f0e 52%bcond_without system_ffmpeg # build with system ffmpeg
e25cf996 53%bcond_without system_dvdread # build with system dvdread
92b96980 54
c3c3c480 55%define codename Jarvis
d61811e9 56Summary: Kodi is a free and open source media-player and entertainment hub
92b53b2c 57Name: kodi
b7bd3c34 58Version: 16.1
8fa5c2e4 59Release: 2
68612b1e 60License: GPL v2+ and GPL v3+
18b90c81 61Group: Applications/Multimedia
b7bd3c34
ER
62#Source0: http://mirrors.kodi.tv/releases/source/%{version}-%{codename}.tar.gz
63Source0: https://github.com/xbmc/xbmc/archive/%{version}-%{codename}.tar.gz
64# Source0-md5: 79358ad5f77f42c5498a9412d5a78dd5
d2f0f4c7 65Patch0: jpeglib-boolean.patch
af2a7b89 66Patch1: disable-static.patch
e25cf996 67Patch2: dvdread.patch
3b89f97e
JR
68Patch3: ffmpeg3.patch
69Patch4: gcc5.patch
92b53b2c 70URL: http://kodi.tv/
8fa5c2e4 71BuildRequires: OpenGL-GLU-devel
b85db44b 72BuildRequires: OpenGL-devel
658b3aff 73BuildRequires: SDL2-devel
18b90c81 74BuildRequires: alsa-lib-devel
8fa5c2e4 75BuildRequires: autoconf >= 2.59
18b90c81
SP
76BuildRequires: automake
77BuildRequires: avahi-devel
b85db44b 78BuildRequires: bluez-libs-devel >= 4.99
5a2f2b01 79BuildRequires: boost-devel
18b90c81
SP
80BuildRequires: bzip2-devel
81BuildRequires: cmake
c3c3c480 82BuildRequires: crossguid-devel
18b90c81
SP
83BuildRequires: curl-devel
84BuildRequires: dbus-devel
6069f65f 85BuildRequires: dcadec-devel
501e1d3e 86BuildRequires: doxygen
8fa5c2e4 87# libavcodec >= 56.26.100 libavfilter >= 5.11.102 libavformat >= 56.25.101 libavutil >= 54.20.100 libpostproc >= 53.3.100 libswscale >= 3.1.101 libswresample >= 1.1.100
64d462c0 88%{?with_system_ffmpeg:BuildRequires: ffmpeg-devel >= 2.4.4}
5a2f2b01 89BuildRequires: flac-devel
18b90c81
SP
90BuildRequires: fontconfig-devel
91BuildRequires: freetype-devel
92BuildRequires: fribidi-devel
93BuildRequires: gawk
63ff963e 94BuildRequires: gettext-autopoint
0747666f 95BuildRequires: gettext-tools
a1f637af 96BuildRequires: giflib-devel
3a358a3c 97%{?with_libgif:BuildRequires: giflib-devel}
18b90c81
SP
98BuildRequires: glew-devel
99BuildRequires: gperf
5a2f2b01 100BuildRequires: jasper-devel
37fbe511 101BuildRequires: jre
b85db44b 102BuildRequires: libass-devel
296d79de 103BuildRequires: libbluray-devel >= 0.7.0
37fbe511 104BuildRequires: libcap-devel
18b90c81 105BuildRequires: libcdio-devel
8fa5c2e4
JB
106%{?with_libcec:BuildRequires: libcec-devel >= 3.0.0}
107BuildRequires: libdrm-devel
e25cf996 108%{?with_system_dvdread:BuildRequires: libdvdread-devel}
1aef2bca 109%ifarch i686 pentium4 athlon %{x8664}
5f83fc0f 110BuildRequires: libcrystalhd-devel
1aef2bca 111%endif
b85db44b 112BuildRequires: libgcrypt-devel
18b90c81 113BuildRequires: libjpeg-devel
45a200ab 114BuildRequires: libltdl-devel
63ff963e 115BuildRequires: libmicrohttpd-devel
63ff963e 116BuildRequires: libmodplug-devel
c462fd57 117BuildRequires: libmpeg2-devel
18b90c81 118BuildRequires: libogg-devel
b85db44b 119BuildRequires: libplist-devel
5a2f2b01 120BuildRequires: libpng-devel
b85db44b 121BuildRequires: librtmp-devel
18b90c81
SP
122BuildRequires: libsamplerate-devel
123BuildRequires: libsmbclient-devel
b85db44b 124BuildRequires: libssh-devel
8fa5c2e4 125BuildRequires: libstdc++-devel
5a2f2b01 126BuildRequires: libtiff-devel
127BuildRequires: libtool
f99f2533 128BuildRequires: libuuid-devel
b85db44b 129BuildRequires: libva-devel
f99f2533 130BuildRequires: libva-x11-devel
5a2f2b01 131BuildRequires: libvdpau-devel
18b90c81 132BuildRequires: libvorbis-devel
8fa5c2e4 133BuildRequires: libxml2-devel >= 2.0
501e1d3e 134BuildRequires: libxslt-devel
5a2f2b01 135BuildRequires: lzo-devel
136BuildRequires: mysql-devel
c1b45330 137%ifarch %{ix86}
26cae375 138BuildRequires: nasm
c1b45330 139%endif
18b90c81 140BuildRequires: openssl-devel
63ff963e 141BuildRequires: pcre-cxx-devel
5a2f2b01 142BuildRequires: pkgconfig
8fa5c2e4
JB
143BuildRequires: pulseaudio-devel >= 1.0
144BuildRequires: python-devel >= 1:2.6
3a71016a 145BuildRequires: rpm-pythonprov
6f41c837 146BuildRequires: rpmbuild(macros) >= 1.566
c462fd57 147BuildRequires: sed >= 4.0
18b90c81 148BuildRequires: sqlite3-devel
37fbe511
KK
149BuildRequires: swig
150BuildRequires: taglib-devel >= 1.8
8fa5c2e4 151BuildRequires: tinyxml-devel >= 2.6.2
b85db44b 152BuildRequires: udev-devel
5a2f2b01 153BuildRequires: unzip
b85db44b
AF
154BuildRequires: xorg-lib-libX11-devel
155BuildRequires: xorg-lib-libXext-devel
18b90c81 156BuildRequires: xorg-lib-libXrandr-devel
8fa5c2e4 157BuildRequires: yajl-devel >= 2
18b90c81
SP
158BuildRequires: zip
159BuildRequires: zlib-devel
af2a7b89
JR
160# kodi uses it's own, modified squish
161BuildConflicts: squish-devel
b85db44b 162#https://github.com/sahlberg/libnfs
57d594cf 163BuildRequires: libnfs-devel
b85db44b
AF
164#http://sites.google.com/site/alexthepuffin/home
165#BuildRequires: afpfs-ng-devel
8fa5c2e4 166#BuildRequires: shairplay-devel
63ff963e 167Requires: /usr/bin/glxinfo
f4f8f308 168Requires: SDL >= 1.2.14-5
a58652d4
SP
169Requires: lsb-release
170Requires: xorg-app-xdpyinfo
06c1bb12 171# dlopened libraries:
d61811e9 172# grep 'DLL_PATH_.*lib.*\.so' xbmc/DllPaths_generated.h | grep -v special://
06c1bb12
ER
173Requires: curl-libs
174Requires: libass
175Requires: libbluray
176Requires: libmodplug
177Requires: libmpeg2-libs
178Requires: libogg
179Requires: libplist
180Requires: libvorbis
92b53b2c 181Obsoletes: xbmc < 14.0
18b90c81
SP
182BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
183
184%description
d61811e9
ER
185Kodi Entertainment Center (formerly XBMC) is a free and open-source
186media player software developed by the XBMC Foundation, a non-profit
187technology consortium. Kodi is available for multiple operating
188systems and hardware platforms, with a software 10-foot user interface
189for use with televisions and remote controls. It allows users to play
190and view most videos, music, such as podcasts from the internet, and
191all common digital media files from local and network storage media.
18b90c81
SP
192
193%prep
92b53b2c 194%setup -q -n xbmc-%{version}-%{codename}
bfa116d7 195%patch0 -p1
af2a7b89 196%patch1 -p1
05c4c454 197%{?with_system_dvdread:%patch2 -p1}
3b89f97e 198%patch3 -p1
8fa5c2e4 199%patch4 -p1
18b90c81 200
8fa5c2e4
JB
201%{__rm} -r lib/cximage-6.0/zlib
202#%{__rm} -r lib/libhdhomerun
203%{__rm} -r lib/libmpeg2
204%{__rm} -r xbmc/cores/dvdplayer/DVDCodecs/Video/libmpeg2
205%{__rm} -r lib/libbluray
206%{__rm} -r lib/librtmp
207%{__rm} -r lib/win32
208%{?with_system_dvdread:%{__rm} -r lib/libdvd/libdvdread}
5d47de93 209
72cf5436 210%if %{without system_ffmpeg}
c3c3c480 211#ln -s %{SOURCE1} tools/depends/target/ffmpeg/ffmpeg-2.4.4-%{codename}.tar.gz
928406b7
ER
212%endif
213
18b90c81 214%build
c3c3c480
ER
215%{__make} -C tools/depends/native/libsquish-native \
216 CXX="%{__cxx}"
217
18b90c81 218./bootstrap
65712ad3 219%configure \
57d594cf 220 ac_cv_type__Bool=yes \
ace9791d 221 --disable-silent-rules \
51b524ca 222 --disable-debug \
ace9791d 223 --disable-ccache \
928406b7 224 --with-ffmpeg=%{!?with_system_ffmpeg:force}%{?with_system_ffmpeg:shared} \
c0d69361
ER
225 %{__enable_disable afpclient} \
226 %{__enable_disable airplay} \
227 %{__enable_disable airtunes} \
ceb94d36 228 %{__enable_disable alsa} \
e148a10d 229 %{__enable_disable asap_codec asap-codec} \
ceb94d36
ER
230 %{__enable_disable avahi} \
231 %{__enable_disable dbus} \
98f23c16 232 %{__enable_disable dvdcss} \
e148a10d 233 %{__enable_disable gles} \
98f23c16 234 %{__enable_disable gl} \
98f23c16 235 %{__enable_disable gtest} \
98f23c16 236 %{__enable_disable joystick} \
e148a10d 237 %{__enable_disable libbluray} \
c0d69361 238 %{__enable_disable libcap} \
98f23c16 239 %{__enable_disable libcec} \
296d79de 240 %{__enable_disable libgif} \
c0d69361
ER
241 %{__enable_disable libusb} \
242 %{__enable_disable mdnsembedded} \
e148a10d 243 %{__enable_disable mid} \
ceb94d36 244 %{__enable_disable mysql} \
c0d69361 245 %{__enable_disable nfs} \
ceb94d36 246 %{__enable_disable non_free non-free} \
c0d69361 247 %{__enable_disable openmax} \
ceb94d36 248 %{__enable_disable optical_drive optical-drive} \
e148a10d 249 %{__enable_disable profiling} \
c0d69361 250 %{__enable_disable pulse} \
c0d69361 251 %{__enable_disable rtmp} \
ceb94d36 252 %{__enable_disable samba} \
c0d69361 253 %{__enable_disable sdl} \
ceb94d36 254 %{__enable_disable ssh} \
e148a10d
ER
255 %{__enable_disable tegra} \
256 %{__enable_disable texturepacker} \
c0d69361 257 %{__enable_disable udev} \
ceb94d36 258 %{__enable_disable upnp} \
c0d69361
ER
259 %{__enable_disable vaapi} \
260 %{__enable_disable vdpau} \
261 %{__enable_disable vtbdecoder} \
e148a10d 262 %{__enable_disable wayland} \
ceb94d36 263 %{__enable_disable webserver} \
98f23c16
ER
264 %{__enable_disable x11} \
265 %{__enable_disable xrandr} \
266 %{nil}
68612b1e 267
00f4b5ab 268%{__make} V=1
18b90c81
SP
269
270%install
271rm -rf $RPM_BUILD_ROOT
18b90c81 272%{__make} install \
92b96980 273 DESTDIR=$RPM_BUILD_ROOT
18b90c81 274
25890c53
ER
275%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
276
277# no -devel package yet
278%{__rm} -r $RPM_BUILD_ROOT%{_includedir}/kodi
279%{__rm} -r $RPM_BUILD_ROOT%{_includedir}/xbmc
280
a5bfc3a3
ER
281# no real use for symlinks to datadir, and make rpm packaging more difficult (symlink vs dir issues)
282%{__rm} $RPM_BUILD_ROOT%{_libdir}/xbmc
283%{__rm} $RPM_BUILD_ROOT%{_datadir}/xbmc
284
18b90c81
SP
285%clean
286rm -rf $RPM_BUILD_ROOT
287
288%files
289%defattr(644,root,root,755)
25890c53
ER
290%doc README.md docs/README.linux
291%attr(755,root,root) %{_bindir}/kodi
292%attr(755,root,root) %{_bindir}/kodi-standalone
18b90c81 293%{_datadir}/%{name}
92b96980 294%attr(755,root,root) %{_libdir}/%{name}
25890c53
ER
295%{_desktopdir}/kodi.desktop
296%{_iconsdir}/hicolor/*/apps/%{name}.png
297%{_datadir}/xsessions/kodi.desktop
298
299# legacy xbmc compatibility links
300%attr(755,root,root) %{_bindir}/xbmc
301%attr(755,root,root) %{_bindir}/xbmc-standalone
25890c53 302%{_datadir}/xsessions/xbmc.desktop
This page took 0.138135 seconds and 4 git commands to generate.