Projects
Multimedia
kodi.binary-addons
kodi.binary-addons.spec
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File kodi.binary-addons.spec of Package kodi.binary-addons
# # spec file for package kodi.binary-addons # # Copyright (c) 2015-2024 SUSE LLC # # 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/ # # %define _lto_cflags %{nil} # Please edit kodi.spec and kodi.changes only. *-noX.* files are generated from # kodi.* files with the pre_checkin.sh script %define kodi_version Omega %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 ExclusiveArch: %ix86 x86_64 aarch64 Name: kodi.binary-addons Version: 21.1 Release: 0 Summary: Binary Addons for Kodi 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.binary-addons.spec.packages.inc Source2: kodi.binary-addons.spec.files.inc Source3: kodi.binary-addons.tar Source4: repo-binary-addons.%{kodi_version}.tar.bz2 Source5: kodi-platform-e8574b8.tar.gz Source20: http://mirrors.kodi.tv/build-deps/sources/rapidxml-1.13.zip Source21: rapidxml.cmake Source22: https://github.com/xbmc/Bento4/archive/refs/tags/1.6.0-639-8-%{kodi_version}.tar.gz Patch1: cmake-binary-addons.patch Patch2: addon-helpers_lib64.patch # PATCH-PACKMAN kodi.binary-addons-audiodecoder.ncsf-gcc5.3.patch - fixes compiling of audiodecoder.ncsf with gcc > 4.8, suse_version >= 1320 #Patch3: kodi.binary-addons-audiodecoder.ncsf-gcc5.3.patch # PATCH-PACKMAN kodi.binary-addons-screensavers.rsxs-upstream-stdbool_h.patch - fixes compiling of screensavers.rsxs with gcc > 4.8, suse_version >= 1320 #Patch4: kodi.binary-addons-screensavers.rsxs-upstream-stdbool_h.patch #Patch5: lib555-missing-xlocale.patch #Patch6: pvr.stalker-gcc7.patch # PATCH-PACKMAN kodi.binary.addons-noreturnfromnonvoid.patch - davejplater@gmail.com - Suddenly an rpmlint no return from nonvoid has appeared after taglib was updated. Patch7: kodi.binary.addons-noreturnfromnonvoid.patch #Patch8: kodi.binary-addons-screensavers.rsxs-host-toolchain.patch #Patch9: kodi.binary-addons-vfs.sacd.no-int-conversion.patch Patch10: FindBento4.cmake.patch Patch11: add-default-return.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: ccache BuildRequires: cmake BuildRequires: fdupes %if 0%{?suse_version} >= 1550 && 0%{?sle_version} == 0 BuildRequires: gcc12 BuildRequires: gcc12-c++ %else BuildRequires: gcc10 BuildRequires: gcc10-c++ %endif %if %{noX_build} BuildRequires: kodi-noX-devel = %{version} %else BuildRequires: kodi-devel = %{version} %endif BuildRequires: pkgconfig(bzip2) BuildRequires: giflib-devel BuildRequires: gli-devel BuildRequires: cmake(glm) >= 0.9.9 BuildRequires: jsoncpp-devel BuildRequires: nlohmann_json-devel BuildRequires: tinyxml-devel BuildRequires: libhdhomerun-devel BuildRequires: liblz4-devel BuildRequires: libmp3lame-devel BuildRequires: libnfs-devel BuildRequires: libraw-devel BuildRequires: pkgconfig(smbclient) BuildRequires: libSOIL-devel BuildRequires: libstdc++-devel BuildRequires: libtiff-devel BuildRequires: libtool BuildRequires: libxml2-devel BuildRequires: lzo-devel BuildRequires: nlohmann_json-devel BuildRequires: pkg-config BuildRequires: pkgconfig(expat) BuildRequires: pkgconfig(flac) BuildRequires: pkgconfig(fluidsynth) BuildRequires: pkgconfig(gtest) BuildRequires: pkgconfig(libarchive) >= 3.3.2 BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(libmodplug) %if 0%{?suse_version} >= 1550 BuildRequires: pkgconfig(libplist-2.0) %else BuildRequires: pkgconfig(libplist) %endif BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libprojectM) BuildRequires: pkgconfig(librtmp) BuildRequires: pkgconfig(libssh) BuildRequires: pkgconfig(libssl) BuildRequires: pkgconfig(p8-platform) BuildRequires: pkgconfig(pugixml) BuildRequires: pkgconfig(tinyxml2) BuildRequires: pkgconfig(vorbis) BuildRequires: pkgconfig(wavpack) BuildRequires: rapidjson-devel BuildRequires: (pkgconfig(libavcodec) >= 60 with pkgconfig(libavcodec) < 61) BuildRequires: (pkgconfig(libavfilter) >= 9 with pkgconfig(libavfilter) < 10) BuildRequires: (pkgconfig(libavformat) >= 60 with pkgconfig(libavformat) < 61) BuildRequires: (pkgconfig(libavutil) >= 58 with pkgconfig(libavutil) < 59) BuildRequires: (pkgconfig(libpostproc) >= 57 with pkgconfig(libpostproc) < 58) BuildRequires: (pkgconfig(libswresample) >= 4 with pkgconfig(libswresample) < 5) BuildRequires: (pkgconfig(libswscale) >= 7 with pkgconfig(libswscale) < 8) BuildRequires: pkgconfig(sqlite3) # kodi needs the same libtag version which was used to build against %if 0%{?suse_version} >= 1599 %requires_eq libtag2 %else %requires_eq libtag1 %endif %if !%{noX_build} %if 0%{?suse_version} >= 1550 && 0%{?sle_version} == 0 BuildRequires: pkgconfig(x11) %else BuildRequires: xorg-x11-devel %endif %endif %if %{with enable_opengl} BuildRequires: pkgconfig(gl) BuildRequires: pkgconfig(glew) BuildRequires: pkgconfig(glu) BuildRequires: pkgconfig(vdpau) %endif %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 # glxinfo is needed to check hw accel %if 0%{?suse_version} >= 1220 %if !%{noX_build} Requires: Mesa-demo-x Requires: xdpyinfo %endif %endif BuildRoot: %{_tmprath}/%{name}-%{version}-build ExcludeArch: ppc64 Requires: kodi = %{version} #Requires: libjsoncpp1 %description Binary Addons for Kodi Media Center %include %{SOURCE1} %prep %setup -q -n xbmc-%{version}-%{kodi_version} %patch -P 1 -p1 %patch -P 2 -p1 %build %install pushd cmake/addons tar xvf %{SOURCE3} mkdir -pv build/bootstrap/binary-addons/src cp -v %{SOURCE4} build/bootstrap/binary-addons/src # Remove deps that are already installed using BuildRequires rm -rf depends/common/{p8-platform,tinyxml} rm -f depends/common/kodi-platform/deps.txt mkdir -p depends/common/kodi-platform cp -v %{SOURCE5} depends/common/kodi-platform echo "kodi-platform file://../../../../../cmake/addons/depends/common/kodi-platform/kodi-platform-e8574b8.tar.gz" > depends/common/kodi-platform/kodi-platform.txt echo "132d5398b3bb72c6b5394ffa473c52e556419d6df8c52eb0830555dae87eb75a" > depends/common/kodi-platform/kodi-platform.sha256 mkdir -pv depends/common/rapidxml cp -v %{SOURCE20} depends/common/rapidxml cp -v %{SOURCE21} depends/common/rapidxml/CMakeLists.txt echo "rapidxml file://../../../../../cmake/addons/depends/common/rapidxml/rapidxml-1.13.zip" > depends/common/rapidxml/rapidxml.txt echo "c3f0b886374981bb20fabcf323d755db4be6dba42064599481da64a85f5b3571" > depends/common/rapidxml/rapidxml.sha256 popd sed -i~ 's/@@@_libdir@@@/%{_lib}/' cmake/scripts/common/AddonHelpers.cmake diff -u cmake/scripts/common/AddonHelpers.cmake~ cmake/scripts/common/AddonHelpers.cmake && exit 0 %if 0 # Tumbleweed and Factory have GCC 5.x ATM (20160309), source needs patching for this #%if 0%{?suse_version} > 1320 # patch audiodecoders.ncsf #patch -p0 < %%{PATCH3} # patch screensavers.rsxs #patch screensavers.rsxs/lib/rsxs-1.0/lib/stdbool.in.h %{PATCH4} #patch -up0 --verbose < %{PATCH5} #patch -up4 --verbose < %{PATCH6} #%endif # fake buildtime in audiodecoder.qsf 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 audiodecoder.qsf/lib/Highly_Quixotic/Core/qsound.c \ # audiodecoder.ssf/lib/Highly_Theoretical/Core/Starscream/star.c \ # audiodecoder.ssf/lib/Highly_Theoretical/Core/sega.c \ # audiodecoder.timidity/lib/timidity/timidity/speex_a.c; do # sed -i -e "s/__DATE__/\"$FAKE_BUILDDATE\"/" -e "s/__TIME__/\"$FAKE_BUILDTIME\"/" $file #done #patch -p 0 < %{PATCH7} #make VERBOSE=1 %{?_smp_mflags} %endif test -x "$(type -P gcc)" && CC="$_" test -x "$(type -P g++)" && CXX="$_" test -x "$(type -P gcc-9)" && CC="$_" test -x "$(type -P g++-9)" && CXX="$_" test -x "$(type -P gcc-10)" && CC="$_" test -x "$(type -P g++-10)" && CXX="$_" test -x "$(type -P gcc-12)" && CC="$_" test -x "$(type -P g++-12)" && CXX="$_" CC="$(readlink -f ${CC})" CXX="$(readlink -f ${CXX})" pushd tools/depends/target/binary-addons mkdir -p native %cmake \ ../../../../../cmake/addons \ %if %{dev_build} -DVERBOSE=ON \ %endif -DCMAKE_C_COMPILER=$CC \ -DCMAKE_CXX_COMPILER=$CXX \ %ifarch %{ix86} -DCMAKE_C_FLAGS=-mavx \ %endif -DBUILD_DIR=build \ -DNEED_SUDO=FALSE \ -DAPP_LIB_DIR=%{buildroot}%{_libdir}/kodi \ -DCMAKE_INSTALL_LIBDIR=%{buildroot}%{_libdir}/kodi \ -DCMAKE_INSTALL_PREFIX=%{buildroot}%{_prefix} \ -DADDONS_TO_BUILD="all" popd # Patching addons after being unpacked pushd cmake/addons/build # patch -up2 --verbose -i %{PATCH7} #patch -up0 --verbose -i %{PATCH8} #patch -up2 --verbose -i %{PATCH9} patch -up0 --verbose -i %{PATCH10} cp -v %{SOURCE22} inputstream.adaptive/depends/common/bento4 echo "bento4 file://../../../../../../../../../../cmake/addons/build/inputstream.adaptive/depends/common/bento4/1.6.0-639-8-%{kodi_version}.tar.gz" > inputstream.adaptive/depends/common/bento4/bento4.txt patch -up0 --verbose -i %{PATCH11} popd pushd tools/depends/target/binary-addons/build # Workaround for cmake 3.18 issue with copy_if_different issue adding "" at the end of line sed -i -e 's#""##' depends/CMakeFiles/rapidxml.dir/build.make make -O %{?_smp_mflags} VERBOSE=1 CC=$CC CXX=$CXX %fdupes %{buildroot} %files %defattr(-,root,root) %dir %{_libdir}/kodi %dir %{_datadir}/kodi %{_libdir}/kodi/PrepareEnv.cmake %include %{SOURCE2} %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
.