diff options
author | Jeremy Hansen <jebrhansen+SBo@gmail.com> | 2022-03-05 12:10:52 +0100 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2022-03-07 08:45:28 +0700 |
commit | c24fcbc634c09aa3ad9d450fef1499ca0ae0b676 (patch) | |
tree | 4c825366f1575c6ad0baf3b8dedffa57179d9d84 | |
parent | 1d4e76d3df58c1c27d2579958d09434dd5d81312 (diff) | |
download | slackbuilds-c24fcbc634c09aa3ad9d450fef1499ca0ae0b676.tar.gz |
multimedia/kodi: Updated for version 19.4.
Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r-- | multimedia/kodi/README | 29 | ||||
-rw-r--r-- | multimedia/kodi/kodi.SlackBuild | 135 | ||||
-rw-r--r-- | multimedia/kodi/kodi.info | 10 | ||||
-rw-r--r-- | multimedia/kodi/patches/kodi-texturepacker.patch | 17 | ||||
-rw-r--r-- | multimedia/kodi/patches/xbmc-Krypton-samba-4.0.patch | 24 |
5 files changed, 70 insertions, 145 deletions
diff --git a/multimedia/kodi/README b/multimedia/kodi/README index 1d4038e386..3f040551f7 100644 --- a/multimedia/kodi/README +++ b/multimedia/kodi/README @@ -5,24 +5,15 @@ viewing and playing a vast library of audio, video and image formats. Kodi has a sophisticated library management system that allows you to organize all your media to give you quick and immediate access. -Optional dependencies: libcec, libnfs, lirc, cwiid, python2-pybluez, - avahi, shairplay, and openjdk - -Optional: libcrystalhd (not available at slackbuilds.org) - -Below are some paramaters that can be passed to the slackbuild to turn -on some optional components. - -WII=yes|no (Default is no), requires cwiid and pybluez -WEBSERVER=yes|no (Default is yes), requires libmicrohttpd +Optional autodetected dependencies: +avahi - Network discovery +cwiid - Controller support +dav1d - AV1 codec support +libcec - CEC support +libmicrohttpd - Web interface support +libnfs - Browse NFS shares +lirc - Remote support +shairplay - Airplay Support NOTE: -Kodi can be compiled with openjdk instead of jdk. - -Please remove or rename /etc/oss.conf if it exists on your system -prior to building this package or it will fail to build. - -Using the system ffmpeg in the Kodi slackbuild is currently not -supported. The option to build Kodi with system ffmpeg is still -available in the slackbuild but it won't be supported by the -maintainer. +Kodi can be compiled with jdk11 instead of zulu-openjdk11. diff --git a/multimedia/kodi/kodi.SlackBuild b/multimedia/kodi/kodi.SlackBuild index a954a733eb..57083cf36f 100644 --- a/multimedia/kodi/kodi.SlackBuild +++ b/multimedia/kodi/kodi.SlackBuild @@ -26,9 +26,8 @@ cd $(dirname $0) ; CWD=$(pwd) PRGNAM=kodi SRCNAM=xbmc -CODNAM=Krypton -VERSION=${VERSION:-17.6} -FFMPEGVER=${FFMPEGVER:-3.1.11} +CODNAM=Matrix +VERSION=${VERSION:-19.4} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -75,9 +74,6 @@ cd $TMP rm -rf $SRCNAM-$VERSION-$CODNAM tar xvf $CWD/$SRCNAM-$VERSION-$CODNAM.tar.gz cd $SRCNAM-$VERSION-$CODNAM -# Don't have the Makefile download ffmpeg during install. -ln -s $CWD/FFmpeg-${FFMPEGVER}-${CODNAM}.tar.gz \ - tools/depends/target/ffmpeg/ffmpeg-${FFMPEGVER}-${CODNAM}-17.5.tar.gz chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ @@ -85,89 +81,70 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -# No need to show Git: "Version" in a release build. -sed -i '/Git:/s|.*| return GetVersionShort();|' $SRCNAM/utils/SystemInfo.cpp - -# Patch for Samba 4.0. -patch -p1 < $CWD/patches/xbmc-Krypton-samba-4.0.patch - -# Fix static linking for Texturepacker. Thanks to Gentoo. -# Issue: http://forum.kodi.tv/showthread.php?tid=220407 -patch -p0 < $CWD/patches/kodi-texturepacker.patch - -# The version of ffmpeg on SBo is too old to compile kodi. -# Optional ffmpeg is still available but not turned on by -# default. -if [ "${FFMPEG:-no}" == "yes" ]; then - OPT_DEPS="--with-ffmpeg=shared" -else - OPT_DEPS="" -fi - -# Build webserver. Requires libmicrohttpd. -if [ "${WEBSERVER:-yes}" == "yes" ]; then - OPT_DEPS="$OPT_DEPS --enable-webserver" -else - OPT_DEPS="$OPT_DEPS --disable-webserver" -fi - -export PATH="$PATH:$PWD/tools/depends/native/JsonSchemaBuilder/bin" - -./bootstrap - -CFLAGS="$SLKCFLAGS" \ -CXXFLAGS="$SLKCFLAGS" \ -./configure \ - --prefix=/usr \ - --libdir=/usr/lib${LIBDIRSUFFIX} \ - --docdir=/usr/doc/$PRGNAM-$VERSION \ - --disable-silent-rules \ - --enable-static=no \ - --disable-debug \ - --enable-gl \ - --enable-mid \ - --enable-alsa \ - --enable-texturepacker \ - --enable-pulse \ - $OPT_DEPS \ - --build=$ARCH-slackware-linux - -make VERBOSE=1 - -# Wii controller usage. Default is no. -if ! [ "${WII:-no}" = "no" ]; then - make eventclients DESTDIR=$PKG WII_EXTRA_OPTS="-DCWIID_OLD" - find $PKG/usr/lib${LIBDIRSUFFIX}/python* -iname "*\.py" -exec chmod 0644 '{}' \; - # Create byte-compiled python files. - python -m compileall $PKG/usr/lib${LIBDIRSUFFIX}/python*/site-packages/$PRGNAM 2>/dev/null -fi - -make install DESTDIR=$PKG -python -m compileall $PKG/usr/share/$PRGNAM/addons/service.xbmc.versioncheck - -install -m 0755 tools/TexturePacker/TexturePacker $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM +# Autodetection of "optional" dependencies sucks. It does not work and +# compilation will fail on each of these if not explicitly disabled. +# Figured I'd mplemented my own autodetection instead of requiring +# passing a bunch of annoying flags :) +if pkg-config --exists avahi-core ; then AVAHI=ON; else AVAHI=OFF; fi +if pkg-config --exists cwiid ; then CWIID=ON; else CWIID=OFF; fi +if pkg-config --exists dav1d ; then DAV1D=ON; else DAV1D=OFF; fi +if pkg-config --exists libmicrohttpd ; then WEBSERVER=ON; else WEBSERVER=OFF; fi +if pkg-config --exists libcec ; then CEC=ON; else CEC=OFF; fi +if pkg-config --exists libnfs ; then NFS=ON; else NFS=OFF; fi +if pkg-config --exists lirc ; then LIRC=ON; else LIRC=OFF; fi +if [ -f /usr/bin/shairplay ] ; then AIRPLAY=ON; else AIRPLAY=OFF; fi + +mkdir -p $TMP/$PRGNAM-build +cd $TMP/$PRGNAM-build + cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DAPP_RENDER_SYSTEM=gl \ + -DCORE_PLATFORM_NAME="x11" \ + -DENABLE_INTERNAL_FSTRCMP=ON \ + -DENABLE_INTERNAL_UDFREAD=ON \ + -DENABLE_AIRTUNES=$AIRPLAY \ + -DENABLE_AVAHI=$AVAHI \ + -DENABLE_CEC=$LIBCEC \ + -DENABLE_DAV1D=$DAV1D \ + -DENABLE_EVENTCLIENTS=$CWIID \ + -DENABLE_LIRCCLIENT=$LIRC \ + -DENABLE_MICROHTTPD=$WEBSERVER \ + -DENABLE_NFS=$NFS \ + -DCMAKE_BUILD_TYPE=Release ../$SRCNAM-$VERSION-$CODNAM + make + make install/strip DESTDIR=$PKG +cd .. find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true -# Install manpages. +# Install manpages mkdir -p $PKG/usr/man/man1 -for i in $PRGNAM.bin.1 $PRGNAM.1 $PRGNAM-standalone.1; do - install -m 0644 docs/manpages/$i $PKG/usr/man/man1/$i +for i in {$PRGNAM{,.bin,-standalone},TexturePacker}.1; do + install -m 0644 $SRCNAM-$VERSION-$CODNAM/docs/manpages/$i $PKG/usr/man/man1/$i done -if ! [ "${WII:-no}" = "no" ]; then - for i in $PRGNAM-ps3remote.1 $PRGNAM-send.1 $PRGNAM-wiiremote.1; do - install -m 0644 docs/manpages/$i $PKG/usr/man/man1/$i +# Install Event Control manpages if enabled +if [ $CWIID == "ON" ]; then + for i in $PRGNAM{-ps3remote,-wiiremote,-send}.1; do + install -m 0644 $SRCNAM-$VERSION-$CODNAM/docs/manpages/$i $PKG/usr/man/man1/$i done fi -gzip -9 $PKG/usr/man/man?/*.? - -cp -a tools/EventClients/README.txt $PKG/usr/doc/$PRGNAM-$VERSION -cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild -# Final clean up. -find $PKG \( -name "Makefile*" -o -name "*cmake*" -o -name "*\.in" \) -exec rm -f '{}' \; +find $PKG/usr/man -type f -exec gzip -9 {} \; +for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +( + cd $SRCNAM-$VERSION-$CODNAM + cp -a README.md privacy-policy.txt version.txt docs/MANIFESTO.md $PKG/usr/doc/$PRGNAM-$VERSION + if [ $CWIID == "ON" ]; then + cat tools/EventClients/README.txt > $PKG/usr/doc/$PRGNAM-$VERSION/Event-Client-README.txt + fi + cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +) mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc diff --git a/multimedia/kodi/kodi.info b/multimedia/kodi/kodi.info index 7617a5da6b..534d2a0627 100644 --- a/multimedia/kodi/kodi.info +++ b/multimedia/kodi/kodi.info @@ -1,12 +1,10 @@ PRGNAM="kodi" -VERSION="17.6" +VERSION="19.4" HOMEPAGE="https://kodi.tv/" -DOWNLOAD="https://github.com/xbmc/xbmc/archive/17.6-Krypton/xbmc-17.6-Krypton.tar.gz \ - https://github.com/xbmc/FFmpeg/archive/3.1.11-Krypton-17.5/FFmpeg-3.1.11-Krypton.tar.gz" -MD5SUM="a64c2fc56ddc41b9b0dded55eaabf170 \ - 6cf2d25e2a38fd274d9fb37a7bb4f953" +DOWNLOAD="https://github.com/xbmc/xbmc/archive/19.4-Matrix/xbmc-19.4-Matrix.tar.gz" +MD5SUM="a668854505eff3ca5ed9f33e3ac91c80" DOWNLOAD_x86_64="" MD5SUM_x86_64="" -REQUIRES="zulu-openjdk8 libass crossguid yajl tinyxml libmicrohttpd" +REQUIRES="zulu-openjdk11 libass flatbuffers fmt rapidjson spdlog tinyxml shairplay gtest" MAINTAINER="Larry Hajali" EMAIL="larryhaja[at]gmail[dot]com" diff --git a/multimedia/kodi/patches/kodi-texturepacker.patch b/multimedia/kodi/patches/kodi-texturepacker.patch deleted file mode 100644 index fe3dcdcf7a..0000000000 --- a/multimedia/kodi/patches/kodi-texturepacker.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- tools/depends/native/TexturePacker/Makefile.old 2015-03-17 22:29:18.880029509 +0100 -+++ tools/depends/native/TexturePacker/Makefile 2015-03-17 22:29:41.459671679 +0100 -@@ -9,14 +9,10 @@ - - ifeq ($(NATIVEPLATFORM),) - PLATFORM = native -- EXTRA_CONFIGURE = --enable-static - else - PLATFORM = $(NATIVEPLATFORM) - endif - --ifeq ($(NATIVE_OS), linux) -- EXTRA_CONFIGURE = --enable-static --endif - ifeq ($(NATIVE_OS), android) - EXTRA_CONFIGURE = --enable-static - endif diff --git a/multimedia/kodi/patches/xbmc-Krypton-samba-4.0.patch b/multimedia/kodi/patches/xbmc-Krypton-samba-4.0.patch deleted file mode 100644 index 6916ead2ce..0000000000 --- a/multimedia/kodi/patches/xbmc-Krypton-samba-4.0.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -Naur xbmc-17.1-Krypton.orig/xbmc/filesystem/SMBDirectory.cpp xbmc-17.1-Krypton/xbmc/filesystem/SMBDirectory.cpp ---- xbmc-17.1-Krypton.orig/xbmc/filesystem/SMBDirectory.cpp 2017-03-20 16:17:49.000000000 +0000 -+++ xbmc-17.1-Krypton/xbmc/filesystem/SMBDirectory.cpp 2017-03-20 23:01:52.444160749 +0000 -@@ -45,7 +45,7 @@ - #include "linux/XTimeUtils.h" - #endif - --#include <libsmbclient.h> -+#include <samba-4.0/libsmbclient.h> - - struct CachedDirEntry - { -diff -Naur xbmc-17.1-Krypton.orig/xbmc/filesystem/SMBFile.cpp xbmc-17.1-Krypton/xbmc/filesystem/SMBFile.cpp ---- xbmc-17.1-Krypton.orig/xbmc/filesystem/SMBFile.cpp 2017-03-20 16:17:49.000000000 +0000 -+++ xbmc-17.1-Krypton/xbmc/filesystem/SMBFile.cpp 2017-03-20 23:00:17.355154034 +0000 -@@ -26,7 +26,7 @@ - #include "SMBFile.h" - #include "PasswordManager.h" - #include "SMBDirectory.h" --#include <libsmbclient.h> -+#include <samba-4.0/libsmbclient.h> - #include "filesystem/SpecialProtocol.h" - #include "settings/AdvancedSettings.h" - #include "settings/Settings.h" |