]> git.pld-linux.org Git - packages/kodi.git/blame - kodi.spec
ensure consistent build: add all '--disable-' options
[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:
928406b7 52%bcond_with 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
928406b7
ER
63Source1: https://github.com/xbmc/FFmpeg/archive/2.4.4-Helix.tar.gz
64# Source1-md5: 19b5d29ef6b5a6fc202c652fe3905d9b
d2f0f4c7 65Patch0: jpeglib-boolean.patch
92b53b2c 66URL: http://kodi.tv/
b85db44b
AF
67BuildRequires: Mesa-libGLU-devel
68BuildRequires: OpenGL-devel
658b3aff 69BuildRequires: SDL2-devel
18b90c81
SP
70BuildRequires: SDL_image-devel
71BuildRequires: SDL_mixer-devel
72BuildRequires: alsa-lib-devel
73BuildRequires: autoconf
74BuildRequires: automake
75BuildRequires: avahi-devel
b85db44b 76BuildRequires: bluez-libs-devel >= 4.99
5a2f2b01 77BuildRequires: boost-devel
18b90c81
SP
78BuildRequires: bzip2-devel
79BuildRequires: cmake
80BuildRequires: curl-devel
81BuildRequires: dbus-devel
501e1d3e 82BuildRequires: doxygen
c462fd57 83BuildRequires: ffmpeg-devel
5a2f2b01 84BuildRequires: flac-devel
18b90c81
SP
85BuildRequires: fontconfig-devel
86BuildRequires: freetype-devel
87BuildRequires: fribidi-devel
88BuildRequires: gawk
63ff963e 89BuildRequires: gettext-autopoint
0747666f 90BuildRequires: gettext-tools
18b90c81
SP
91BuildRequires: glew-devel
92BuildRequires: gperf
37fbe511 93%{?with_hal:BuildRequires: hal-devel}
5a2f2b01 94BuildRequires: jasper-devel
37fbe511 95BuildRequires: jre
b85db44b 96BuildRequires: libass-devel
37fbe511
KK
97BuildRequires: libbluray-devel >= 0.2.1
98BuildRequires: libcap-devel
18b90c81 99BuildRequires: libcdio-devel
c0d69361 100%{?with_libcec:BuildRequires: libcec-devel}
1aef2bca 101%ifarch i686 pentium4 athlon %{x8664}
5f83fc0f 102BuildRequires: libcrystalhd-devel
1aef2bca 103%endif
b85db44b 104BuildRequires: libgcrypt-devel
18b90c81 105BuildRequires: libjpeg-devel
45a200ab 106BuildRequires: libltdl-devel
18b90c81 107BuildRequires: libmad-devel
63ff963e 108BuildRequires: libmicrohttpd-devel
63ff963e 109BuildRequires: libmodplug-devel
c462fd57 110BuildRequires: libmpeg2-devel
18b90c81 111BuildRequires: libogg-devel
b85db44b 112BuildRequires: libplist-devel
5a2f2b01 113BuildRequires: libpng-devel
b85db44b 114BuildRequires: librtmp-devel
18b90c81
SP
115BuildRequires: libsamplerate-devel
116BuildRequires: libsmbclient-devel
b85db44b 117BuildRequires: libssh-devel
5a2f2b01 118BuildRequires: libtiff-devel
119BuildRequires: libtool
b85db44b 120BuildRequires: libva-devel
5f83fc0f 121BuildRequires: libva-glx-devel
5a2f2b01 122BuildRequires: libvdpau-devel
18b90c81 123BuildRequires: libvorbis-devel
501e1d3e 124BuildRequires: libxslt-devel
5a2f2b01 125BuildRequires: lzo-devel
126BuildRequires: mysql-devel
c1b45330 127%ifarch %{ix86}
26cae375 128BuildRequires: nasm
c1b45330 129%endif
18b90c81 130BuildRequires: openssl-devel
63ff963e 131BuildRequires: pcre-cxx-devel
5a2f2b01 132BuildRequires: pkgconfig
18b90c81 133BuildRequires: pulseaudio-devel
b85db44b 134BuildRequires: python-devel >= 2.4
3a71016a 135BuildRequires: rpm-pythonprov
6f41c837 136BuildRequires: rpmbuild(macros) >= 1.566
c462fd57 137BuildRequires: sed >= 4.0
18b90c81 138BuildRequires: sqlite3-devel
37fbe511
KK
139BuildRequires: swig
140BuildRequires: taglib-devel >= 1.8
7613a43d 141BuildRequires: tinyxml-devel
b85db44b 142BuildRequires: udev-devel
5a2f2b01 143BuildRequires: unzip
b85db44b
AF
144BuildRequires: xorg-lib-libX11-devel
145BuildRequires: xorg-lib-libXext-devel
5a2f2b01 146BuildRequires: xorg-lib-libXinerama-devel
b85db44b 147BuildRequires: xorg-lib-libXmu-devel
18b90c81 148BuildRequires: xorg-lib-libXrandr-devel
b85db44b 149BuildRequires: xorg-lib-libXt-devel
5a2f2b01 150BuildRequires: xorg-lib-libXtst-devel
b85db44b 151BuildRequires: yajl-devel
501e1d3e 152BuildRequires: yasm
18b90c81
SP
153BuildRequires: zip
154BuildRequires: zlib-devel
b85db44b
AF
155#https://github.com/sahlberg/libnfs
156#BuildRequires: libnfs-devel
157#http://sites.google.com/site/alexthepuffin/home
158#BuildRequires: afpfs-ng-devel
159#http://mirrors.xbmc.org/build-deps/darwin-libs/libshairport-1.2.0.20310_lib.tar.gz
160#https://github.com/albertz/shairport
161#BuildRequires: libshairport
63ff963e 162Requires: /usr/bin/glxinfo
f4f8f308 163Requires: SDL >= 1.2.14-5
a58652d4
SP
164Requires: lsb-release
165Requires: xorg-app-xdpyinfo
06c1bb12 166# dlopened libraries:
d61811e9 167# grep 'DLL_PATH_.*lib.*\.so' xbmc/DllPaths_generated.h | grep -v special://
06c1bb12
ER
168Requires: curl-libs
169Requires: libass
170Requires: libbluray
171Requires: libmodplug
172Requires: libmpeg2-libs
173Requires: libogg
174Requires: libplist
175Requires: libvorbis
92b53b2c 176Obsoletes: xbmc < 14.0
18b90c81
SP
177BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
178
179%description
d61811e9
ER
180Kodi Entertainment Center (formerly XBMC) is a free and open-source
181media player software developed by the XBMC Foundation, a non-profit
182technology consortium. Kodi is available for multiple operating
183systems and hardware platforms, with a software 10-foot user interface
184for use with televisions and remote controls. It allows users to play
185and view most videos, music, such as podcasts from the internet, and
186all common digital media files from local and network storage media.
18b90c81
SP
187
188%prep
92b53b2c 189%setup -q -n xbmc-%{version}-%{codename}
bfa116d7 190%patch0 -p1
18b90c81 191
928406b7
ER
192%if %{with system_ffmpeg}
193ln -s %{SOURCE1} tools/depends/target/ffmpeg
194%endif
195
18b90c81
SP
196%build
197./bootstrap
65712ad3 198%configure \
ace9791d 199 --disable-silent-rules \
51b524ca 200 --disable-debug \
ace9791d 201 --disable-ccache \
928406b7 202 --with-ffmpeg=%{!?with_system_ffmpeg:force}%{?with_system_ffmpeg:shared} \
c0d69361
ER
203 %{__enable_disable afpclient} \
204 %{__enable_disable airplay} \
205 %{__enable_disable airtunes} \
ceb94d36
ER
206 %{__enable_disable alsa} \
207 %{__enable_disable avahi} \
208 %{__enable_disable dbus} \
98f23c16
ER
209 %{__enable_disable dvdcss} \
210 %{__enable_disable fishbmc} \
211 %{__enable_disable gl} \
b85db44b 212 %{__enable_disable goom} \
98f23c16
ER
213 %{__enable_disable gtest} \
214 %{__enable_disable gtexturepacker} \
37fbe511 215 %{__enable_disable hal} \
98f23c16 216 %{__enable_disable joystick} \
c0d69361 217 %{__enable_disable libcap} \
98f23c16 218 %{__enable_disable libcec} \
c0d69361
ER
219 %{__enable_disable libusb} \
220 %{__enable_disable mdnsembedded} \
ceb94d36 221 %{__enable_disable mysql} \
c0d69361 222 %{__enable_disable nfs} \
ceb94d36 223 %{__enable_disable non_free non-free} \
c0d69361 224 %{__enable_disable openmax} \
ceb94d36 225 %{__enable_disable optical_drive optical-drive} \
98f23c16 226 %{__enable_disable projectm} \
c0d69361 227 %{__enable_disable pulse} \
98f23c16 228 %{__enable_disable rsxs} \
c0d69361 229 %{__enable_disable rtmp} \
ceb94d36 230 %{__enable_disable samba} \
c0d69361 231 %{__enable_disable sdl} \
98f23c16 232 %{__enable_disable spectrum} \
ceb94d36 233 %{__enable_disable ssh} \
c0d69361 234 %{__enable_disable udev} \
ceb94d36 235 %{__enable_disable upnp} \
c0d69361
ER
236 %{__enable_disable vaapi} \
237 %{__enable_disable vdpau} \
238 %{__enable_disable vtbdecoder} \
98f23c16 239 %{__enable_disable waveform} \
ceb94d36 240 %{__enable_disable webserver} \
98f23c16
ER
241 %{__enable_disable x11} \
242 %{__enable_disable xrandr} \
243 %{nil}
68612b1e 244
ace9791d 245%{__make}
18b90c81
SP
246
247%install
248rm -rf $RPM_BUILD_ROOT
18b90c81 249%{__make} install \
92b96980 250 DESTDIR=$RPM_BUILD_ROOT
18b90c81 251
25890c53
ER
252%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
253
254# no -devel package yet
255%{__rm} -r $RPM_BUILD_ROOT%{_includedir}/kodi
256%{__rm} -r $RPM_BUILD_ROOT%{_includedir}/xbmc
257
18b90c81
SP
258%clean
259rm -rf $RPM_BUILD_ROOT
260
261%files
262%defattr(644,root,root,755)
25890c53
ER
263%doc README.md docs/README.linux
264%attr(755,root,root) %{_bindir}/kodi
265%attr(755,root,root) %{_bindir}/kodi-standalone
18b90c81 266%{_datadir}/%{name}
92b96980 267%attr(755,root,root) %{_libdir}/%{name}
25890c53
ER
268%{_desktopdir}/kodi.desktop
269%{_iconsdir}/hicolor/*/apps/%{name}.png
270%{_datadir}/xsessions/kodi.desktop
271
272# legacy xbmc compatibility links
273%attr(755,root,root) %{_bindir}/xbmc
274%attr(755,root,root) %{_bindir}/xbmc-standalone
275%{_libdir}/xbmc
276%{_datadir}/xbmc
277%{_datadir}/xsessions/xbmc.desktop
This page took 0.188865 seconds and 4 git commands to generate.