kodi: updated to version 20.0

This commit is contained in:
Matt Housh 2023-01-23 15:59:26 -06:00
parent 197e060058
commit 8f1b5dc868
4 changed files with 659 additions and 327 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,6 @@
untrusted comment: verify with /etc/ports/contrib.pub
RWSagIOpLGJF33rvAEk7Jjhkx6LfFpmLvX0+NMLX9ZM3dL1ETPK/n/yLpoYxiG20BI+gMXje7PVRRdrxuT7czdXEJQEwR3Wtjww=
SHA256 (Pkgfile) = 7eb0ddcf06c493d573949ab7a29c9f66c1f8759554b690059fcd33f7bb4870e3
SHA256 (.footprint) = 274846fcbe62a0e534b0552824d7d8b7155e157a6fae2fadaa25d48362b76caa
SHA256 (kodi-19.5.tar.gz) = 56e0074f27f08496b2a21af5704a15378a2f0979ae3e9fa9a50a2630d0313d19
RWSagIOpLGJF3xqlH2Lh9LNePqEuFKloT4KJVHxCUGNtRu4+FYAc2G9UeZUk4AsjT1hlBw1BWs8uxTlA6YxVQucg5peYKUMHlgQ=
SHA256 (Pkgfile) = 3960d85e80f0e8ff0835654971a8ec9f55d0947970c54d4cb36e3a934d05afa9
SHA256 (.footprint) = 0a92bc1aa49557700a76f8e88a91666e11d107b6c35134a4939f3f1fae16afbf
SHA256 (kodi-20.0.tar.gz) = 4c75add8b9ea44924b6ee45f94439545676033f35f5993908871e3dded527b79
SHA256 (gl-headers.patch) = 6fa089625184b2b47bea7a3dcb349931e9b39681df9d84fd690a1ba848460168
SHA256 (kodi-ffmpeg-4.3-kodi-dav1d-1.0.tar.gz) = 9d8b26e2a16029c4c15fd3232303515a3cb37b1d2bff02ee0fa5f0230c3a2fd4
SHA256 (mesa-eglchromium.patch) = 80c7c3399ef1b72dae214ecd5157469a2d0c69b6d931573482dba33c79ac296a

View File

@ -4,27 +4,16 @@
# Depends on: cmake fmt ghostscript giflib glu openjdk17-jdk libass libcdio libmicrohttpd mariadb samba swig taglib tinyxml spdlog libva libvdpau libdvdnav
name=kodi
version=19.5
version=20.0
release=1
source=(https://github.com/xbmc/xbmc/archive/$version-Matrix/$name-$version.tar.gz gl-headers.patch
https://crux.nu/files/kodi-ffmpeg-4.3-kodi-dav1d-1.0.tar.gz
mesa-eglchromium.patch)
unpack_source() {
cp $PKGMK_ROOT/*.patch $SRC/
bsdtar -xf $PKGMK_SOURCE_DIR/$name-$version.tar.gz -C $SRC
cp $PKGMK_SOURCE_DIR/kodi-ffmpeg* $SRC/
}
source=(https://github.com/xbmc/xbmc/archive/$version-Nexus/$name-$version.tar.gz gl-headers.patch)
build() {
# https://github.com/xbmc/xbmc/pull/22291/commits/b81d28d5ce679da2ff5f14dca691665551d30351
patch -p1 -d xbmc-$version-Matrix -i $SRC/mesa-eglchromium.patch
export PATH="/usr/lib/java/openjdk17-jdk/bin:$PATH"
[[ -e /usr/lib/ccache ]] && PATH="$(echo ${PATH} | awk -v RS=: -v ORS=: '/ccache/ {next} {print}' | sed 's/:*$//')"
patch -d xbmc-$version-Matrix -p1 -i $SRC/gl-headers.patch
patch -d xbmc-$version-Nexus -p1 -i $SRC/gl-headers.patch
cmake -Bbuild \
-DVERBOSE=ON \
@ -34,7 +23,6 @@ build() {
-DENABLE_OPTICAL=ON \
-DENABLE_PYTHON=ON \
-DENABLE_INTERNAL_FFMPEG=ON \
-DFFMPEG_URL=$SRC/kodi-ffmpeg-4.3-kodi-dav1d-1.0.tar.gz \
-DENABLE_INTERNAL_FLATBUFFERS=ON \
-DENABLE_INTERNAL_FSTRCMP=ON \
-DENABLE_INTERNAL_RapidJSON=ON \
@ -45,7 +33,7 @@ build() {
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS -DNDEBUG" \
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS -DNDEBUG" \
-Wno-dev \
xbmc-$version-Matrix
xbmc-$version-Nexus
cmake --build build
DESTDIR=$PKG cmake --install build

View File

@ -1,54 +0,0 @@
From b81d28d5ce679da2ff5f14dca691665551d30351 Mon Sep 17 00:00:00 2001
From: Alan Swanson <reiver@improbability.net>
Date: Mon, 19 Dec 2022 21:28:13 +0200
Subject: [PATCH] Work around Mesa eglchromium.h removal
I have polished Alan's snippet to buildable state and tested
on Kodi from Debian sid.
Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
---
cmake/modules/FindEGL.cmake | 6 ++++++
xbmc/windowing/X11/GLContextEGL.h | 4 ++++
2 files changed, 10 insertions(+)
diff --git a/cmake/modules/FindEGL.cmake b/cmake/modules/FindEGL.cmake
index b00fe08a25f95..f2648596cfa71 100644
--- a/cmake/modules/FindEGL.cmake
+++ b/cmake/modules/FindEGL.cmake
@@ -9,6 +9,7 @@
# EGL_INCLUDE_DIRS - the EGL include directory
# EGL_LIBRARIES - the EGL libraries
# EGL_DEFINITIONS - the EGL definitions
+# HAVE_EGLEXTANGLE - if eglext_angle.h exists else use eglextchromium.h
#
# and the following imported targets::
#
@@ -35,6 +36,11 @@ if(EGL_FOUND)
set(EGL_LIBRARIES ${EGL_LIBRARY})
set(EGL_INCLUDE_DIRS ${EGL_INCLUDE_DIR})
set(EGL_DEFINITIONS -DHAS_EGL=1)
+ include(CheckIncludeFiles)
+ CHECK_INCLUDE_FILES("EGL/egl.h;EGL/eglext.h;EGL/eglext_angle.h" HAVE_EGLEXTANGLE)
+ if(HAVE_EGLEXTANGLE)
+ list(APPEND EGL_DEFINITIONS "-DHAVE_EGLEXTANGLE=1")
+ endif()
if(NOT TARGET EGL::EGL)
add_library(EGL::EGL UNKNOWN IMPORTED)
diff --git a/xbmc/windowing/X11/GLContextEGL.h b/xbmc/windowing/X11/GLContextEGL.h
index 99a6a9024e8c6..afea0b7c43eac 100644
--- a/xbmc/windowing/X11/GLContextEGL.h
+++ b/xbmc/windowing/X11/GLContextEGL.h
@@ -13,7 +13,11 @@
#include "threads/CriticalSection.h"
#include <EGL/eglext.h>
+#ifdef HAVE_EGLEXTANGLE
+#include <EGL/eglext_angle.h>
+#else
#include <EGL/eglextchromium.h>
+#endif
#include <X11/Xutil.h>
class CGLContextEGL : public CGLContext