Projects
Multimedia
kodi
kodi.spec
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File kodi.spec of Package kodi (Revision 25)
Currently displaying revision
25
,
Show latest
# # spec file for package kodi # # Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # Please edit kodi.spec and kodi.changes only. *-noX.* files are generated from # kodi.* files with the pre_checkin.sh script %define kodi_version Jarvis %define _kodi_addons_dir %{_datadir}/kodi/addons # set this parameter to enable building Kodi with ccache, debug information, etc. %define dev_build 0 # kodi can be built without X support when openGL ES is used (mainly used on ARM boards used as media center) %define noX_build 0 %if %{noX_build} # no X build needs openGL ES %bcond_with enable_opengl %bcond_without enable_opengles %else %ifarch %arm armv6l armv6hl %bcond_with enable_opengl %bcond_without enable_opengles %else %bcond_without enable_opengl %bcond_with enable_opengles %endif %endif %define kodi_platform none %define kodi_player none Name: kodi Version: 16.0 Release: 0 Summary: Media center (formerly known as XBMC) License: GPL-2.0+ and GPL-3.0+ Group: Productivity/Multimedia/Video/Players Url: http://kodi.tv/ Source0: https://github.com/xbmc/xbmc/archive/%{version}-%{kodi_version}.tar.gz Source1: kodi.SuSEFirewall2 Source2: crossguid-8f399e8bd4.tar.gz # AUTO-GENERATED using get_version.sh Source3: kodi.VERSION Source10: kodi.service Source11: kodi-noX.service Patch1: no-xbmc-symbolic-link.patch Patch2: kodi-texturepacker.patch Patch3: crossguid_build64.patch BuildRequires: avahi-devel BuildRequires: boost-devel BuildRequires: byacc BuildRequires: ccache # needed to delete the fixed rpath introduced by smbclient BuildRequires: chrpath BuildRequires: cmake BuildRequires: desktop-file-utils BuildRequires: doxygen BuildRequires: fdupes BuildRequires: flex %if %{with enable_opengl} BuildRequires: ftgl-devel %endif BuildRequires: gcc-c++ BuildRequires: gettext BuildRequires: giflib-devel BuildRequires: glibc-devel BuildRequires: gmp-devel BuildRequires: gperf BuildRequires: hicolor-icon-theme BuildRequires: java BuildRequires: libcap-devel %ifarch %ix86 x86_64 BuildRequires: libcrystalhd-devel %endif BuildRequires: libfaac-devel BuildRequires: libgcrypt-devel BuildRequires: libgpg-error-devel BuildRequires: libjasper-devel BuildRequires: libjpeg-devel BuildRequires: libmp3lame-devel BuildRequires: libmysqlclient-devel #BuildRequires: libsidplay2-1 BuildRequires: libstdc++-devel BuildRequires: libtool BuildRequires: libyajl-devel BuildRequires: lzo-devel BuildRequires: nasm BuildRequires: readline-devel BuildRequires: shairplay-devel #BuildRequires: sidplay-libs-devel BuildRequires: swig BuildRequires: tinyxml-devel BuildRequires: unzip %if !%{noX_build} BuildRequires: xorg-x11-devel %endif BuildRequires: yasm BuildRequires: zip BuildRequires: pkg-config BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(bluez) BuildRequires: pkgconfig(bzip2) BuildRequires: pkgconfig(dcadec) BuildRequires: pkgconfig(dvdread) BuildRequires: pkgconfig(enca) BuildRequires: pkgconfig(expat) BuildRequires: pkgconfig(flac) BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(fribidi) %if %{with enable_opengl} BuildRequires: pkgconfig(glew) %endif BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gnutls) BuildRequires: pkgconfig(libass) >= 0.9.7 BuildRequires: pkgconfig(libavcodec) = 56.60.100 BuildRequires: pkgconfig(libavdevice) = 56.4.100 BuildRequires: pkgconfig(libavfilter) = 5.40.101 BuildRequires: pkgconfig(libavformat) = 56.40.101 BuildRequires: pkgconfig(libavutil) = 54.31.100 BuildRequires: pkgconfig(libbluray) >= 0.7.0 BuildRequires: pkgconfig(libcdio) BuildRequires: pkgconfig(libcec) >= 3.0.0 BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(libdca) BuildRequires: pkgconfig(libhdhomerun) BuildRequires: pkgconfig(libmicrohttpd) BuildRequires: pkgconfig(libmodplug) BuildRequires: pkgconfig(libmpeg2) BuildRequires: pkgconfig(libmpg123) BuildRequires: pkgconfig(libnfs) BuildRequires: pkgconfig(libpcre) BuildRequires: pkgconfig(libpcrecpp) BuildRequires: pkgconfig(libplist) BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(librtmp) BuildRequires: pkgconfig(libssh) BuildRequires: pkgconfig(libswresample) = 1.2.101 BuildRequires: pkgconfig(libtiff-4) BuildRequires: pkgconfig(libudev) %if %{with enable_opengl} BuildRequires: pkgconfig(libva) %endif BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(libxslt) BuildRequires: pkgconfig(mad) BuildRequires: pkgconfig(nettle) BuildRequires: pkgconfig(ogg) BuildRequires: pkgconfig(python) BuildRequires: pkgconfig(samplerate) %if !%{noX_build} BuildRequires: pkgconfig(sdl2) %endif BuildRequires: pkgconfig(smbclient) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(taglib) >= 1.8 BuildRequires: pkgconfig(tinyxml2) %if 0%{?suse_version} > 1320 # Otherwise fails with configure error on libcec because udev.pc file is not found BuildRequires: pkgconfig(udev) %endif BuildRequires: pkgconfig(uuid) %if %{with enable_opengl} BuildRequires: pkgconfig(vdpau) %endif BuildRequires: pkgconfig(vorbis) BuildRequires: pkgconfig(zlib) %if %{with enable_opengles} %if "%{kodi_platform}" == "none" BuildRequires: Mesa-libEGL-devel BuildRequires: Mesa-libGLESv2-devel %else %if ("%{kodi_platform}" == "raspberry-pi") || ("%{kodi_platform}" == "raspberry-pi2") BuildRequires: raspberrypi-userland-devel %endif %endif %endif # kodi needs libnfs to access nfs sources, it is not automatically required Requires: libnfs # kodi needs the same libtag version which was used to build against %requires_eq libtag1 # Manage player deps %if %{kodi_player} == "omxplayer" Requires: omxplayer %endif # glxinfo is needed to check hw accel %if 0%{?suse_version} >= 1220 %if !%{noX_build} Requires: Mesa-demo-x Requires: xdpyinfo %endif %endif Obsoletes: xbmc < %{version} Provides: xbmc = %{version} BuildRoot: %{_tmppath}/%{name}-%{version}-build ExcludeArch: ppc64 %if %{noX_build} Conflicts: kodi %else Conflicts: kodi-noX %endif %description KODI media center is a free cross-platform media-player jukebox and entertainment hub. KODI can play a spectrum of of multimedia formats, and featuring playlist, audio visualizations, slideshow, and weather forecast functions, together third-party plugins. %package devel Summary: Kodi Media center devel files Group: Development/Languages/C and C++ Requires: %{name} BuildArch: noarch %if %{noX_build} Conflicts: kodi-devel %else Conflicts: kodi-noX-devel %endif %description devel Development files for Kodi Media Center %prep %setup -q -n xbmc-%{version}-%{kodi_version} %patch1 %patch2 %patch3 # Remove build time references so build-compare can do its work FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%b %%e %%Y') FAKE_BUILDTIME=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%H:%%M:%%S') for file in xbmc/GUIInfoManager.cpp xbmc/Application.cpp xbmc/utils/SystemInfo.cpp; do sed -i -e "s/__DATE__/\"$FAKE_BUILDDATE\"/" -e "s/__TIME__/\"$FAKE_BUILDTIME\"/" $file done # Set the final version string cp %{SOURCE3} VERSION # avoid long delays when powerkit isn't running sed -i \ -e '/dbus_connection_send_with_reply_and_block/s:-1:3000:' \ xbmc/linux/*.cpp cp %{SOURCE2} tools/depends/target/crossguid %build # build crossguid make -C tools/depends/target/crossguid PREFIX=$PWD/tools/depends/target/crossguid LIBDIR=%{_lib} chmod +x bootstrap ./bootstrap # add crossguid to INCLUDES and LIBS export INCLUDES="-I%{_builddir}/xbmc-%{version}-%{kodi_version}/tools/depends/target/crossguid/include" export LIBS="-L%{_builddir}/xbmc-%{version}-%{kodi_version}/tools/depends/target/crossguid/%{_lib} -lcrossguid -luuid" %if "%{kodi_platform}" == "raspberry-pi" || "%{kodi_platform}" == "raspberry-pi2" export CXXFLAGS="$CXXFLAGS -I%{_includedir}/interface/vcos/pthreads -I%{_includedir}/interface/vmcs_host/linux" %endif %configure \ --with-ffmpeg=shared \ --enable-airplay \ --enable-alsa \ --enable-avahi \ --enable-libcap \ --enable-libcec \ --enable-libusb \ --enable-mid \ --enable-mysql \ --enable-nfs \ --enable-pulse \ --enable-rtmp \ --enable-samba \ --enable-shared \ --enable-ssh \ --enable-texturepacker \ --enable-upnp \ --enable-webserver \ %if %{with enable_opengl} --enable-vaapi \ --enable-vdpau \ --enable-gl \ %else --disable-vaapi \ --disable-vdpau \ --disable-gl \ %endif %if %{with enable_opengles} --enable-gles \ %else --disable-gles \ %endif %if "%{kodi_platform}" != "none" --disable-libbluray \ --with-platform=%{kodi_platform} \ %endif --enable-libbluray \ %if "%{kodi_player}" != "none" --enable-player="%{kodi_player}" \ %endif %ifarch armv7l armv7hl --enable-tegra \ --disable-neon \ %endif %if %{noX_build} --disable-x11 \ --disable-xrandr \ --disable-sdl \ --disable-joystick \ %endif %if %{dev_build} --enable-debug \ --enable-ccache \ %endif %if !%{dev_build} --disable-debug \ --disable-ccache \ %endif --disable-optimizations \ --disable-static make %{?_smp_mflags} %install make DESTDIR=%{buildroot} install %{?_smp_mflags} # SuSEfirewall service description install -D -m 644 %{_sourcedir}/kodi.SuSEFirewall2 %{buildroot}%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/kodi # Systemd service file %if %{noX_build} install -m 0644 -D %{SOURCE11} %{buildroot}/%{_unitdir}/kodi-noX.service %else install -m 0644 -D %{SOURCE10} %{buildroot}/%{_unitdir}/kodi.service %endif # remove the doc files from unversioned /usr/share/doc/kodi, they should be in versioned docdir rm -r %{buildroot}/%{_datadir}/doc/ # copy manpages install -m 644 -D docs/manpages/kodi-standalone.1 %{buildroot}%{_mandir}/man1/kodi-standalone.1 install -m 644 -D docs/manpages/kodi.bin.1 %{buildroot}%{_mandir}/man1/kodi.1 # remove win32 source files rm -f %{buildroot}%{_kodi_addons_dir}/library.kodi.addon/dlfcn-win32.cpp rm -f %{buildroot}%{_kodi_addons_dir}/library.kodi.addon/dlfcn-win32.h rm -f %{buildroot}%{_kodi_addons_dir}/library.xbmc.addon/dlfcn-win32.cpp rm -f %{buildroot}%{_kodi_addons_dir}/library.xbmc.addon/dlfcn-win32.h # remove duplicate header files rm -f %{buildroot}%{_kodi_addons_dir}/library.kodi.addon/libXBMC_addon.h rm -f %{buildroot}%{_kodi_addons_dir}/library.xbmc.addon/libXBMC_addon.h rm -f %{buildroot}%{_kodi_addons_dir}/library.kodi.codec/libXBMC_codec.h rm -f %{buildroot}%{_kodi_addons_dir}/library.xbmc.codec/libXBMC_codec.h rm -f %{buildroot}%{_kodi_addons_dir}/library.kodi.gui/libXBMC_gui.h rm -f %{buildroot}%{_kodi_addons_dir}/library.xbmc.gui/libXBMC_gui.h rm -f %{buildroot}%{_kodi_addons_dir}/library.kodi.pvr/libXBMC_pvr.h rm -f %{buildroot}%{_kodi_addons_dir}/library.xbmc.pvr/libXBMC_pvr.h rm -f %{buildroot}%{_kodi_addons_dir}/library.kodi.guilib/libKODI_guilib.h desktop-file-install \ --dir=%{buildroot}%{_datadir}/applications \ %{buildroot}%{_datadir}/applications/kodi.desktop %fdupes %{buildroot} %files %defattr(-,root,root) %doc copying.txt LICENSE.GPL docs/README.linux %config %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/kodi %{_bindir}/kodi %dir %{_libdir}/kodi %{_libdir}/kodi/kodi.bin %if !%{noX_build} %{_libdir}/kodi/kodi-xrandr %endif %{_bindir}/kodi-standalone %dir %{_libdir}/kodi/addons %dir %{_libdir}/kodi/addons/library.xbmc.addon/ %{_libdir}/kodi/addons/library.xbmc.addon/* %dir %{_libdir}/kodi/addons/library.xbmc.codec/ %{_libdir}/kodi/addons/library.xbmc.codec/* %dir %{_libdir}/kodi/addons/library.xbmc.pvr/ %{_libdir}/kodi/addons/library.xbmc.pvr/* %{_datadir}/xsessions/kodi.desktop %{_datadir}/applications/kodi.desktop %{_datadir}/icons/hicolor/*/*/*.png %dir %{_datadir}/kodi %dir %{_datadir}/kodi/media %dir %{_datadir}/kodi/system %dir %{_libdir}/kodi/system %dir %{_datadir}/kodi/userdata %{_datadir}/kodi/media/* %{_datadir}/kodi/system/* %{_libdir}/kodi/system/* %{_datadir}/kodi/userdata/* %{_mandir}/man1/kodi.1.gz %{_mandir}/man1/kodi-standalone.1.gz %dir %{_kodi_addons_dir} %dir %{_kodi_addons_dir}/metadata.album.universal/ %{_kodi_addons_dir}/metadata.album.universal/* %dir %{_kodi_addons_dir}/metadata.artists.universal/ %{_kodi_addons_dir}/metadata.artists.universal/* %dir %{_kodi_addons_dir}/metadata.common.allmusic.com/ %{_kodi_addons_dir}/metadata.common.allmusic.com/* %dir %{_kodi_addons_dir}/metadata.common.fanart.tv/ %{_kodi_addons_dir}/metadata.common.fanart.tv/* %dir %{_kodi_addons_dir}/metadata.common.htbackdrops.com/ %{_kodi_addons_dir}/metadata.common.htbackdrops.com/* %dir %{_kodi_addons_dir}/metadata.common.imdb.com/ %{_kodi_addons_dir}/metadata.common.imdb.com/* %dir %{_kodi_addons_dir}/metadata.common.musicbrainz.org/ %{_kodi_addons_dir}/metadata.common.musicbrainz.org/* %dir %{_kodi_addons_dir}/metadata.common.themoviedb.org/ %{_kodi_addons_dir}/metadata.common.themoviedb.org/* %dir %{_kodi_addons_dir}/metadata.local/ %{_kodi_addons_dir}/metadata.local/* %dir %{_kodi_addons_dir}/metadata.themoviedb.org/ %{_kodi_addons_dir}/metadata.themoviedb.org/* %dir %{_kodi_addons_dir}/metadata.tvdb.com/ %{_kodi_addons_dir}/metadata.tvdb.com/* %dir %{_kodi_addons_dir}/repository.xbmc.org/ %{_kodi_addons_dir}/repository.xbmc.org/* %dir %{_kodi_addons_dir}/resource.uisounds.confluence/ %{_kodi_addons_dir}/resource.uisounds.confluence/* %dir %{_kodi_addons_dir}/screensaver.xbmc.builtin.black/ %{_kodi_addons_dir}/screensaver.xbmc.builtin.black/* %dir %{_kodi_addons_dir}/screensaver.xbmc.builtin.dim/ %{_kodi_addons_dir}/screensaver.xbmc.builtin.dim/* %dir %{_kodi_addons_dir}/script.module.pil/ %{_kodi_addons_dir}/script.module.pil/* %dir %{_kodi_addons_dir}/service.xbmc.versioncheck/ %{_kodi_addons_dir}/service.xbmc.versioncheck/* %dir %{_kodi_addons_dir}/skin.confluence/ %{_kodi_addons_dir}/skin.confluence/* %dir %{_kodi_addons_dir}/webinterface.default/ %{_kodi_addons_dir}/webinterface.default/* %dir %{_kodi_addons_dir}/xbmc.codec/ %{_kodi_addons_dir}/xbmc.codec/* %dir %{_kodi_addons_dir}/xbmc.addon/ %{_kodi_addons_dir}/xbmc.addon/* %dir %{_kodi_addons_dir}/xbmc.core/ %{_kodi_addons_dir}/xbmc.core/* %dir %{_kodi_addons_dir}/xbmc.gui/ %{_kodi_addons_dir}/xbmc.gui/* %dir %{_kodi_addons_dir}/xbmc.json/ %{_kodi_addons_dir}/xbmc.json/* %dir %{_kodi_addons_dir}/xbmc.metadata/ %{_kodi_addons_dir}/xbmc.metadata/* %dir %{_kodi_addons_dir}/xbmc.pvr/ %{_kodi_addons_dir}/xbmc.pvr/* %dir %{_kodi_addons_dir}/xbmc.python/ %{_kodi_addons_dir}/xbmc.python/* %dir %{_kodi_addons_dir}/audioencoder.xbmc.builtin.aac/ %{_kodi_addons_dir}/audioencoder.xbmc.builtin.aac/* %dir %{_kodi_addons_dir}/audioencoder.xbmc.builtin.wma/ %{_kodi_addons_dir}/audioencoder.xbmc.builtin.wma/* %dir %{_kodi_addons_dir}/kodi.audiodecoder/ %{_kodi_addons_dir}/kodi.audiodecoder/* %dir %{_kodi_addons_dir}/kodi.guilib/ %{_kodi_addons_dir}/kodi.guilib/* %dir %{_kodi_addons_dir}/kodi.resource/ %{_kodi_addons_dir}/kodi.resource/* %dir %{_kodi_addons_dir}/resource.language.en_gb/ %{_kodi_addons_dir}/resource.language.en_gb/* %dir %{_kodi_addons_dir}/xbmc.audioencoder/ %{_kodi_addons_dir}/xbmc.audioencoder/* %dir %{_kodi_addons_dir}/xbmc.webinterface/ %{_kodi_addons_dir}/xbmc.webinterface/* %dir %{_kodi_addons_dir}/kodi.adsp %{_kodi_addons_dir}/kodi.adsp/* %dir %{_kodi_addons_dir}/library.kodi.adsp %{_kodi_addons_dir}/library.kodi.adsp/* %dir %{_kodi_addons_dir}/library.kodi.audioengine %{_kodi_addons_dir}/library.kodi.audioengine/* %dir %{_kodi_addons_dir}/metadata.common.theaudiodb.com %{_kodi_addons_dir}/metadata.common.theaudiodb.com/* %dir %{_kodi_addons_dir}/resource.images.weathericons.default %{_kodi_addons_dir}/resource.images.weathericons.default/* %{_libdir}/kodi/addon-helpers.cmake %{_libdir}/kodi/addoptions.cmake %{_libdir}/kodi/check_target_platform.cmake %{_libdir}/kodi/handle-depends.cmake %{_libdir}/kodi/kodi-config.cmake %{_libdir}/kodi/prepare-env.cmake %{_libdir}/kodi/xbmc-config.cmake %dir %{_libdir}/kodi/addons/library.kodi.guilib/ %{_libdir}/kodi/addons/library.kodi.guilib/* %dir %{_libdir}/kodi/addons/library.kodi.adsp %{_libdir}/kodi/addons/library.kodi.adsp/* %dir %{_libdir}/kodi/addons/library.kodi.audioengine %{_libdir}/kodi/addons/library.kodi.audioengine/* %if %{noX_build} %{_unitdir}/kodi-noX.service %else %{_unitdir}/kodi.service %endif %files devel %defattr(-,root,root) %dir %{_includedir}/kodi %{_includedir}/kodi/DVDDemuxPacket.h %{_includedir}/kodi/libXBMC_addon.h %{_includedir}/kodi/libXBMC_codec.h %{_includedir}/kodi/libXBMC_pvr.h %{_includedir}/kodi/xbmc_addon_cpp_dll.h %{_includedir}/kodi/xbmc_addon_dll.h %{_includedir}/kodi/xbmc_addon_types.h %{_includedir}/kodi/xbmc_codec_types.h %{_includedir}/kodi/xbmc_epg_types.h %{_includedir}/kodi/xbmc_pvr_dll.h %{_includedir}/kodi/xbmc_pvr_types.h %{_includedir}/kodi/xbmc_scr_dll.h %{_includedir}/kodi/xbmc_scr_types.h %{_includedir}/kodi/xbmc_stream_utils.hpp %{_includedir}/kodi/xbmc_vis_dll.h %{_includedir}/kodi/xbmc_vis_types.h %{_includedir}/kodi/xbmc_audioenc_dll.h %{_includedir}/kodi/xbmc_audioenc_types.h %{_includedir}/kodi/AEChannelData.h %{_includedir}/kodi/kodi_audiodec_dll.h %{_includedir}/kodi/kodi_audiodec_types.h %{_includedir}/kodi/libKODI_guilib.h %{_includedir}/kodi/kodi_adsp_dll.h %{_includedir}/kodi/kodi_adsp_types.h %{_includedir}/kodi/kodi_audioengine_types.h %{_includedir}/kodi/libKODI_adsp.h %{_includedir}/kodi/libKODI_audioengine.h %changelog
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.