diff options
-rw-r--r-- | .SRCINFO | 126 | ||||
-rw-r--r-- | 0001-allow-separate-windowing-binaries-being-launched-fro.patch | 67 | ||||
-rw-r--r-- | PKGBUILD | 229 | ||||
-rw-r--r-- | cheat-sse-build.patch | 11 |
4 files changed, 158 insertions, 275 deletions
@@ -1,5 +1,5 @@ pkgbase = kodi-git - pkgver = r57554.267090d82a2 + pkgver = r65618.f0b18b55c57 pkgrel = 1 url = https://kodi.tv arch = x86_64 @@ -15,6 +15,7 @@ pkgbase = kodi-git makedepends = gperf makedepends = hicolor-icon-theme makedepends = java-runtime + makedepends = fmt makedepends = libaacs makedepends = libass makedepends = libbluray @@ -36,12 +37,15 @@ pkgbase = kodi-git makedepends = lzo makedepends = mesa makedepends = nasm + makedepends = pipewire makedepends = python-pycryptodomex makedepends = python-pillow makedepends = python-pybluez makedepends = python-simplejson makedepends = shairplay makedepends = smbclient + makedepends = sndio + makedepends = spdlog makedepends = taglib makedepends = tinyxml makedepends = swig @@ -52,54 +56,50 @@ pkgbase = kodi-git makedepends = meson makedepends = gtest makedepends = graphviz + makedepends = pcre + makedepends = tinyxml2 + makedepends = libdisplay-info + makedepends = python-setuptools makedepends = wayland-protocols makedepends = waylandpp makedepends = libxkbcommon makedepends = libinput - noextract = libdvdcss-1.4.2-Leia-Beta-5.tar.gz - noextract = libdvdnav-6.0.0-Leia-Alpha-3.tar.gz - noextract = libdvdread-6.0.0-Leia-Alpha-3.tar.gz - noextract = ffmpeg-4.4-N-Alpha1.tar.gz - noextract = fmt-6.1.2.tar.gz - noextract = spdlog-1.5.0.tar.gz - noextract = crossguid-8f399e8bd4.tar.gz + noextract = libdvdcss-1.4.3-Next-Nexus-Alpha2-2.tar.gz + noextract = libdvdnav-6.1.1-Next-Nexus-Alpha2-2.tar.gz + noextract = libdvdread-6.1.3-Next-Nexus-Alpha2-2.tar.gz + noextract = ffmpeg-6.0.1.tar.gz + noextract = crossguid-ca1bf4b810e2d188d04cb6286f957008ee1b7681.tar.gz noextract = fstrcmp-0.7.D001.tar.gz - noextract = flatbuffers-1.11.0.tar.gz - noextract = libudfread-1.1.0.tar.gz - source = git://github.com/xbmc/xbmc.git#branch=master - source = libdvdcss-1.4.2-Leia-Beta-5.tar.gz::https://github.com/xbmc/libdvdcss/archive/1.4.2-Leia-Beta-5.tar.gz - source = libdvdnav-6.0.0-Leia-Alpha-3.tar.gz::https://github.com/xbmc/libdvdnav/archive/6.0.0-Leia-Alpha-3.tar.gz - source = libdvdread-6.0.0-Leia-Alpha-3.tar.gz::https://github.com/xbmc/libdvdread/archive/6.0.0-Leia-Alpha-3.tar.gz - source = ffmpeg-4.4-N-Alpha1.tar.gz::https://github.com/xbmc/FFmpeg/archive/4.4-N-Alpha1.tar.gz - source = http://mirrors.kodi.tv/build-deps/sources/fmt-6.1.2.tar.gz - source = http://mirrors.kodi.tv/build-deps/sources/crossguid-8f399e8bd4.tar.gz - source = http://mirrors.kodi.tv/build-deps/sources/fstrcmp-0.7.D001.tar.gz - source = http://mirrors.kodi.tv/build-deps/sources/flatbuffers-1.11.0.tar.gz - source = http://mirrors.kodi.tv/build-deps/sources/spdlog-1.5.0.tar.gz - source = http://mirrors.kodi.tv/build-deps/sources/libudfread-1.1.0.tar.gz - source = cheat-sse-build.patch - source = 0001-allow-separate-windowing-binaries-being-launched-fro.patch + noextract = flatbuffers-23.3.3.tar.gz + noextract = libudfread-1.1.2.tar.gz + options = !lto + source = git+https://github.com/xbmc/xbmc.git#branch=master + source = libdvdcss-1.4.3-Next-Nexus-Alpha2-2.tar.gz::https://github.com/xbmc/libdvdcss/archive/1.4.3-Next-Nexus-Alpha2-2.tar.gz + source = libdvdnav-6.1.1-Next-Nexus-Alpha2-2.tar.gz::https://github.com/xbmc/libdvdnav/archive/6.1.1-Next-Nexus-Alpha2-2.tar.gz + source = libdvdread-6.1.3-Next-Nexus-Alpha2-2.tar.gz::https://github.com/xbmc/libdvdread/archive/6.1.3-Next-Nexus-Alpha2-2.tar.gz + source = https://ffmpeg.org/releases/ffmpeg-6.0.1.tar.gz + source = https://mirrors.kodi.tv/build-deps/sources/crossguid-ca1bf4b810e2d188d04cb6286f957008ee1b7681.tar.gz + source = https://mirrors.kodi.tv/build-deps/sources/fstrcmp-0.7.D001.tar.gz + source = https://mirrors.kodi.tv/build-deps/sources/flatbuffers-23.3.3.tar.gz + source = https://mirrors.kodi.tv/build-deps/sources/libudfread-1.1.2.tar.gz b2sums = SKIP - b2sums = 283aa2cec0a2200d3569bc280cb9659e9224a6b3a77db8a35b269cd8caf1337ac9d8b92b806df66f63ef7458a46bd6261f0b8b14678b10e26644a79dcbeea5da - b2sums = 7573434a0ae8e8ccabf48173f81fcde29074eb138e119a2ae9156cde3c3d8bfd716f5d0e605b97f2dcac21f570781137c8533c5ae306b51e3905822fda318355 - b2sums = 0c206acdaf0776841ab792c74e023af07d9539eb72e03ae164382a31ed950f60e5e15f1d055979d28f1398924471b294d11f064b11b8373353b3962a3777ff3c - b2sums = 2c45778e36167a8740f8f724dc8a66ea2491d8343b1f2546027c4dd1a711aa7a8b830defc439006402e141f264532cbc623758dd066b45fc8a09f67ffdc0f9b8 - b2sums = 36e7451a8732c62dcbf47e6d287ea582827b6196a468b8648803ea1bc9a37a5f681d87488f748d749183d97783ac7fb47a3f2aeed64fc6a684f9ee85b67ae28d - b2sums = e6f1f495adf541102e3b5ac11dfd14b770a52e23ef9d613bc6204f6493ff4df4da9ba290ad6c3a7e5c7fcf159cafdf355bfe668a4ddceb4329df934c65966d19 + b2sums = 2f503d3ab767094958f7ec10b4ad11ffd02665deee571c8f3c739bef5fc7e2ff84babc5a3fdee638dc095f896b72fe3ce65e6b688674cb5f7b7b77190992688c + b2sums = db4d05836d8fbb3637ae50bdbfc0e4b612ee6b3be24addfea94ce772c3bf28d58b63a3f252d6f9f016f72f8cbb841cc1820b091226b136f4c4664385a32da73c + b2sums = c94feb5a03a12efa5b7767965118d2500a088299ea36f3b82e46d157e45893e6b04503cb50f179ca681bac914457607fab26acfa6e304752b355c407578572d1 + b2sums = 6424e30c6d354abbbea8a807822ae61589413189e9c4ba7aa51c307179287506b9072626e9745861fe83753c0015b50d179f9b4f298fe9abf74bee13936639af + b2sums = 0f78a8ab5a420297f666b3b8156d499a9141ec25c049d4d2bb2ba594dc585abe211a149b83c605cce4f5530207231a065d5f3a87a0c969781de8c6381afa2527 b2sums = a8b68fcb8613f0d30e5ff7b862b37408472162585ca71cdff328e3299ff50476fd265467bbd77b352b22bb88c590969044f74d91c5468475504568fd269fa69e - b2sums = 69024d77e6e7a5036e24729e337b17680dc3735cb1d209058a88b980989826fe56ff113c1177410106e0f70d827fa82603372277e3bc1aa4d12ffe5bb979af96 - b2sums = bac6c6650f8347458dd2dd66f318b43a769b0896d68f6a6f1310754527a69feaa52b2f6f48d67c7e811c2dafa5d3863a9a07c738df8c12abed2718fb06254b28 - b2sums = e7fab72ebecb372c54af77b4907e53f77a5503af66e129bd2083ef7f4209ebfbed163ffd552e32b7181829664fff6ab82a1cdf00c81dc6f3cc6bfc8fa7242f6e - b2sums = 6d647177380c619529fb875374ec46f1fff6273be1550f056c18cb96e0dea8055272b47664bb18cdc964496a3e9007fda435e67c4f1cee6375a80c048ae83dd0 - b2sums = 9745854bab7e7ddf1cb816e536f303513d8792b5431c62d042894e6d2e702939bc1f9a965e7c59207cca832a297cc3c187c9435fc6e3029a3ddc0b13d11c7451 + b2sums = be5e3c8ea81ce4b6f2e2c1b2f22e1172434c435f096fa7dade060578c506cff0310e3e2ef0627e26ce2be44f740652eb9a8e1b63578c18f430f7925820f04e66 + b2sums = 1801d84a0ca38410a78f23e7d44f37e6d53346753c853df2e7380d259ce1ae7f0c712825b95a5753ad0bc6360cfffe1888b9e7bc30da8b84549e0f1198248f61 -pkgname = kodi-git-common - pkgdesc = A software media player and entertainment hub for digital media (master branch) +pkgname = kodi-git + pkgdesc = A software media player and entertainment hub for digital media (master branch, gles renderer) depends = bluez-libs depends = curl depends = dav1d depends = desktop-file-utils depends = hicolor-icon-theme + depends = fmt depends = lcms2 depends = libass depends = libbluray @@ -110,57 +110,51 @@ pkgname = kodi-git-common depends = libplist depends = libpulse depends = libva + depends = libvdpau depends = libxslt depends = lirc + depends = lzo depends = mariadb-libs depends = mesa + depends = libpipewire depends = python-pillow depends = python-pycryptodomex depends = python-simplejson depends = shairplay depends = smbclient + depends = sndio + depends = spdlog depends = sqlite depends = taglib depends = tinyxml + depends = libxrandr + depends = libxkbcommon + depends = waylandpp + depends = libinput + depends = pcre + depends = tinyxml2 + depends = libdisplay-info optdepends = afpfs-ng: Apple shares support optdepends = bluez: Blutooth support optdepends = python-pybluez: Bluetooth support optdepends = pulseaudio: PulseAudio support + optdepends = pipewire: PipeWire support optdepends = upower: Display battery level - provides = kodi-common=r57554.267090d82a2 - conflicts = kodi-common - replaces = kodi-common - -pkgname = kodi-git-x11 - pkgdesc = x11 kodi binary - depends = kodi-git-common - depends = libva-vdpau-driver - depends = libxrandr - provides = kodi=r57554.267090d82a2 - replaces = kodi - -pkgname = kodi-git-wayland - pkgdesc = wayland kodi binary - depends = kodi-git-common - depends = libxkbcommon - depends = waylandpp - provides = kodi=r57554.267090d82a2 + provides = kodi-common=r65618.f0b18b55c57 + provides = kodi-x11 + provides = kodi-wayland + provides = kodi-gbm + conflicts = kodi + conflicts = kodi-gles + conflicts = kodi-x11 conflicts = kodi-wayland - replaces = kodi - -pkgname = kodi-git-gbm - pkgdesc = gbm kodi binary - depends = kodi-git-common - depends = libxkbcommon - provides = kodi=r57554.267090d82a2 conflicts = kodi-gbm - replaces = kodi pkgname = kodi-git-eventclients pkgdesc = Kodi Event Clients (master branch) optdepends = kodi: local machine eventclient use optdepends = python: most eventclients are implemented in python - provides = kodi-eventclients=r57554.267090d82a2 + provides = kodi-eventclients=r65618.f0b18b55c57 conflicts = kodi-eventclients pkgname = kodi-git-tools-texturepacker @@ -169,12 +163,10 @@ pkgname = kodi-git-tools-texturepacker depends = giflib depends = libjpeg-turbo depends = lzo - provides = kodi-tools-texturepacker=r57554.267090d82a2 + provides = kodi-tools-texturepacker=r65618.f0b18b55c57 conflicts = kodi-tools-texturepacker pkgname = kodi-git-dev pkgdesc = Kodi dev files (master branch) - depends = kodi-git-common - provides = kodi-dev=r57554.267090d82a2 + provides = kodi-dev=r65618.f0b18b55c57 conflicts = kodi-dev - diff --git a/0001-allow-separate-windowing-binaries-being-launched-fro.patch b/0001-allow-separate-windowing-binaries-being-launched-fro.patch deleted file mode 100644 index df983480594d..000000000000 --- a/0001-allow-separate-windowing-binaries-being-launched-fro.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 5b75228b51c3422644468050debbc495f5195585 Mon Sep 17 00:00:00 2001 -From: BlackEagle <ike.devolder@gmail.com> -Date: Thu, 25 Feb 2021 15:24:21 +0100 -Subject: [PATCH] allow separate windowing binaries being launched from kodi - wrapper - -Signed-off-by: BlackEagle <ike.devolder@gmail.com> ---- - tools/Linux/kodi.sh.in | 29 ++++++++++++++++++++++++++++- - 1 file changed, 28 insertions(+), 1 deletion(-) - -diff --git a/tools/Linux/kodi.sh.in b/tools/Linux/kodi.sh.in -index 108c0b0..38a49e0 100644 ---- a/tools/Linux/kodi.sh.in -+++ b/tools/Linux/kodi.sh.in -@@ -28,6 +28,7 @@ LIBDIR="@libdir@" - APP_BINARY=$LIBDIR/${bin_name}/@APP_BINARY@ - CRASHLOG_DIR=${CRASHLOG_DIR:-$HOME} - KODI_DATA=${KODI_DATA:-"${HOME}/.${bin_name}"} # mapped to special://home/ -+WINDOWING=${WINDOWING:-"auto"} - - # Workaround for high CPU load with nvidia GFX - export __GL_YIELD=USLEEP -@@ -43,13 +44,39 @@ do - LIBDIR="$2" - shift; shift - ;; -+ --windowing) -+ WINDOWING="$2" -+ echo "$SAVED_ARGS" | sed "s/--windowing[ ]*$2//g" -+ shift; shift -+ ;; - *) - shift - ;; - esac - done - --KODI_BINARY=${APP_BINARY} -+# Note: by default only one of those binaries exists -+# To be able to select a different one, if has to be compiled specifically -+# Your distribution might provide extra packages for those -+if [ "$WINDOWING" = "auto" ]; then -+ # Wayland -+ if [ -n "$WAYLAND_DISPLAY" ] && [ -x $LIBDIR/${bin_name}/${bin_name}-wayland ]; then -+ KODI_BINARY=$LIBDIR/${bin_name}/${bin_name}-wayland -+ # X11 -+ elif echo $DISPLAY | grep -qE ":[0-9]+" && [ -x $LIBDIR/${bin_name}/${bin_name}-x11 ]; then -+ KODI_BINARY=$LIBDIR/${bin_name}/${bin_name}-x11 -+ # GBM/DRM -+ elif [ -z "$DISPLAY" ] && [ -z "$WAYLAND_DISPLAY" ] && [ -x $LIBDIR/${bin_name}/${bin_name}-gbm ]; then -+ KODI_BINARY=$LIBDIR/${bin_name}/${bin_name}-gbm -+ # Default kodi.bin -+ else -+ KODI_BINARY=${APP_BINARY} -+ fi -+elif [ -n "$WINDOWING" ]; then -+ KODI_BINARY=$LIBDIR/${bin_name}/${bin_name}-${WINDOWING} -+else -+ KODI_BINARY=${APP_BINARY} -+fi - - if [ ! -x ${KODI_BINARY} ]; then - echo "Error: ${KODI_BINARY} not found" --- -2.30.1 - @@ -1,5 +1,5 @@ # vim:set ts=2 sw=2 et: -# Maintainer graysky <graysky AT archlinux DOT us> +# Maintainer graysky <therealgraysky AT protonmail DOT com> # Contributor: BlackIkeEagle < ike DOT devolder AT gmail DOT com > # Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: DonVla <donvla@users.sourceforge.net> @@ -17,33 +17,43 @@ # Original credits go to Edgar Hucek <gimli at dark-green dot com> # for his xbmc-vdpau-vdr PKGBUILD at https://archvdr.svn.sourceforge.net/svnroot/archvdr/trunk/archvdr/xbmc-vdpau-vdr/PKGBUILD +# set this to anything to build with clang rather than with gcc +_clangbuild= + +# define the applicaton render system, valid values are either 'gl' or 'gles' +_renderer=gles + pkgbase=kodi-git -pkgname=( - "$pkgbase-common" "$pkgbase-x11" "$pkgbase-wayland" "$pkgbase-gbm" - "$pkgbase-eventclients" "$pkgbase-tools-texturepacker" "$pkgbase-dev" -) -pkgver=r57554.267090d82a2 +pkgname=("$pkgbase" "$pkgbase-eventclients" "$pkgbase-tools-texturepacker" "$pkgbase-dev") +pkgver=r65618.f0b18b55c57 pkgrel=1 arch=('x86_64') url="https://kodi.tv" license=('GPL2') makedepends=( 'afpfs-ng' 'bluez-libs' 'cmake' 'curl' 'dav1d' 'doxygen' 'git' 'glew' - 'gperf' 'hicolor-icon-theme' 'java-runtime' 'libaacs' 'libass' + 'gperf' 'hicolor-icon-theme' 'java-runtime' 'fmt' 'libaacs' 'libass' 'libbluray' 'libcdio' 'libcec' 'libgl' 'mariadb-libs' 'libmicrohttpd' 'libmodplug' 'libmpeg2' 'libnfs' 'libplist' 'libpulse' 'libva' 'libva-vdpau-driver' 'libxrandr' 'libxslt' 'lirc' 'lzo' 'mesa' 'nasm' - 'python-pycryptodomex' 'python-pillow' 'python-pybluez' - 'python-simplejson' 'shairplay' 'smbclient' 'taglib' 'tinyxml' 'swig' - 'upower' 'giflib' 'rapidjson' 'ghostscript' 'meson' 'gtest' 'graphviz' + 'pipewire' 'python-pycryptodomex' 'python-pillow' 'python-pybluez' + 'python-simplejson' 'shairplay' 'smbclient' 'sndio' 'spdlog' 'taglib' + 'tinyxml' 'swig' 'upower' 'giflib' 'rapidjson' 'ghostscript' 'meson' 'gtest' + 'graphviz' 'pcre' 'tinyxml2' 'libdisplay-info' + # cmake/scripts/linux/Install.cmake calls distutils + # python 3.12 does no longer come with distutils on board + 'python-setuptools' # wayland 'wayland-protocols' 'waylandpp' 'libxkbcommon' # gbm 'libinput' ) +options=(!lto) + +[[ -n "$_clangbuild" ]] && makedepends+=('clang' 'lld' 'llvm') -_gitname='xbmc' -_sse_workaround=1 +_gitname=xbmc +_codename=master # Found on their respective github release pages. One can check them against # what is pulled down when not specifying them in the cmake step. @@ -54,59 +64,44 @@ _sse_workaround=1 # https://github.com/xbmc/libdvdnav/tags # https://github.com/xbmc/libdvdread/tags # -# fmt and crossguid can be found http://mirrors.kodi.tv/build-deps/sources/ -# -_libdvdcss_version="1.4.2-Leia-Beta-5" -_libdvdnav_version="6.0.0-Leia-Alpha-3" -_libdvdread_version="6.0.0-Leia-Alpha-3" -_ffmpeg_version="4.4-N-Alpha1" -_fmt_version="6.1.2" -_spdlog_version="1.5.0" -_crossguid_version="8f399e8bd4" +_libdvdcss_version="1.4.3-Next-Nexus-Alpha2-2" +_libdvdnav_version="6.1.1-Next-Nexus-Alpha2-2" +_libdvdread_version="6.1.3-Next-Nexus-Alpha2-2" +_ffmpeg_version="6.0.1" +_crossguid_version="ca1bf4b810e2d188d04cb6286f957008ee1b7681" _fstrcmp_version="0.7.D001" -_flatbuffers_version="1.11.0" -_libudfread_version="1.1.0" - +_flatbuffers_version="23.3.3" +_libudfread_version="1.1.2" source=( - "git://github.com/xbmc/xbmc.git#branch=master" + "git+https://github.com/xbmc/xbmc.git#branch=$_codename" "libdvdcss-$_libdvdcss_version.tar.gz::https://github.com/xbmc/libdvdcss/archive/$_libdvdcss_version.tar.gz" "libdvdnav-$_libdvdnav_version.tar.gz::https://github.com/xbmc/libdvdnav/archive/$_libdvdnav_version.tar.gz" "libdvdread-$_libdvdread_version.tar.gz::https://github.com/xbmc/libdvdread/archive/$_libdvdread_version.tar.gz" - "ffmpeg-$_ffmpeg_version.tar.gz::https://github.com/xbmc/FFmpeg/archive/$_ffmpeg_version.tar.gz" - "http://mirrors.kodi.tv/build-deps/sources/fmt-$_fmt_version.tar.gz" - "http://mirrors.kodi.tv/build-deps/sources/crossguid-$_crossguid_version.tar.gz" - "http://mirrors.kodi.tv/build-deps/sources/fstrcmp-$_fstrcmp_version.tar.gz" - "http://mirrors.kodi.tv/build-deps/sources/flatbuffers-$_flatbuffers_version.tar.gz" - "http://mirrors.kodi.tv/build-deps/sources/spdlog-$_spdlog_version.tar.gz" - "http://mirrors.kodi.tv/build-deps/sources/libudfread-$_libudfread_version.tar.gz" - 'cheat-sse-build.patch' - '0001-allow-separate-windowing-binaries-being-launched-fro.patch' + "https://ffmpeg.org/releases/ffmpeg-$_ffmpeg_version.tar.gz" + "https://mirrors.kodi.tv/build-deps/sources/crossguid-$_crossguid_version.tar.gz" + "https://mirrors.kodi.tv/build-deps/sources/fstrcmp-$_fstrcmp_version.tar.gz" + "https://mirrors.kodi.tv/build-deps/sources/flatbuffers-$_flatbuffers_version.tar.gz" + "https://mirrors.kodi.tv/build-deps/sources/libudfread-$_libudfread_version.tar.gz" ) noextract=( "libdvdcss-$_libdvdcss_version.tar.gz" "libdvdnav-$_libdvdnav_version.tar.gz" "libdvdread-$_libdvdread_version.tar.gz" "ffmpeg-$_ffmpeg_version.tar.gz" - "fmt-$_fmt_version.tar.gz" - "spdlog-$_spdlog_version.tar.gz" "crossguid-$_crossguid_version.tar.gz" "fstrcmp-$_fstrcmp_version.tar.gz" "flatbuffers-$_flatbuffers_version.tar.gz" "libudfread-$_libudfread_version.tar.gz" ) b2sums=('SKIP' - '283aa2cec0a2200d3569bc280cb9659e9224a6b3a77db8a35b269cd8caf1337ac9d8b92b806df66f63ef7458a46bd6261f0b8b14678b10e26644a79dcbeea5da' - '7573434a0ae8e8ccabf48173f81fcde29074eb138e119a2ae9156cde3c3d8bfd716f5d0e605b97f2dcac21f570781137c8533c5ae306b51e3905822fda318355' - '0c206acdaf0776841ab792c74e023af07d9539eb72e03ae164382a31ed950f60e5e15f1d055979d28f1398924471b294d11f064b11b8373353b3962a3777ff3c' - '2c45778e36167a8740f8f724dc8a66ea2491d8343b1f2546027c4dd1a711aa7a8b830defc439006402e141f264532cbc623758dd066b45fc8a09f67ffdc0f9b8' - '36e7451a8732c62dcbf47e6d287ea582827b6196a468b8648803ea1bc9a37a5f681d87488f748d749183d97783ac7fb47a3f2aeed64fc6a684f9ee85b67ae28d' - 'e6f1f495adf541102e3b5ac11dfd14b770a52e23ef9d613bc6204f6493ff4df4da9ba290ad6c3a7e5c7fcf159cafdf355bfe668a4ddceb4329df934c65966d19' + '2f503d3ab767094958f7ec10b4ad11ffd02665deee571c8f3c739bef5fc7e2ff84babc5a3fdee638dc095f896b72fe3ce65e6b688674cb5f7b7b77190992688c' + 'db4d05836d8fbb3637ae50bdbfc0e4b612ee6b3be24addfea94ce772c3bf28d58b63a3f252d6f9f016f72f8cbb841cc1820b091226b136f4c4664385a32da73c' + 'c94feb5a03a12efa5b7767965118d2500a088299ea36f3b82e46d157e45893e6b04503cb50f179ca681bac914457607fab26acfa6e304752b355c407578572d1' + '6424e30c6d354abbbea8a807822ae61589413189e9c4ba7aa51c307179287506b9072626e9745861fe83753c0015b50d179f9b4f298fe9abf74bee13936639af' + '0f78a8ab5a420297f666b3b8156d499a9141ec25c049d4d2bb2ba594dc585abe211a149b83c605cce4f5530207231a065d5f3a87a0c969781de8c6381afa2527' 'a8b68fcb8613f0d30e5ff7b862b37408472162585ca71cdff328e3299ff50476fd265467bbd77b352b22bb88c590969044f74d91c5468475504568fd269fa69e' - '69024d77e6e7a5036e24729e337b17680dc3735cb1d209058a88b980989826fe56ff113c1177410106e0f70d827fa82603372277e3bc1aa4d12ffe5bb979af96' - 'bac6c6650f8347458dd2dd66f318b43a769b0896d68f6a6f1310754527a69feaa52b2f6f48d67c7e811c2dafa5d3863a9a07c738df8c12abed2718fb06254b28' - 'e7fab72ebecb372c54af77b4907e53f77a5503af66e129bd2083ef7f4209ebfbed163ffd552e32b7181829664fff6ab82a1cdf00c81dc6f3cc6bfc8fa7242f6e' - '6d647177380c619529fb875374ec46f1fff6273be1550f056c18cb96e0dea8055272b47664bb18cdc964496a3e9007fda435e67c4f1cee6375a80c048ae83dd0' - '9745854bab7e7ddf1cb816e536f303513d8792b5431c62d042894e6d2e702939bc1f9a965e7c59207cca832a297cc3c187c9435fc6e3029a3ddc0b13d11c7451') + 'be5e3c8ea81ce4b6f2e2c1b2f22e1172434c435f096fa7dade060578c506cff0310e3e2ef0627e26ce2be44f740652eb9a8e1b63578c18f430f7925820f04e66' + '1801d84a0ca38410a78f23e7d44f37e6d53346753c853df2e7380d259ce1ae7f0c712825b95a5753ad0bc6360cfffe1888b9e7bc30da8b84549e0f1198248f61') pkgver() { cd "$_gitname" @@ -119,80 +114,99 @@ prepare() { cd "$_gitname" - [[ "$_sse_workaround" -eq 1 ]] && patch -p1 -i "$srcdir/cheat-sse-build.patch" + rm -rf system/certs # remove not needed cacert - patch -p1 -i "$srcdir/0001-allow-separate-windowing-binaries-being-launched-fro.patch" + if [[ -n "$_clangbuild" ]]; then + msg "Building with clang" + export CC=clang CXX=clang++ + fi } build() { cd "$srcdir/kodi-build" - - ### Optionally uncomment and setup to your liking - # export CFLAGS+=" -march=native" - # export CXXFLAGS="${CFLAGS}" + # disable https://rfc.archlinux.page/0023-pack-relative-relocs/ + export LDFLAGS=${LDFLAGS/-Wl,-z,pack-relative-relocs} _args=( + -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib + -DENABLE_SSE=ON + -DENABLE_SSE2=ON + -DENABLE_SSE3=ON + -DENABLE_SSSE3=ON + -DENABLE_SSE4_1=ON + -DENABLE_SSE4_2=ON + -DENABLE_AVX=ON + -DENABLE_AVX2=ON -DUSE_LTO=$(nproc) -DENABLE_LDGOLD=OFF + -DENABLE_AIRTUNES=ON + -DENABLE_AVAHI=ON + -DENABLE_BLURAY=ON + -DENABLE_CEC=ON + -DENABLE_DBUS=ON + -DENABLE_DVDCSS=ON + -DENABLE_EGL=ON -DENABLE_EVENTCLIENTS=ON + -DENABLE_MICROHTTPD=ON + -DENABLE_MYSQLCLIENT=ON + -DENABLE_NFS=ON + -DENABLE_OPTICAL=ON + -DENABLE_SMBCLIENT=ON + -DENABLE_UDEV=ON + -DENABLE_UPNP=ON + -DENABLE_VAAPI=ON + -DENABLE_VDPAU=ON + -DENABLE_XSLT=ON + -DENABLE_LIRCCLIENT=ON + -DENABLE_INTERNAL_RapidJSON=OFF -DENABLE_INTERNAL_FFMPEG=ON - -DENABLE_INTERNAL_FMT=ON - -DENABLE_INTERNAL_SPDLOG=ON -DENABLE_INTERNAL_CROSSGUID=ON -DENABLE_INTERNAL_FSTRCMP=ON -DENABLE_INTERNAL_FLATBUFFERS=ON -DENABLE_INTERNAL_UDFREAD=ON - -DENABLE_MYSQLCLIENT=ON -Dlibdvdcss_URL="$srcdir/libdvdcss-$_libdvdcss_version.tar.gz" -Dlibdvdnav_URL="$srcdir/libdvdnav-$_libdvdnav_version.tar.gz" -Dlibdvdread_URL="$srcdir/libdvdread-$_libdvdread_version.tar.gz" -DFFMPEG_URL="$srcdir/ffmpeg-$_ffmpeg_version.tar.gz" - -DFMT_URL="$srcdir/fmt-$_fmt_version.tar.gz" - -DSPDLOG_URL="$srcdir/spdlog-$_spdlog_version.tar.gz" -DCROSSGUID_URL="$srcdir/crossguid-$_crossguid_version.tar.gz" -DFSTRCMP_URL="$srcdir/fstrcmp-$_fstrcmp_version.tar.gz" -DFLATBUFFERS_URL="$srcdir/flatbuffers-$_flatbuffers_version.tar.gz" -DUDFREAD_URL="$srcdir/libudfread-$_libudfread_version.tar.gz" - -DAPP_RENDER_SYSTEM=gl + -DAPP_RENDER_SYSTEM=$_renderer ) - echo "building kodi-wayland" - cmake "${_args[@]}" -DCORE_PLATFORM_NAME=wayland ../"$_gitname" - make - - echo "building kodi-gbm" - cmake "${_args[@]}" -DCORE_PLATFORM_NAME=gbm ../"$_gitname" - make - - # build x11 version last that will make it fallback in the launcher script - echo "building kodi-x11" - cmake "${_args[@]}" -DCORE_PLATFORM_NAME=x11 ../"$_gitname" + echo "building kodi" + cmake "${_args[@]}" ../"$_gitname" make } # kodi # components: kodi -package_kodi-git-common() { - pkgdesc="A software media player and entertainment hub for digital media (master branch)" +package_kodi-git() { + pkgdesc="A software media player and entertainment hub for digital media (master branch, $_renderer renderer)" depends=( - 'bluez-libs' 'curl' 'dav1d' 'desktop-file-utils' 'hicolor-icon-theme' + 'bluez-libs' 'curl' 'dav1d' 'desktop-file-utils' 'hicolor-icon-theme' 'fmt' 'lcms2' 'libass' 'libbluray' 'libcdio' 'libcec' 'libmicrohttpd' 'libnfs' - 'libplist' 'libpulse' 'libva' 'libxslt' 'lirc' 'mariadb-libs' 'mesa' - 'python-pillow' 'python-pycryptodomex' 'python-simplejson' - 'shairplay' 'smbclient' 'sqlite' 'taglib' 'tinyxml' + 'libplist' 'libpulse' 'libva' 'libvdpau' 'libxslt' 'lirc' 'lzo' + 'mariadb-libs' 'mesa' 'libpipewire' 'python-pillow' 'python-pycryptodomex' + 'python-simplejson' 'shairplay' 'smbclient' 'sndio' 'spdlog' 'sqlite' + 'taglib' 'tinyxml' 'libxrandr' 'libxkbcommon' 'waylandpp' 'libinput' + 'pcre' 'tinyxml2' 'libdisplay-info' ) + [[ -n "$_clangbuild" ]] && depends+=('glu') + optdepends=( 'afpfs-ng: Apple shares support' 'bluez: Blutooth support' 'python-pybluez: Bluetooth support' 'pulseaudio: PulseAudio support' + 'pipewire: PipeWire support' 'upower: Display battery level' ) - provides=("kodi-common=${pkgver}") - conflicts=('kodi-common') - replaces=('kodi-common') + provides=("kodi-common=${pkgver}" 'kodi-x11' 'kodi-wayland' 'kodi-gbm') + conflicts=('kodi' 'kodi-gles' 'kodi-x11' 'kodi-wayland' 'kodi-gbm') _components=( 'kodi' @@ -200,60 +214,20 @@ package_kodi-git-common() { ) cd kodi-build - # install eventclients for _cmp in ${_components[@]}; do DESTDIR="$pkgdir" /usr/bin/cmake \ -DCMAKE_INSTALL_COMPONENT="$_cmp" \ -P cmake_install.cmake done - # remove windowing specific binaries - rm -f "$pkgdir/usr/lib/kodi/"{kodi-x11,kodi-xrandr,kodi-wayland,kodi-gbm} -} + # avoid error <general>: GetDirectory - Error getting /usr/lib/kodi/addons + # https://bugs.archlinux.org/task/77366 + mkdir -p "$pkgdir"/usr/lib/kodi/addons -# kodi-x11 -# components: kodi-bin -package_kodi-git-x11() { - pkgdesc="x11 kodi binary" - provides=("kodi=${pkgver}") - replaces=('kodi') - depends=( - 'kodi-git-common' 'libva-vdpau-driver' 'libxrandr' - ) - - cd kodi-build - install -Dm755 kodi-x11 "$pkgdir/usr/lib/kodi/kodi-x11" - install -Dm755 kodi-xrandr "$pkgdir/usr/lib/kodi/kodi-xrandr" -} + # https://gitlab.archlinux.org/archlinux/packaging/packages/kodi/-/issues/2 + mkdir -p "$pkgdir"/usr/share/kodi/system/certs + ln -s /etc/ssl/cert.pem "$pkgdir"/usr/share/kodi/system/certs/cacert.pem -# kodi-wayland -# components: kodi-bin -package_kodi-git-wayland() { - pkgdesc="wayland kodi binary" - provides=("kodi=${pkgver}") - conflicts=('kodi-wayland') - replaces=('kodi') - depends=( - 'kodi-git-common' 'libxkbcommon' 'waylandpp' - ) - - cd kodi-build - install -Dm755 kodi-wayland "$pkgdir/usr/lib/kodi/kodi-wayland" -} - -# kodi-gbm -# components: kodi-bin -package_kodi-git-gbm() { - pkgdesc="gbm kodi binary" - provides=("kodi=${pkgver}") - conflicts=('kodi-gbm') - replaces=('kodi') - depends=( - 'kodi-git-common' 'libxkbcommon' - ) - - cd kodi-build - install -Dm755 kodi-gbm "$pkgdir/usr/lib/kodi/kodi-gbm" } # kodi-eventclients @@ -274,7 +248,6 @@ package_kodi-git-eventclients() { ) cd kodi-build - # install eventclients for _cmp in ${_components[@]}; do DESTDIR="$pkgdir" /usr/bin/cmake \ -DCMAKE_INSTALL_COMPONENT="$_cmp" \ @@ -284,7 +257,6 @@ package_kodi-git-eventclients() { # kodi-tools-texturepacker # components: kodi-tools-texturepacker - package_kodi-git-tools-texturepacker() { pkgdesc="Kodi Texturepacker tool (master branch)" provides=("kodi-tools-texturepacker=${pkgver}") @@ -296,7 +268,6 @@ package_kodi-git-tools-texturepacker() { ) cd kodi-build - # install eventclients for _cmp in ${_components[@]}; do DESTDIR="$pkgdir" /usr/bin/cmake \ -DCMAKE_INSTALL_COMPONENT="$_cmp" \ @@ -308,7 +279,6 @@ package_kodi-git-tools-texturepacker() { # components: kodi-addon-dev kodi-eventclients-dev package_kodi-git-dev() { pkgdesc="Kodi dev files (master branch)" - depends=('kodi-git-common') provides=("kodi-dev=${pkgver}") conflicts=('kodi-dev') @@ -318,7 +288,6 @@ package_kodi-git-dev() { ) cd kodi-build - # install eventclients for _cmp in ${_components[@]}; do DESTDIR="$pkgdir" /usr/bin/cmake \ -DCMAKE_INSTALL_COMPONENT="$_cmp" \ diff --git a/cheat-sse-build.patch b/cheat-sse-build.patch deleted file mode 100644 index df356d0fdb4a..000000000000 --- a/cheat-sse-build.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/cmake/modules/FindSSE.cmake 2017-08-22 09:29:22.000000000 +0200 -+++ b/cmake/modules/FindSSE.cmake 2018-01-06 19:36:32.716303559 +0100 -@@ -4,7 +4,7 @@ - - if(CMAKE_SYSTEM_NAME MATCHES "Linux") - if(CPU MATCHES "x86_64" OR CPU MATCHES "i.86") -- exec_program(cat ARGS "/proc/cpuinfo" OUTPUT_VARIABLE CPUINFO) -+ set(CPUINFO "sse sse2 pni ssse3 sse4_1 sse4_2 avx avx2") - - string(REGEX REPLACE "^.*(sse).*$" "\\1" _SSE_THERE ${CPUINFO}) - string(COMPARE EQUAL "sse" "${_SSE_THERE}" _SSE_TRUE) |