]> git.pld-linux.org Git - packages/kodi.git/blame - kodi.spec
fix system ffmpeg build, enable it
[packages/kodi.git] / kodi.spec
CommitLineData
18b90c81 1# TODO:
3a71016a 2# - fix build flags - some files are compiled with -O3 and without rpm*flags
c1b45330 3# - fix linking argument order
92b96980 4# - add and/or fix users/groups permissions
63ff963e 5# - split to subpackages?
928406b7
ER
6# - system ffmpeg (--with-ffmpeg=shared), DVDDemuxFFmpeg.cpp:542:41: error: 'av_read_frame_flush' was not declared in this scope
7# - bundled ffmpeg build (tools/depends/target/ffmpeg/autobuild.sh) enables nonfree & gpl!
18b90c81 8#
92b96980 9# Conditional build:
ceb94d36 10# Features:
c0d69361
ER
11%bcond_with afpclient # AFP support via libafpclient
12%bcond_without airplay # AirPlay support
13%bcond_with airtunes # AirTunes support
ceb94d36
ER
14%bcond_without alsa # ALSA support (only for linux/freebsd)
15%bcond_without avahi # Avahi support (default is enabled if libavahi-common and libavahi-client is found)
16%bcond_without dbus # DBUS support
17%bcond_without dvdcss # DVDCSS support
98f23c16
ER
18%bcond_without fishbmc # FishBMC visualisation
19%bcond_without gl # OpenGL rendering
20%bcond_without goom # GOOM visualisation
ceb94d36
ER
21%bcond_with gtest # configure Google Test Framework
22%bcond_with hal # build with HAL
98f23c16 23%bcond_without joystick # SDL joystick support
c0d69361
ER
24%bcond_without libcap # libcap support
25%bcond_with libcec # libcec support
26%bcond_with libusb # libusb support
27%bcond_with mdnsembedded # mDNSEmbedded support
ceb94d36 28%bcond_without mysql # MySQL
c0d69361 29%bcond_with nfs # NFS support via libnfs
ceb94d36 30%bcond_without non_free # componentents with non-compliant licenses
c0d69361 31%bcond_with openmax # OpenMax decoding, requires OpenGLES
ceb94d36 32%bcond_without optical_drive # optical drive
98f23c16 33%bcond_without projectm # ProjectM visualisation
c0d69361 34%bcond_without pulse # PulseAudio support
98f23c16 35%bcond_without rsxs # really slick X screensavers
c0d69361 36%bcond_without rtmp # RTMP support via librtmp
ceb94d36 37%bcond_without samba # SAMBA support (default is enabled)
c0d69361 38%bcond_without sdl # SDL
98f23c16 39%bcond_without spectrum # Spectrum visualisation
ceb94d36 40%bcond_without ssh # SSH SFTP support (default is enabled)
98f23c16 41%bcond_without texturepacker # texturepacker support
c0d69361 42%bcond_without udev # udev support
ceb94d36 43%bcond_without upnp # UPnP support (default is enabled)
c0d69361
ER
44%bcond_without vaapi # VAAPI decoding
45%bcond_without vdpau # VDPAU decoding
46%bcond_with vtbdecoder # VTBDecoder decoding (VTB Decoder not supported on this platform)
98f23c16 47%bcond_without waveform # Waveform visualisation
ceb94d36 48%bcond_without webserver # webserver
98f23c16
ER
49%bcond_without x11 # x11 'Linux Only'
50%bcond_without xrandr # XRandR support
ceb94d36 51# System libs:
6e5f6f0e 52%bcond_without system_ffmpeg # build with system ffmpeg
92b96980 53
92b53b2c 54%define codename Helix
d61811e9 55Summary: Kodi is a free and open source media-player and entertainment hub
92b53b2c
ER
56Name: kodi
57Version: 14.0
58Release: 0.1
68612b1e 59License: GPL v2+ and GPL v3+
18b90c81 60Group: Applications/Multimedia
92b53b2c
ER
61Source0: http://mirrors.kodi.tv/releases/source/%{version}-%{codename}.tar.gz
62# Source0-md5: 9717c539789789b8aeaf1dcfdb9f2c69
72cf5436 63Source1: https://github.com/xbmc/FFmpeg/archive/2.4.4-%{codename}.tar.gz
928406b7 64# Source1-md5: 19b5d29ef6b5a6fc202c652fe3905d9b
d2f0f4c7 65Patch0: jpeglib-boolean.patch
6e5f6f0e 66Patch1: dvddemux-ffmpeg.patch
92b53b2c 67URL: http://kodi.tv/
b85db44b
AF
68BuildRequires: Mesa-libGLU-devel
69BuildRequires: OpenGL-devel
658b3aff 70BuildRequires: SDL2-devel
18b90c81
SP
71BuildRequires: SDL_image-devel
72BuildRequires: SDL_mixer-devel
73BuildRequires: alsa-lib-devel
74BuildRequires: autoconf
75BuildRequires: automake
76BuildRequires: avahi-devel
b85db44b 77BuildRequires: bluez-libs-devel >= 4.99
5a2f2b01 78BuildRequires: boost-devel
18b90c81
SP
79BuildRequires: bzip2-devel
80BuildRequires: cmake
81BuildRequires: curl-devel
82BuildRequires: dbus-devel
501e1d3e 83BuildRequires: doxygen
c462fd57 84BuildRequires: ffmpeg-devel
5a2f2b01 85BuildRequires: flac-devel
18b90c81
SP
86BuildRequires: fontconfig-devel
87BuildRequires: freetype-devel
88BuildRequires: fribidi-devel
89BuildRequires: gawk
63ff963e 90BuildRequires: gettext-autopoint
0747666f 91BuildRequires: gettext-tools
18b90c81
SP
92BuildRequires: glew-devel
93BuildRequires: gperf
37fbe511 94%{?with_hal:BuildRequires: hal-devel}
5a2f2b01 95BuildRequires: jasper-devel
37fbe511 96BuildRequires: jre
b85db44b 97BuildRequires: libass-devel
37fbe511
KK
98BuildRequires: libbluray-devel >= 0.2.1
99BuildRequires: libcap-devel
18b90c81 100BuildRequires: libcdio-devel
c0d69361 101%{?with_libcec:BuildRequires: libcec-devel}
1aef2bca 102%ifarch i686 pentium4 athlon %{x8664}
5f83fc0f 103BuildRequires: libcrystalhd-devel
1aef2bca 104%endif
b85db44b 105BuildRequires: libgcrypt-devel
18b90c81 106BuildRequires: libjpeg-devel
45a200ab 107BuildRequires: libltdl-devel
18b90c81 108BuildRequires: libmad-devel
63ff963e 109BuildRequires: libmicrohttpd-devel
63ff963e 110BuildRequires: libmodplug-devel
c462fd57 111BuildRequires: libmpeg2-devel
18b90c81 112BuildRequires: libogg-devel
b85db44b 113BuildRequires: libplist-devel
5a2f2b01 114BuildRequires: libpng-devel
b85db44b 115BuildRequires: librtmp-devel
18b90c81
SP
116BuildRequires: libsamplerate-devel
117BuildRequires: libsmbclient-devel
b85db44b 118BuildRequires: libssh-devel
5a2f2b01 119BuildRequires: libtiff-devel
120BuildRequires: libtool
b85db44b 121BuildRequires: libva-devel
5f83fc0f 122BuildRequires: libva-glx-devel
5a2f2b01 123BuildRequires: libvdpau-devel
18b90c81 124BuildRequires: libvorbis-devel
501e1d3e 125BuildRequires: libxslt-devel
5a2f2b01 126BuildRequires: lzo-devel
127BuildRequires: mysql-devel
c1b45330 128%ifarch %{ix86}
26cae375 129BuildRequires: nasm
c1b45330 130%endif
18b90c81 131BuildRequires: openssl-devel
63ff963e 132BuildRequires: pcre-cxx-devel
5a2f2b01 133BuildRequires: pkgconfig
18b90c81 134BuildRequires: pulseaudio-devel
b85db44b 135BuildRequires: python-devel >= 2.4
3a71016a 136BuildRequires: rpm-pythonprov
6f41c837 137BuildRequires: rpmbuild(macros) >= 1.566
c462fd57 138BuildRequires: sed >= 4.0
18b90c81 139BuildRequires: sqlite3-devel
37fbe511
KK
140BuildRequires: swig
141BuildRequires: taglib-devel >= 1.8
7613a43d 142BuildRequires: tinyxml-devel
b85db44b 143BuildRequires: udev-devel
5a2f2b01 144BuildRequires: unzip
b85db44b
AF
145BuildRequires: xorg-lib-libX11-devel
146BuildRequires: xorg-lib-libXext-devel
5a2f2b01 147BuildRequires: xorg-lib-libXinerama-devel
b85db44b 148BuildRequires: xorg-lib-libXmu-devel
18b90c81 149BuildRequires: xorg-lib-libXrandr-devel
b85db44b 150BuildRequires: xorg-lib-libXt-devel
5a2f2b01 151BuildRequires: xorg-lib-libXtst-devel
b85db44b 152BuildRequires: yajl-devel
501e1d3e 153BuildRequires: yasm
18b90c81
SP
154BuildRequires: zip
155BuildRequires: zlib-devel
b85db44b
AF
156#https://github.com/sahlberg/libnfs
157#BuildRequires: libnfs-devel
158#http://sites.google.com/site/alexthepuffin/home
159#BuildRequires: afpfs-ng-devel
160#http://mirrors.xbmc.org/build-deps/darwin-libs/libshairport-1.2.0.20310_lib.tar.gz
161#https://github.com/albertz/shairport
162#BuildRequires: libshairport
63ff963e 163Requires: /usr/bin/glxinfo
f4f8f308 164Requires: SDL >= 1.2.14-5
a58652d4
SP
165Requires: lsb-release
166Requires: xorg-app-xdpyinfo
06c1bb12 167# dlopened libraries:
d61811e9 168# grep 'DLL_PATH_.*lib.*\.so' xbmc/DllPaths_generated.h | grep -v special://
06c1bb12
ER
169Requires: curl-libs
170Requires: libass
171Requires: libbluray
172Requires: libmodplug
173Requires: libmpeg2-libs
174Requires: libogg
175Requires: libplist
176Requires: libvorbis
92b53b2c 177Obsoletes: xbmc < 14.0
18b90c81
SP
178BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
179
180%description
d61811e9
ER
181Kodi Entertainment Center (formerly XBMC) is a free and open-source
182media player software developed by the XBMC Foundation, a non-profit
183technology consortium. Kodi is available for multiple operating
184systems and hardware platforms, with a software 10-foot user interface
185for use with televisions and remote controls. It allows users to play
186and view most videos, music, such as podcasts from the internet, and
187all common digital media files from local and network storage media.
18b90c81
SP
188
189%prep
92b53b2c 190%setup -q -n xbmc-%{version}-%{codename}
bfa116d7 191%patch0 -p1
6e5f6f0e 192%patch1 -p0
18b90c81 193
72cf5436
ER
194%if %{without system_ffmpeg}
195ln -s %{SOURCE1} tools/depends/target/ffmpeg/ffmpeg-2.4.4-%{codename}.tar.gz
928406b7
ER
196%endif
197
18b90c81
SP
198%build
199./bootstrap
65712ad3 200%configure \
ace9791d 201 --disable-silent-rules \
51b524ca 202 --disable-debug \
ace9791d 203 --disable-ccache \
928406b7 204 --with-ffmpeg=%{!?with_system_ffmpeg:force}%{?with_system_ffmpeg:shared} \
c0d69361
ER
205 %{__enable_disable afpclient} \
206 %{__enable_disable airplay} \
207 %{__enable_disable airtunes} \
ceb94d36
ER
208 %{__enable_disable alsa} \
209 %{__enable_disable avahi} \
210 %{__enable_disable dbus} \
98f23c16
ER
211 %{__enable_disable dvdcss} \
212 %{__enable_disable fishbmc} \
213 %{__enable_disable gl} \
b85db44b 214 %{__enable_disable goom} \
98f23c16
ER
215 %{__enable_disable gtest} \
216 %{__enable_disable gtexturepacker} \
37fbe511 217 %{__enable_disable hal} \
98f23c16 218 %{__enable_disable joystick} \
c0d69361 219 %{__enable_disable libcap} \
98f23c16 220 %{__enable_disable libcec} \
c0d69361
ER
221 %{__enable_disable libusb} \
222 %{__enable_disable mdnsembedded} \
ceb94d36 223 %{__enable_disable mysql} \
c0d69361 224 %{__enable_disable nfs} \
ceb94d36 225 %{__enable_disable non_free non-free} \
c0d69361 226 %{__enable_disable openmax} \
ceb94d36 227 %{__enable_disable optical_drive optical-drive} \
98f23c16 228 %{__enable_disable projectm} \
c0d69361 229 %{__enable_disable pulse} \
98f23c16 230 %{__enable_disable rsxs} \
c0d69361 231 %{__enable_disable rtmp} \
ceb94d36 232 %{__enable_disable samba} \
c0d69361 233 %{__enable_disable sdl} \
98f23c16 234 %{__enable_disable spectrum} \
ceb94d36 235 %{__enable_disable ssh} \
c0d69361 236 %{__enable_disable udev} \
ceb94d36 237 %{__enable_disable upnp} \
c0d69361
ER
238 %{__enable_disable vaapi} \
239 %{__enable_disable vdpau} \
240 %{__enable_disable vtbdecoder} \
98f23c16 241 %{__enable_disable waveform} \
ceb94d36 242 %{__enable_disable webserver} \
98f23c16
ER
243 %{__enable_disable x11} \
244 %{__enable_disable xrandr} \
245 %{nil}
68612b1e 246
ace9791d 247%{__make}
18b90c81
SP
248
249%install
250rm -rf $RPM_BUILD_ROOT
18b90c81 251%{__make} install \
92b96980 252 DESTDIR=$RPM_BUILD_ROOT
18b90c81 253
25890c53
ER
254%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
255
256# no -devel package yet
257%{__rm} -r $RPM_BUILD_ROOT%{_includedir}/kodi
258%{__rm} -r $RPM_BUILD_ROOT%{_includedir}/xbmc
259
18b90c81
SP
260%clean
261rm -rf $RPM_BUILD_ROOT
262
263%files
264%defattr(644,root,root,755)
25890c53
ER
265%doc README.md docs/README.linux
266%attr(755,root,root) %{_bindir}/kodi
267%attr(755,root,root) %{_bindir}/kodi-standalone
18b90c81 268%{_datadir}/%{name}
92b96980 269%attr(755,root,root) %{_libdir}/%{name}
25890c53
ER
270%{_desktopdir}/kodi.desktop
271%{_iconsdir}/hicolor/*/apps/%{name}.png
272%{_datadir}/xsessions/kodi.desktop
273
274# legacy xbmc compatibility links
275%attr(755,root,root) %{_bindir}/xbmc
276%attr(755,root,root) %{_bindir}/xbmc-standalone
277%{_libdir}/xbmc
278%{_datadir}/xbmc
279%{_datadir}/xsessions/xbmc.desktop
This page took 0.070027 seconds and 4 git commands to generate.