From 6e8298a011304bc29722a87db6ffd99542c5065e Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Wed, 29 May 2024 08:19:16 +0000 Subject: [PATCH 1/2] kodi: update to githash 060417c - add exiv2 as target depend - drop upstreamed gcc-14 patch - drop upstreamed udev patch - drop timezone patch (not applicable in Kodi "Piers") - cmake pcre2-static detection requires PCRE2_USE_STATIC_LIBS setting in cmakefile --- packages/mediacenter/kodi/package.mk | 16 +++--- ...odi-100.02-add-libreelec.tv-RSS-news.patch | 6 +-- .../patches/kodi-100.08-setup-timezone.patch | 40 -------------- .../kodi-999.30-fix-gcc-14-compile.patch | 52 ------------------- ...LibUdev-fix-assert-issue-with-system.patch | 33 ------------ 5 files changed, 12 insertions(+), 135 deletions(-) delete mode 100644 packages/mediacenter/kodi/patches/kodi-100.08-setup-timezone.patch delete mode 100644 packages/mediacenter/kodi/patches/kodi-999.30-fix-gcc-14-compile.patch delete mode 100644 packages/mediacenter/kodi/patches/kodi-999.40-PeripheralBusUSBLibUdev-fix-assert-issue-with-system.patch diff --git a/packages/mediacenter/kodi/package.mk b/packages/mediacenter/kodi/package.mk index 67c82d1541..d9fdba8542 100644 --- a/packages/mediacenter/kodi/package.mk +++ b/packages/mediacenter/kodi/package.mk @@ -3,12 +3,12 @@ # Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv) PKG_NAME="kodi" -PKG_VERSION="21.0-Omega" -PKG_SHA256="7f54c1fd8456ac46221fbc85e447362bdc209163c6cb19fca98d106560071b7c" +PKG_VERSION="060417ccfa5b21939669d404b9a223c3004ba132" +PKG_SHA256="aaf649ae54ca9e866af2018c12c8e5e466f18e43f0b99cfbaf6192dc8dc64f6b" PKG_LICENSE="GPL" PKG_SITE="http://www.kodi.tv" PKG_URL="https://github.com/xbmc/xbmc/archive/${PKG_VERSION}.tar.gz" -PKG_DEPENDS_TARGET="toolchain JsonSchemaBuilder:host TexturePacker:host Python3 zlib systemd lzo pcre swig:host libass curl fontconfig fribidi tinyxml tinyxml2 libjpeg-turbo freetype libcdio taglib libxml2 libxslt rapidjson sqlite ffmpeg crossguid libdvdnav libfmt lirc libfstrcmp flatbuffers:host flatbuffers libudfread spdlog" +PKG_DEPENDS_TARGET="toolchain JsonSchemaBuilder:host TexturePacker:host Python3 zlib systemd lzo pcre2 swig:host libass curl exiv2 fontconfig fribidi tinyxml tinyxml2 libjpeg-turbo freetype libcdio taglib libxml2 libxslt rapidjson sqlite ffmpeg crossguid libdvdnav libfmt lirc libfstrcmp flatbuffers:host flatbuffers libudfread spdlog" PKG_DEPENDS_UNPACK="commons-lang3 commons-text groovy" PKG_DEPENDS_HOST="toolchain" PKG_LONGDESC="A free and open source cross-platform media player." @@ -243,11 +243,13 @@ configure_package() { -DPYTHON_INCLUDE_DIRS=${SYSROOT_PREFIX}/usr/include/${PKG_PYTHON_VERSION} \ -DGIT_VERSION=${PKG_VERSION} \ -DFFMPEG_PATH=${SYSROOT_PREFIX}/usr \ - -DENABLE_INTERNAL_FFMPEG=OFF \ -DENABLE_INTERNAL_CROSSGUID=OFF \ - -DENABLE_INTERNAL_UDFREAD=OFF \ - -DENABLE_INTERNAL_SPDLOG=OFF \ + -DENABLE_INTERNAL_EXIV2=OFF \ + -DENABLE_INTERNAL_FFMPEG=OFF \ + -DENABLE_INTERNAL_FLATBUFFERS=OFF \ -DENABLE_INTERNAL_RapidJSON=OFF \ + -DENABLE_INTERNAL_SPDLOG=OFF \ + -DENABLE_INTERNAL_UDFREAD=OFF \ -DENABLE_UDEV=ON \ -DENABLE_DBUS=ON \ -DENABLE_XSLT=ON \ @@ -257,12 +259,12 @@ configure_package() { -DENABLE_DEBUGFISSION=OFF \ -DENABLE_APP_AUTONAME=OFF \ -DENABLE_TESTING=OFF \ - -DENABLE_INTERNAL_FLATBUFFERS=OFF \ -DENABLE_LCMS2=OFF \ -DADDONS_CONFIGURE_AT_STARTUP=OFF \ -Dgroovy_SOURCE_DIR=$(get_build_dir groovy) \ -Dapache-commons-lang_SOURCE_DIR=$(get_build_dir commons-lang3) \ -Dapache-commons-text_SOURCE_DIR=$(get_build_dir commons-text) \ + -DPCRE2_USE_STATIC_LIBS=ON \ ${PKG_KODI_USE_LTO} \ ${PKG_KODI_LINKER} \ ${KODI_ARCH} \ diff --git a/packages/mediacenter/kodi/patches/kodi-100.02-add-libreelec.tv-RSS-news.patch b/packages/mediacenter/kodi/patches/kodi-100.02-add-libreelec.tv-RSS-news.patch index 425e2247db..14097f8616 100644 --- a/packages/mediacenter/kodi/patches/kodi-100.02-add-libreelec.tv-RSS-news.patch +++ b/packages/mediacenter/kodi/patches/kodi-100.02-add-libreelec.tv-RSS-news.patch @@ -5,6 +5,6 @@ + https://libreelec.tv/feed - http://feeds.kodi.tv/xbmc - http://feeds.kodi.tv/latest_xbmc_addons - http://feeds.kodi.tv/updated_xbmc_addons + https://kodi.tv/feed + + diff --git a/packages/mediacenter/kodi/patches/kodi-100.08-setup-timezone.patch b/packages/mediacenter/kodi/patches/kodi-100.08-setup-timezone.patch deleted file mode 100644 index 8c3714fe23..0000000000 --- a/packages/mediacenter/kodi/patches/kodi-100.08-setup-timezone.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 7afdfe63354967ea5123cb2b1746c3ae552d0977 Mon Sep 17 00:00:00 2001 -From: Stefan Saraev -Date: Mon, 18 Aug 2014 17:46:54 +0300 -Subject: [PATCH] setup timezone - -on TZ country setting change, store the value in format -TIMEZONE=Xx/Yyy to /storage/.cache/timezone to be used with -tz-data.service ---- - xbmc/platform/posix/PosixTimezone.cpp | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - ---- a/xbmc/platform/posix/PosixTimezone.cpp -+++ b/xbmc/platform/posix/PosixTimezone.cpp -@@ -24,6 +24,8 @@ - - #include "PlatformDefs.h" - -+#include -+ - CPosixTimezone::CPosixTimezone() - { - char* line = NULL; -@@ -141,6 +143,16 @@ void CPosixTimezone::OnSettingChanged(co - const std::string &settingId = setting->GetId(); - if (settingId == CSettings::SETTING_LOCALE_TIMEZONE) - { -+ std::ofstream out("/storage/.cache/timezone"); -+ if (out) -+ { -+ const std::string tz = std::string("TIMEZONE=") + (std::static_pointer_cast(setting)->GetValue().c_str()); -+ out << tz << std::endl; -+ out.flush(); -+ out.close(); -+ system("systemctl restart tz-data.service"); -+ } -+ - SetTimezone(std::static_pointer_cast(setting)->GetValue()); - - CDateTime::ResetTimezoneBias(); diff --git a/packages/mediacenter/kodi/patches/kodi-999.30-fix-gcc-14-compile.patch b/packages/mediacenter/kodi/patches/kodi-999.30-fix-gcc-14-compile.patch deleted file mode 100644 index bcdacd0c52..0000000000 --- a/packages/mediacenter/kodi/patches/kodi-999.30-fix-gcc-14-compile.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 2bf5ab07731b3d4160196e6b8d9ab9e25bea2ef9 Mon Sep 17 00:00:00 2001 -From: Rudi Heitbaum -Date: Thu, 2 May 2024 08:02:42 +0000 -Subject: [PATCH 1/2] add missing c++ headers - -Add missing headers which are no longer indirectly included by -other headers, fixes build with gcc-14 - -Signed-off-by: Rudi Heitbaum ---- - xbmc/platform/posix/filesystem/SMBWSDiscoveryListener.cpp | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/xbmc/platform/posix/filesystem/SMBWSDiscoveryListener.cpp b/xbmc/platform/posix/filesystem/SMBWSDiscoveryListener.cpp -index d42c19bb2cd4a..142974591b1a7 100644 ---- a/xbmc/platform/posix/filesystem/SMBWSDiscoveryListener.cpp -+++ b/xbmc/platform/posix/filesystem/SMBWSDiscoveryListener.cpp -@@ -17,6 +17,7 @@ - - #include "platform/posix/filesystem/SMBWSDiscovery.h" - -+#include - #include - #include - #include - -From b6ddd8fb25ef20e8adb9a9f9b53bebf0cee3a970 Mon Sep 17 00:00:00 2001 -From: Rudi Heitbaum -Date: Thu, 2 May 2024 08:05:00 +0000 -Subject: [PATCH 2/2] Geometry: fix template-id not allowed for constructor - -fixes gcc-14 error: -- warning: template-id not allowed for constructor in C++20 - -Signed-off-by: Rudi Heitbaum ---- - xbmc/utils/Geometry.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/xbmc/utils/Geometry.h b/xbmc/utils/Geometry.h -index 1bf4624d06d18..90e4275165a48 100644 ---- a/xbmc/utils/Geometry.h -+++ b/xbmc/utils/Geometry.h -@@ -177,7 +177,7 @@ template class CSizeGen - return {m_w, m_h}; - } - -- template explicit CSizeGen(const CSizeGen& rhs) -+ template explicit CSizeGen(const CSizeGen& rhs) - { - CheckSet(static_cast (rhs.m_w), static_cast (rhs.m_h)); - } diff --git a/packages/mediacenter/kodi/patches/kodi-999.40-PeripheralBusUSBLibUdev-fix-assert-issue-with-system.patch b/packages/mediacenter/kodi/patches/kodi-999.40-PeripheralBusUSBLibUdev-fix-assert-issue-with-system.patch deleted file mode 100644 index a7fc5571a4..0000000000 --- a/packages/mediacenter/kodi/patches/kodi-999.40-PeripheralBusUSBLibUdev-fix-assert-issue-with-system.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 8a78c59791ba408c3f03e285b68f9afbac2658d8 Mon Sep 17 00:00:00 2001 -From: Rudi Heitbaum -Date: Wed, 12 Jun 2024 21:45:23 +0000 -Subject: [PATCH] PeripheralBusUSBLibUdev: fix assert issue with systemd udev - -do not call udev_device_get_parent(udev_device_get_parent(dev)) -directly as a null return on the parent will cause an assert in -udev_device_get_parent ---- - .../platform/linux/peripherals/PeripheralBusUSBLibUdev.cpp | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/xbmc/platform/linux/peripherals/PeripheralBusUSBLibUdev.cpp b/xbmc/platform/linux/peripherals/PeripheralBusUSBLibUdev.cpp -index aeb5e71d9f..3b649652c3 100644 ---- a/xbmc/platform/linux/peripherals/PeripheralBusUSBLibUdev.cpp -+++ b/xbmc/platform/linux/peripherals/PeripheralBusUSBLibUdev.cpp -@@ -108,7 +108,12 @@ bool CPeripheralBusUSB::PerformDeviceScan(PeripheralScanResults &results) - - if (bContinue) - { -- dev = udev_device_get_parent(udev_device_get_parent(parent)); -+ // do not call udev_device_get_parent(udev_device_get_parent(dev)) -+ // directly as a null return on the parent will cause an assert in -+ // udev_device_get_parent -+ dev = udev_device_get_parent(parent); -+ if (dev) -+ dev = udev_device_get_parent(dev); - if (!dev || !udev_device_get_sysattr_value(dev,"idVendor") || !udev_device_get_sysattr_value(dev, "idProduct")) - bContinue = false; - } --- -2.43.0 - From 1a4fa46d66f259591d1ec6ff7a6022a2c68fba82 Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Sun, 14 Jul 2024 09:58:02 +0000 Subject: [PATCH 2/2] pcre: drop unused package --- packages/devel/pcre/package.mk | 29 ----------------------------- 1 file changed, 29 deletions(-) delete mode 100644 packages/devel/pcre/package.mk diff --git a/packages/devel/pcre/package.mk b/packages/devel/pcre/package.mk deleted file mode 100644 index 65570fabb3..0000000000 --- a/packages/devel/pcre/package.mk +++ /dev/null @@ -1,29 +0,0 @@ -# SPDX-License-Identifier: GPL-2.0-or-later -# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv) -# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) - -PKG_NAME="pcre" -PKG_VERSION="8.45" -PKG_SHA256="4dae6fdcd2bb0bb6c37b5f97c33c2be954da743985369cddac3546e3218bffb8" -PKG_LICENSE="OSS" -PKG_SITE="http://www.pcre.org/" -PKG_URL="${SOURCEFORGE_SRC}/pcre/${PKG_NAME}/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.bz2" -PKG_DEPENDS_TARGET="toolchain" -PKG_LONGDESC="A set of functions that implement regular expression pattern matching." -PKG_TOOLCHAIN="configure" -PKG_BUILD_FLAGS="+pic" - -PKG_CONFIGURE_OPTS_TARGET="--disable-shared \ - --enable-static \ - --enable-utf8 \ - --disable-cpp \ - --enable-pcre16 \ - --enable-unicode-properties \ - --with-gnu-ld" - -post_makeinstall_target() { - rm -rf ${INSTALL}/usr/bin - cp ${PKG_NAME}-config ${TOOLCHAIN}/bin - sed -e "s:\(['= ]\)/usr:\\1${PKG_ORIG_SYSROOT_PREFIX}/usr:g" -i ${TOOLCHAIN}/bin/${PKG_NAME}-config - chmod +x ${TOOLCHAIN}/bin/${PKG_NAME}-config -}