summaryrefslogtreecommitdiff
path: root/package
diff options
context:
space:
mode:
Diffstat (limited to 'package')
-rw-r--r--package/apcupsd/Makefile2
-rw-r--r--package/bcm28xx-bootloader/Makefile2
-rw-r--r--package/bcm28xx-bootloader/src/boot/bootcode.binbin52476 -> 52624 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/fixup.datbin7269 -> 7365 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/fixup4.datbin5412 -> 5496 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/fixup4cd.datbin3180 -> 3270 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/fixup4db.datbin8397 -> 8489 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/fixup4x.datbin8399 -> 8489 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/fixup_cd.datbin3180 -> 3270 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/fixup_db.datbin10242 -> 10334 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/fixup_x.datbin10244 -> 10332 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/start.elfbin2979264 -> 3023264 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/start4.elfbin2254944 -> 2299008 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/start4cd.elfbin808060 -> 846684 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/start4db.elfbin3751752 -> 3797224 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/start4x.elfbin3002536 -> 3046664 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/start_cd.elfbin808060 -> 846684 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/start_db.elfbin4823624 -> 4869064 bytes
-rw-r--r--package/bcm28xx-bootloader/src/boot/start_x.elfbin3726216 -> 3770312 bytes
-rw-r--r--package/curl/Makefile6
-rw-r--r--package/exiv2/Makefile33
-rw-r--r--package/fmt/Makefile4
-rw-r--r--package/glibc/Makefile2
-rw-r--r--package/json/Makefile30
-rw-r--r--package/kodi/Makefile34
-rw-r--r--package/kodi/patches/ffmpeg7-debian.patch744
-rw-r--r--package/kodi/patches/patch-CMakeLists_txt27
-rw-r--r--package/kodi/patches/patch-tools_depends_native_TexturePacker_src_decoder_GifHelper_cpp4
-rw-r--r--package/kodi/patches/patch-xbmc_dbwrappers_dataset_h10
-rw-r--r--package/kodi/patches/patch-xbmc_platform_linux_CPUInfoLinux_cpp31
-rw-r--r--package/libinih/Makefile2
-rw-r--r--package/libtheora/Makefile8
-rw-r--r--package/libtheora/patches/patch-Makefile_in20
-rw-r--r--package/mesa/Makefile16
-rw-r--r--package/spdlog/Makefile4
35 files changed, 122 insertions, 857 deletions
diff --git a/package/apcupsd/Makefile b/package/apcupsd/Makefile
index 52b6def9a..382f33e2d 100644
--- a/package/apcupsd/Makefile
+++ b/package/apcupsd/Makefile
@@ -11,12 +11,12 @@ PKG_DESCR:= APC UPS daemon with integrated tcp/ip remote shutdown
PKG_SECTION:= sys/misc
PKG_DEPENDS:= libusb
PKG_BUILDDEP:= libusb
+PKG_KDEPENDS:= usb-hid usb-hiddev
PKG_URL:= http://www.apcupsd.org
PKG_SITES:= $(MASTER_SITE_SOURCEFORGE:=apcupsd/)
DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_CFLINE_APCUPSD:= select BUSYBOX_WALL@
-PKG_CFLINE_APCUPSD+= select ADK_LINUX_KERNEL_USB_HID@
include $(ADK_TOPDIR)/mk/package.mk
diff --git a/package/bcm28xx-bootloader/Makefile b/package/bcm28xx-bootloader/Makefile
index b297779a2..58ae843dc 100644
--- a/package/bcm28xx-bootloader/Makefile
+++ b/package/bcm28xx-bootloader/Makefile
@@ -119,7 +119,7 @@ ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI4),y)
$(IDIR_BCM28XX_BOOTLOADER)/boot/config.txt
endif
ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI3_64)$(ADK_TARGET_SYSTEM_RASPBERRY_PI4_64),y)
- printf "arm_control=0x200\n" >> \
+ printf "arm_64bit=1\n" >> \
$(IDIR_BCM28XX_BOOTLOADER)/boot/config.txt
printf "enable_uart=1\n" >> \
$(IDIR_BCM28XX_BOOTLOADER)/boot/config.txt
diff --git a/package/bcm28xx-bootloader/src/boot/bootcode.bin b/package/bcm28xx-bootloader/src/boot/bootcode.bin
index 9e831a273..636933850 100644
--- a/package/bcm28xx-bootloader/src/boot/bootcode.bin
+++ b/package/bcm28xx-bootloader/src/boot/bootcode.bin
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/fixup.dat b/package/bcm28xx-bootloader/src/boot/fixup.dat
index 2ff966820..667cafba8 100644
--- a/package/bcm28xx-bootloader/src/boot/fixup.dat
+++ b/package/bcm28xx-bootloader/src/boot/fixup.dat
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/fixup4.dat b/package/bcm28xx-bootloader/src/boot/fixup4.dat
index 4380d320e..9bf503434 100644
--- a/package/bcm28xx-bootloader/src/boot/fixup4.dat
+++ b/package/bcm28xx-bootloader/src/boot/fixup4.dat
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/fixup4cd.dat b/package/bcm28xx-bootloader/src/boot/fixup4cd.dat
index 79a0b55e7..c0614cd5d 100644
--- a/package/bcm28xx-bootloader/src/boot/fixup4cd.dat
+++ b/package/bcm28xx-bootloader/src/boot/fixup4cd.dat
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/fixup4db.dat b/package/bcm28xx-bootloader/src/boot/fixup4db.dat
index 4d13d6581..9ef1b932b 100644
--- a/package/bcm28xx-bootloader/src/boot/fixup4db.dat
+++ b/package/bcm28xx-bootloader/src/boot/fixup4db.dat
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/fixup4x.dat b/package/bcm28xx-bootloader/src/boot/fixup4x.dat
index 4d8ff5a96..9c10b2d5e 100644
--- a/package/bcm28xx-bootloader/src/boot/fixup4x.dat
+++ b/package/bcm28xx-bootloader/src/boot/fixup4x.dat
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/fixup_cd.dat b/package/bcm28xx-bootloader/src/boot/fixup_cd.dat
index 79a0b55e7..c0614cd5d 100644
--- a/package/bcm28xx-bootloader/src/boot/fixup_cd.dat
+++ b/package/bcm28xx-bootloader/src/boot/fixup_cd.dat
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/fixup_db.dat b/package/bcm28xx-bootloader/src/boot/fixup_db.dat
index 3927ea52e..e695c9f9d 100644
--- a/package/bcm28xx-bootloader/src/boot/fixup_db.dat
+++ b/package/bcm28xx-bootloader/src/boot/fixup_db.dat
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/fixup_x.dat b/package/bcm28xx-bootloader/src/boot/fixup_x.dat
index b93bc0620..ea04cdbdb 100644
--- a/package/bcm28xx-bootloader/src/boot/fixup_x.dat
+++ b/package/bcm28xx-bootloader/src/boot/fixup_x.dat
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/start.elf b/package/bcm28xx-bootloader/src/boot/start.elf
index f5d78d670..0af80e5cf 100644
--- a/package/bcm28xx-bootloader/src/boot/start.elf
+++ b/package/bcm28xx-bootloader/src/boot/start.elf
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/start4.elf b/package/bcm28xx-bootloader/src/boot/start4.elf
index 300e7a8a4..a5b6bf0ef 100644
--- a/package/bcm28xx-bootloader/src/boot/start4.elf
+++ b/package/bcm28xx-bootloader/src/boot/start4.elf
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/start4cd.elf b/package/bcm28xx-bootloader/src/boot/start4cd.elf
index b7fe9328d..eee7efc46 100644
--- a/package/bcm28xx-bootloader/src/boot/start4cd.elf
+++ b/package/bcm28xx-bootloader/src/boot/start4cd.elf
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/start4db.elf b/package/bcm28xx-bootloader/src/boot/start4db.elf
index acd07e82c..f3e979f10 100644
--- a/package/bcm28xx-bootloader/src/boot/start4db.elf
+++ b/package/bcm28xx-bootloader/src/boot/start4db.elf
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/start4x.elf b/package/bcm28xx-bootloader/src/boot/start4x.elf
index 274a62944..f9901aa7a 100644
--- a/package/bcm28xx-bootloader/src/boot/start4x.elf
+++ b/package/bcm28xx-bootloader/src/boot/start4x.elf
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/start_cd.elf b/package/bcm28xx-bootloader/src/boot/start_cd.elf
index 5e616d0c6..46517c526 100644
--- a/package/bcm28xx-bootloader/src/boot/start_cd.elf
+++ b/package/bcm28xx-bootloader/src/boot/start_cd.elf
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/start_db.elf b/package/bcm28xx-bootloader/src/boot/start_db.elf
index f10f87fa3..80a04b2ba 100644
--- a/package/bcm28xx-bootloader/src/boot/start_db.elf
+++ b/package/bcm28xx-bootloader/src/boot/start_db.elf
Binary files differ
diff --git a/package/bcm28xx-bootloader/src/boot/start_x.elf b/package/bcm28xx-bootloader/src/boot/start_x.elf
index 26c1de866..b21614bc2 100644
--- a/package/bcm28xx-bootloader/src/boot/start_x.elf
+++ b/package/bcm28xx-bootloader/src/boot/start_x.elf
Binary files differ
diff --git a/package/curl/Makefile b/package/curl/Makefile
index 550e29b9f..c4711a7d2 100644
--- a/package/curl/Makefile
+++ b/package/curl/Makefile
@@ -4,9 +4,9 @@
include ${ADK_TOPDIR}/rules.mk
PKG_NAME:= curl
-PKG_VERSION:= 8.13.0
+PKG_VERSION:= 8.16.0
PKG_RELEASE:= 1
-PKG_HASH:= 4a093979a3c2d02de2fbc00549a32771007f2e78032c6faa5ecd2f7a9e152025
+PKG_HASH:= 40c8cddbcb6cc6251c03dea423a472a6cea4037be654ba5cf5dec6eb2d22ff1d
PKG_DESCR:= client-side url transfer tool
PKG_SECTION:= net/http
PKG_BUILDDEP:= zlib
@@ -21,7 +21,7 @@ PKG_SUBPKGS:= LIBCURL CURL
PKGSD_LIBCURL:= client-side url transfer library
PKGSC_LIBCURL:= libs/net
PKGSS_LIBCURL:= zlib
-PKGSD_CURL:= client-side url transfer utiity
+PKGSD_CURL:= client-side url transfer utility
PKGSC_CURL:= net/http
PKGSS_CURL:= zlib libcurl
diff --git a/package/exiv2/Makefile b/package/exiv2/Makefile
new file mode 100644
index 000000000..4768487c1
--- /dev/null
+++ b/package/exiv2/Makefile
@@ -0,0 +1,33 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(ADK_TOPDIR)/rules.mk
+
+PKG_NAME:= exiv2
+PKG_VERSION:= 0.28.7
+PKG_RELEASE:= 1
+PKG_HASH:= 5e292b02614dbc0cee40fe1116db2f42f63ef6b2ba430c77b614e17b8d61a638
+PKG_DESCR:= fast read and write access to the Exif, IPTC and XMP metadata of an image
+PKG_SECTION:= libs/misc
+PKG_DEPENDS:= libinih
+PKG_BUILDDEP:= libinih
+PKG_URL:= https://www.exiv2.org
+PKG_SITES:= https://github.com/Exiv2/exiv2/archive/refs/tags/
+PKG_OPTS:= dev
+
+DISTFILES:= v$(PKG_VERSION).tar.gz
+
+include $(ADK_TOPDIR)/mk/package.mk
+
+$(eval $(call PKG_template,EXIV2,exiv2,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION),$(PKG_OPTS)))
+
+CONFIG_STYLE:= cmake
+CMAKE_FLAGS+= -DEXIV2_ENABLE_BROTLI=OFF \
+ -DBUILD_WITH_STACK_PROTECTOR=OFF
+
+exiv2-install:
+ $(INSTALL_DIR) $(IDIR_EXIV2)/usr/lib
+ $(CP) $(WRKINST)/usr/lib/libexiv2*.so* \
+ $(IDIR_EXIV2)/usr/lib
+
+include $(ADK_TOPDIR)/mk/pkg-bottom.mk
diff --git a/package/fmt/Makefile b/package/fmt/Makefile
index 82d25c0cf..81d9d08aa 100644
--- a/package/fmt/Makefile
+++ b/package/fmt/Makefile
@@ -4,9 +4,9 @@
include $(ADK_TOPDIR)/rules.mk
PKG_NAME:= fmt
-PKG_VERSION:= 8.1.1
+PKG_VERSION:= 11.2.0
PKG_RELEASE:= 1
-PKG_HASH:= 3d794d3cf67633b34b2771eb9f073bde87e846e0d395d254df7b211ef1ec7346
+PKG_HASH:= bc23066d87ab3168f27cef3e97d545fa63314f5c79df5ea444d41d56f962c6af
PKG_DESCR:= modern formatting library
PKG_SECTION:= libs/misc
PKG_BUILDDEP:= cmake-host
diff --git a/package/glibc/Makefile b/package/glibc/Makefile
index a36c30903..73a65372b 100644
--- a/package/glibc/Makefile
+++ b/package/glibc/Makefile
@@ -50,7 +50,7 @@ do-install:
ifneq ($(ADK_TARGET_USE_STATIC_LIBS_ONLY),y)
${INSTALL_DIR} ${IDIR_GLIBC}/$(ADK_TARGET_LIBC_PATH)
$(CP) $(STAGING_TARGET_DIR)/lib/ld*.so* $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH)
- for file in libc libpthread librt libdl libm libanl libnsl libresolv libutil libnss_dns libnss_files; do \
+ for file in libc libpthread librt libdl libm libanl libnsl libresolv libutil libnss_dns libnss_files libmvec; do \
$(CP) $(STAGING_TARGET_DIR)/lib/$$file.so* $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH); \
done
else
diff --git a/package/json/Makefile b/package/json/Makefile
new file mode 100644
index 000000000..5d63e90ef
--- /dev/null
+++ b/package/json/Makefile
@@ -0,0 +1,30 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(ADK_TOPDIR)/rules.mk
+
+PKG_NAME:= json
+PKG_VERSION:= 3.12.0
+PKG_RELEASE:= 1
+PKG_HASH:= 4b92eb0c06d10683f7447ce9406cb97cd4b453be18d7279320f7b2f025c10187
+PKG_DESCR:= C++ json library
+PKG_SECTION:= libs/misc
+PKG_URL:= https://github.com/nlohmann/json/
+PKG_SITES:= https://github.com/nlohmann/json/archive/refs/tags/
+PKG_OPTS:= dev
+
+DISTFILES:= v$(PKG_VERSION).tar.gz
+
+include $(ADK_TOPDIR)/mk/package.mk
+
+$(eval $(call PKG_template,JSON,json,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION),$(PKG_OPTS)))
+
+WRKBUILD= $(WRKDIR)/$(PKG_NAME)-obj
+
+CONFIG_STYLE:= meson
+BUILD_STYLE:= meson
+INSTALL_STYLE:= meson
+
+json-install:
+
+include $(ADK_TOPDIR)/mk/pkg-bottom.mk
diff --git a/package/kodi/Makefile b/package/kodi/Makefile
index 534269dc8..cd1aaa91e 100644
--- a/package/kodi/Makefile
+++ b/package/kodi/Makefile
@@ -4,9 +4,9 @@
include $(ADK_TOPDIR)/rules.mk
PKG_NAME:= kodi
-PKG_VERSION:= 21.2
+PKG_VERSION:= 22.0a1
PKG_RELEASE:= 1
-PKG_HASH:= da3a5df663684664b9383b65f1c06568222629d935084a59e4e641fcdcb6c383
+PKG_HASH:= da88f6aee01995caadfc6e194b8e3b51dfd193164a6c8d559d2443dd7f58f9f8
PKG_DESCR:= software media player
PKG_SECTION:= mm/video
PKG_DEPENDS:= python3 libsquish libopenssl libfmt rapidjson libpcre
@@ -15,10 +15,10 @@ PKG_DEPENDS+= libflac libbz2 libtiff libnettle librtmp liblzo libXext
PKG_DEPENDS+= yajl tinyxml libsqlite libpcrecpp libncurses libpng
PKG_DEPENDS+= libpcre2 libcdio libfreetype libsamplerate libuuid
PKG_DEPENDS+= taglib libjasper libmp3lame libgpg-error giflib nghttp2
-PKG_DEPENDS+= glib libdcadec libffmpeg libxvidcore libiconv harfbuzz
+PKG_DEPENDS+= glib libdcadec libffmpeg libxvidcore harfbuzz exiv2
PKG_DEPENDS+= flatbuffers fstrcmp spdlog mesa libinput libxkbcommon
-PKG_DEPENDS+= xkeyboard-config tinyxml2 libdisplay-info libudfread
-PKG_BUILDDEP:= python3 libass ffmpeg rtmpdump libiconv libudfread
+PKG_DEPENDS+= xkeyboard-config tinyxml2 libdisplay-info libudfread json
+PKG_BUILDDEP:= python3 libass ffmpeg rtmpdump libudfread exiv2
PKG_BUILDDEP+= libmpeg2 libmad libjpeg-turbo fmt rapidjson
PKG_BUILDDEP+= curl flac bzip2 libtiff yajl cmake-host libdisplay-info
PKG_BUILDDEP+= tinyxml tinyxml2 sqlite pcre2 libcdio freetype libpng
@@ -26,14 +26,14 @@ PKG_BUILDDEP+= libsamplerate taglib libjasper giflib xkeyboard-config
PKG_BUILDDEP+= glib libmodplug libgpg-error xvidcore libxshmfence
PKG_BUILDDEP+= swig-host liblzo-host libpng-host libjpeg-turbo-host
PKG_BUILDDEP+= zip-host unzip-host giflib-host libsquish libdcadec
-PKG_BUILDDEP+= libcrossguid openssl bzip2 liblzo harfbuzz pcre
+PKG_BUILDDEP+= openssl bzip2 liblzo harfbuzz pcre json
PKG_BUILDDEP+= flatbuffers fstrcmp spdlog mesa libinput libxkbcommon
PKG_NEEDS:= threads c++ data iconv
PKG_URL:= http://kodi.tv/
PKG_SITES:= https://github.com/xbmc/xbmc/archive/
-DISTFILES:= $(PKG_VERSION)-Omega.tar.gz
-WRKDIST= ${WRKDIR}/xbmc-$(PKG_VERSION)-Omega
+DISTFILES:= $(PKG_VERSION)-Piers.tar.gz
+WRKDIST= ${WRKDIR}/xbmc-$(PKG_VERSION)-Piers
WRKBUILD= $(WRKDIR)/$(PKG_NAME)-obj
PKG_SYSTEM_DEPENDS:= qemu-x86_64 raspberry-pi raspberry-pi2 raspberry-pi3 raspberry-pi4 raspberry-pi4-64 rockpi4-plus raspberry-pi5
@@ -74,7 +74,6 @@ CMAKE_FLAGS+= -DENABLE_CCACHE=OFF \
-DVERBOSE=ON \
-DENABLE_DVDCSS=ON \
-DENABLE_INTERNAL_FFMPEG=OFF \
- -DENABLE_INTERNAL_CROSSGUID=OFF \
-DENABLE_INTERNAL_RapidJSON=OFF \
-DWITH_FFMPEG=$(STAGING_TARGET_DIR)/usr \
-DPYTHON_EXECUTABLE=$(STAGING_HOST_DIR)/usr/bin/python3 \
@@ -101,7 +100,8 @@ CMAKE_FLAGS+= -DENABLE_CCACHE=OFF \
-DNATIVEPREFIX=$(STAGING_HOST_DIR)/usr \
-DDEPENDS_PATH=$(STAGING_TARGET_DIR)/usr \
-DWITH_JSONSCHEMABUILDER=$(STAGING_HOST_DIR)/usr/bin/JsonSchemaBuilder \
- -DCMAKE_EXE_LINKER_FLAGS="-latomic -liconv" \
+ -DWITH_TEXTUREPACKER=$(STAGING_HOST_DIR)/usr/bin/TexturePacker \
+ -DCMAKE_EXE_LINKER_FLAGS="-latomic" \
-DLIBDVDCSS_URL=$(DL_DIR)/libdvdcss-1.4.3-Next-Nexus-Alpha2-2.tar.gz \
-DLIBDVDNAV_URL=$(DL_DIR)/libdvdnav-6.1.1-Next-Nexus-Alpha2-2.tar.gz \
-DLIBDVDREAD_URL=$(DL_DIR)/libdvdread-6.1.3-Next-Nexus-Alpha2-2.tar.gz
@@ -179,13 +179,13 @@ pre-configure:
PATH='$(HOST_PATH)' make -C $(WRKSRC)/tools/depends/native/JsonSchemaBuilder/src
cp $(WRKSRC)/tools/depends/native/JsonSchemaBuilder/src/JsonSchemaBuilder \
$(STAGING_HOST_DIR)/usr/bin/JsonSchemaBuilder
- #(cd $(WRKSRC)/tools/depends/native/TexturePacker/src && PATH='$(HOST_PATH)' cmake \
- # -DKODI_SOURCE_DIR=$(WRKSRC) \
- # -DCMAKE_MODULE_PATH=$(WRKSRC)/cmake/modules \
- # -DCMAKE_CXX_FLAGS="$(HOST_CXXFLAGS)" .)
- #PATH='$(HOST_PATH)' make -C $(WRKSRC)/tools/depends/native/TexturePacker/src
- #cp $(WRKSRC)/tools/depends/native/TexturePacker/src/TexturePacker \
- # $(STAGING_HOST_DIR)/usr/bin
+ (cd $(WRKSRC)/tools/depends/native/TexturePacker/src && PATH='$(HOST_PATH)' cmake \
+ -DKODI_SOURCE_DIR=$(WRKSRC) \
+ -DCMAKE_MODULE_PATH=$(WRKSRC)/cmake/modules \
+ -DCMAKE_CXX_FLAGS="$(HOST_CXXFLAGS)" .)
+ PATH='$(HOST_PATH)' make -C $(WRKSRC)/tools/depends/native/TexturePacker/src
+ cp $(WRKSRC)/tools/depends/native/TexturePacker/src/TexturePacker \
+ $(STAGING_HOST_DIR)/usr/bin
(cd $(DL_DIR) && wget -O libdvdcss-$(KODI_LIBDVDCSS_VERSION).tar.gz https://github.com/xbmc/libdvdcss/archive/refs/tags/$(KODI_LIBDVDCSS_VERSION).tar.gz)
(cd $(DL_DIR) && wget -O libdvdnav-$(KODI_LIBDVDNAV_VERSION).tar.gz https://github.com/xbmc/libdvdnav/archive/refs/tags/$(KODI_LIBDVDNAV_VERSION).tar.gz)
(cd $(DL_DIR) && wget -O libdvdread-$(KODI_LIBDVDREAD_VERSION).tar.gz https://github.com/xbmc/libdvdread/archive/refs/tags/$(KODI_LIBDVDREAD_VERSION).tar.gz)
diff --git a/package/kodi/patches/ffmpeg7-debian.patch b/package/kodi/patches/ffmpeg7-debian.patch
deleted file mode 100644
index 0c1e6851a..000000000
--- a/package/kodi/patches/ffmpeg7-debian.patch
+++ /dev/null
@@ -1,744 +0,0 @@
-From 5f731d1c62ebee57c0a545fe255c53b8018ca754 Mon Sep 17 00:00:00 2001
-From: Stephan Sundermann <stephansundermann@gmail.com>
-Date: Thu, 11 Apr 2024 17:11:32 +0200
-Subject: [PATCH 1/7] [ffmpeg] Update to 7.0
-
----
- cmake/modules/FindFFMPEG.cmake | 16 +--
- tools/buildsteps/windows/ffmpeg_options.txt | 1 -
- tools/depends/target/ffmpeg/CMakeLists.txt | 6 +-
- tools/depends/target/ffmpeg/FFMPEG-VERSION | 4 +-
- xbmc/cdrip/EncoderFFmpeg.cpp | 2 +-
- xbmc/cdrip/EncoderFFmpeg.h | 2 +-
- .../ActiveAE/ActiveAEResampleFFMPEG.cpp | 110 +++++++++---------
- .../DVDDemuxers/DVDDemuxFFmpeg.cpp | 71 +----------
- 8 files changed, 69 insertions(+), 143 deletions(-)
-
-diff --git a/cmake/modules/FindFFMPEG.cmake b/cmake/modules/FindFFMPEG.cmake
-index 6c6bf973de..6bd05e9f3d 100644
---- a/cmake/modules/FindFFMPEG.cmake
-+++ b/cmake/modules/FindFFMPEG.cmake
-@@ -163,14 +163,14 @@ if(WITH_FFMPEG)
- set(REQUIRED_FFMPEG_VERSION undef)
- else()
- # required ffmpeg library versions
-- set(REQUIRED_FFMPEG_VERSION 6.0.0)
-- set(_avcodec_ver ">=60.2.100")
-- set(_avfilter_ver ">=9.3.100")
-- set(_avformat_ver ">=60.3.100")
-- set(_avutil_ver ">=58.2.100")
-- set(_postproc_ver ">=57.1.100")
-- set(_swresample_ver ">=4.10.100")
-- set(_swscale_ver ">=7.1.100")
-+ set(REQUIRED_FFMPEG_VERSION 7.0.0)
-+ set(_avcodec_ver ">=61.3.100")
-+ set(_avfilter_ver ">=10.1.100")
-+ set(_avformat_ver ">=61.1.100")
-+ set(_avutil_ver ">=59.8.100")
-+ set(_postproc_ver ">=58.1.100")
-+ set(_swresample_ver ">=5.1.100")
-+ set(_swscale_ver ">=8.1.100")
- endif()
-
- # Allows building with external ffmpeg not found in system paths,
-diff --git a/tools/buildsteps/windows/ffmpeg_options.txt b/tools/buildsteps/windows/ffmpeg_options.txt
-index 5034ff26c4..776c0b4b35 100644
---- a/tools/buildsteps/windows/ffmpeg_options.txt
-+++ b/tools/buildsteps/windows/ffmpeg_options.txt
-@@ -1,5 +1,4 @@
- --disable-avdevice
----disable-crystalhd
- --disable-cuda
- --disable-cuvid
- --disable-devices
-diff --git a/tools/depends/target/ffmpeg/FFMPEG-VERSION b/tools/depends/target/ffmpeg/FFMPEG-VERSION
-index f2ba09402e..60b8887de3 100644
---- a/tools/depends/target/ffmpeg/FFMPEG-VERSION
-+++ b/tools/depends/target/ffmpeg/FFMPEG-VERSION
-@@ -1,5 +1,5 @@
- LIBNAME=ffmpeg
--VERSION=6.0.1
-+VERSION=7.0.1
- ARCHIVE=$(LIBNAME)-$(VERSION).tar.gz
--SHA512=945e34840092dc0fd3824eb1af2be79868af2afb4fe13159b19a9bcfc464cc4d53243c13ff065199290e9393ddbf4b1c5c8abccf83a31a31d6c7490e499fd1fc
-+SHA512=43b639b0bc0597e95dea2dce3e925f4b71ca8c4d9eadaef614941053e287f2d5c2e78d95413f0f7142da0f6ea1dbf443457e4fa1c2296cd8cf4081c185ed9c04
-
-diff --git a/xbmc/cdrip/EncoderFFmpeg.cpp b/xbmc/cdrip/EncoderFFmpeg.cpp
-index 85f5fa412e..907d2591dd 100644
---- a/xbmc/cdrip/EncoderFFmpeg.cpp
-+++ b/xbmc/cdrip/EncoderFFmpeg.cpp
-@@ -235,7 +235,7 @@ void CEncoderFFmpeg::SetTag(const std::string& tag, const std::string& value)
- av_dict_set(&m_formatCtx->metadata, tag.c_str(), value.c_str(), 0);
- }
-
--int CEncoderFFmpeg::avio_write_callback(void* opaque, uint8_t* buf, int buf_size)
-+int CEncoderFFmpeg::avio_write_callback(void* opaque, const uint8_t* buf, int buf_size)
- {
- CEncoderFFmpeg* enc = static_cast<CEncoderFFmpeg*>(opaque);
- if (enc->Write(buf, buf_size) != buf_size)
-diff --git a/xbmc/cdrip/EncoderFFmpeg.h b/xbmc/cdrip/EncoderFFmpeg.h
-index 48471a4b10..4e9f0f5bbb 100644
---- a/xbmc/cdrip/EncoderFFmpeg.h
-+++ b/xbmc/cdrip/EncoderFFmpeg.h
-@@ -33,7 +33,7 @@ public:
- bool Close() override;
-
- private:
-- static int avio_write_callback(void* opaque, uint8_t* buf, int buf_size);
-+ static int avio_write_callback(void* opaque, const uint8_t* buf, int buf_size);
- static int64_t avio_seek_callback(void* opaque, int64_t offset, int whence);
-
- void SetTag(const std::string& tag, const std::string& value);
-diff --git a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEResampleFFMPEG.cpp b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEResampleFFMPEG.cpp
-index e897cbd3ea..6fce0af981 100644
---- a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEResampleFFMPEG.cpp
-+++ b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEResampleFFMPEG.cpp
-@@ -66,51 +66,7 @@ bool CActiveAEResampleFFMPEG::Init(SampleConfig dstConfig, SampleConfig srcConfi
- AVChannelLayout dstChLayout = {};
- AVChannelLayout srcChLayout = {};
-
-- av_channel_layout_from_mask(&dstChLayout, m_dst_chan_layout);
-- av_channel_layout_from_mask(&srcChLayout, m_src_chan_layout);
--
-- int ret = swr_alloc_set_opts2(&m_pContext, &dstChLayout, m_dst_fmt, m_dst_rate, &srcChLayout,
-- m_src_fmt, m_src_rate, 0, NULL);
--
-- if (ret)
-- {
-- CLog::Log(LOGERROR, "CActiveAEResampleFFMPEG::Init - create context failed");
-- return false;
-- }
--
-- if(quality == AE_QUALITY_HIGH)
-- {
-- av_opt_set_double(m_pContext, "cutoff", 1.0, 0);
-- av_opt_set_int(m_pContext,"filter_size", 256, 0);
-- }
-- else if(quality == AE_QUALITY_MID)
-- {
-- // 0.97 is default cutoff so use (1.0 - 0.97) / 2.0 + 0.97
-- av_opt_set_double(m_pContext, "cutoff", 0.985, 0);
-- av_opt_set_int(m_pContext,"filter_size", 64, 0);
-- }
-- else if(quality == AE_QUALITY_LOW)
-- {
-- av_opt_set_double(m_pContext, "cutoff", 0.97, 0);
-- av_opt_set_int(m_pContext,"filter_size", 32, 0);
-- }
--
-- if (m_dst_fmt == AV_SAMPLE_FMT_S32 || m_dst_fmt == AV_SAMPLE_FMT_S32P)
-- {
-- av_opt_set_int(m_pContext, "output_sample_bits", m_dst_bits, 0);
-- }
--
-- // tell resampler to clamp float values
-- // not required for sink stage (remapLayout == true)
-- if ((m_dst_fmt == AV_SAMPLE_FMT_FLT || m_dst_fmt == AV_SAMPLE_FMT_FLTP) &&
-- (m_src_fmt == AV_SAMPLE_FMT_FLT || m_src_fmt == AV_SAMPLE_FMT_FLTP) &&
-- !remapLayout && normalize)
-- {
-- av_opt_set_double(m_pContext, "rematrix_maxval", 1.0, 0);
-- }
--
-- av_opt_set_double(m_pContext, "center_mix_level", centerMix, 0);
--
-+ bool hasMatrix = false;
- if (remapLayout)
- {
- // one-to-one mapping of channels
-@@ -120,28 +76,19 @@ bool CActiveAEResampleFFMPEG::Init(SampleConfig dstConfig, SampleConfig srcConfi
- m_dst_chan_layout = 0;
- for (unsigned int out=0; out<remapLayout->Count(); out++)
- {
-- m_dst_chan_layout += ((uint64_t)1) << out;
-+ m_dst_chan_layout += static_cast<uint64_t>(1) << out;
- int idx = CAEUtil::GetAVChannelIndex((*remapLayout)[out], m_src_chan_layout);
- if (idx >= 0)
- {
- m_rematrix[out][idx] = 1.0;
- }
- }
--
-- av_opt_set_int(m_pContext, "out_channel_count", m_dst_channels, 0);
-- av_opt_set_int(m_pContext, "out_channel_layout", m_dst_chan_layout, 0);
--
-- if (swr_set_matrix(m_pContext, (const double*)m_rematrix, AE_CH_MAX) < 0)
-- {
-- CLog::Log(LOGERROR, "CActiveAEResampleFFMPEG::Init - setting channel matrix failed");
-- return false;
-- }
-+ hasMatrix = true;
- }
- // stereo upmix
- else if (upmix && m_src_channels == 2 && m_dst_channels > 2)
- {
- memset(m_rematrix, 0, sizeof(m_rematrix));
-- av_channel_layout_uninit(&dstChLayout);
- av_channel_layout_from_mask(&dstChLayout, m_dst_chan_layout);
- for (int out=0; out<m_dst_channels; out++)
- {
-@@ -171,15 +118,64 @@ bool CActiveAEResampleFFMPEG::Init(SampleConfig dstConfig, SampleConfig srcConfi
- }
- }
-
-+ hasMatrix = true;
- av_channel_layout_uninit(&dstChLayout);
-+ }
-+
-+ av_channel_layout_from_mask(&dstChLayout, m_dst_chan_layout);
-+ av_channel_layout_from_mask(&srcChLayout, m_src_chan_layout);
-+
-+ int ret = swr_alloc_set_opts2(&m_pContext, &dstChLayout, m_dst_fmt, m_dst_rate, &srcChLayout,
-+ m_src_fmt, m_src_rate, 0, NULL);
-+
-+ if (ret)
-+ {
-+ CLog::Log(LOGERROR, "CActiveAEResampleFFMPEG::Init - create context failed");
-+ return false;
-+ }
-
-- if (swr_set_matrix(m_pContext, (const double*)m_rematrix, AE_CH_MAX) < 0)
-+ if (hasMatrix)
-+ {
-+ if (swr_set_matrix(m_pContext, reinterpret_cast<const double*>(m_rematrix), AE_CH_MAX) < 0)
- {
- CLog::Log(LOGERROR, "CActiveAEResampleFFMPEG::Init - setting channel matrix failed");
- return false;
- }
- }
-
-+ if (quality == AE_QUALITY_HIGH)
-+ {
-+ av_opt_set_double(m_pContext, "cutoff", 1.0, 0);
-+ av_opt_set_int(m_pContext, "filter_size", 256, 0);
-+ }
-+ else if (quality == AE_QUALITY_MID)
-+ {
-+ // 0.97 is default cutoff so use (1.0 - 0.97) / 2.0 + 0.97
-+ av_opt_set_double(m_pContext, "cutoff", 0.985, 0);
-+ av_opt_set_int(m_pContext, "filter_size", 64, 0);
-+ }
-+ else if (quality == AE_QUALITY_LOW)
-+ {
-+ av_opt_set_double(m_pContext, "cutoff", 0.97, 0);
-+ av_opt_set_int(m_pContext, "filter_size", 32, 0);
-+ }
-+
-+ if (m_dst_fmt == AV_SAMPLE_FMT_S32 || m_dst_fmt == AV_SAMPLE_FMT_S32P)
-+ {
-+ av_opt_set_int(m_pContext, "output_sample_bits", m_dst_bits, 0);
-+ }
-+
-+ // tell resampler to clamp float values
-+ // not required for sink stage (remapLayout == true)
-+ if ((m_dst_fmt == AV_SAMPLE_FMT_FLT || m_dst_fmt == AV_SAMPLE_FMT_FLTP) &&
-+ (m_src_fmt == AV_SAMPLE_FMT_FLT || m_src_fmt == AV_SAMPLE_FMT_FLTP) && !remapLayout &&
-+ normalize)
-+ {
-+ av_opt_set_double(m_pContext, "rematrix_maxval", 1.0, 0);
-+ }
-+
-+ av_opt_set_double(m_pContext, "center_mix_level", centerMix, 0);
-+
- if(swr_init(m_pContext) < 0)
- {
- CLog::Log(LOGERROR, "CActiveAEResampleFFMPEG::Init - init resampler failed");
-diff --git a/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
-index 1aebc3dcbc..174df53f16 100644
---- a/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
-+++ b/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
-@@ -376,74 +376,7 @@ bool CDVDDemuxFFmpeg::Open(const std::shared_ptr<CDVDInputStream>& pInput, bool
- if (iformat == nullptr)
- {
- // let ffmpeg decide which demuxer we have to open
-- bool trySPDIFonly = (m_pInput->GetContent() == "audio/x-spdif-compressed");
--
-- if (!trySPDIFonly)
-- av_probe_input_buffer(m_ioContext, &iformat, strFile.c_str(), NULL, 0, 0);
--
-- // Use the more low-level code in case we have been built against an old
-- // FFmpeg without the above av_probe_input_buffer(), or in case we only
-- // want to probe for spdif (DTS or IEC 61937) compressed audio
-- // specifically, or in case the file is a wav which may contain DTS or
-- // IEC 61937 (e.g. ac3-in-wav) and we want to check for those formats.
-- if (trySPDIFonly || (iformat && strcmp(iformat->name, "wav") == 0))
-- {
-- AVProbeData pd;
-- int probeBufferSize = 32768;
-- std::unique_ptr<uint8_t[]> probe_buffer (new uint8_t[probeBufferSize + AVPROBE_PADDING_SIZE]);
--
-- // init probe data
-- pd.buf = probe_buffer.get();
-- pd.filename = strFile.c_str();
--
-- // read data using avformat's buffers
-- pd.buf_size = avio_read(m_ioContext, pd.buf, probeBufferSize);
-- if (pd.buf_size <= 0)
-- {
-- CLog::Log(LOGERROR, "{} - error reading from input stream, {}", __FUNCTION__,
-- CURL::GetRedacted(strFile));
-- return false;
-- }
-- memset(pd.buf + pd.buf_size, 0, AVPROBE_PADDING_SIZE);
--
-- // restore position again
-- avio_seek(m_ioContext , 0, SEEK_SET);
--
-- // the advancedsetting is for allowing the user to force outputting the
-- // 44.1 kHz DTS wav file as PCM, so that an A/V receiver can decode
-- // it (this is temporary until we handle 44.1 kHz passthrough properly)
-- if (trySPDIFonly || (iformat && strcmp(iformat->name, "wav") == 0 && !CServiceBroker::GetSettingsComponent()->GetAdvancedSettings()->m_VideoPlayerIgnoreDTSinWAV))
-- {
-- // check for spdif and dts
-- // This is used with wav files and audio CDs that may contain
-- // a DTS or AC3 track padded for S/PDIF playback. If neither of those
-- // is present, we assume it is PCM audio.
-- // AC3 is always wrapped in iec61937 (ffmpeg "spdif"), while DTS
-- // may be just padded.
-- const AVInputFormat* iformat2 = av_find_input_format("spdif");
-- if (iformat2 && iformat2->read_probe(&pd) > AVPROBE_SCORE_MAX / 4)
-- {
-- iformat = iformat2;
-- }
-- else
-- {
-- // not spdif or no spdif demuxer, try dts
-- iformat2 = av_find_input_format("dts");
--
-- if (iformat2 && iformat2->read_probe(&pd) > AVPROBE_SCORE_MAX / 4)
-- {
-- iformat = iformat2;
-- }
-- else if (trySPDIFonly)
-- {
-- // not dts either, return false in case we were explicitly
-- // requested to only check for S/PDIF padded compressed audio
-- CLog::Log(LOGDEBUG, "{} - not spdif or dts file, falling back", __FUNCTION__);
-- return false;
-- }
-- }
-- }
-- }
-+ av_probe_input_buffer(m_ioContext, &iformat, strFile.c_str(), NULL, 0, 0);
-
- if (!iformat)
- {
-@@ -1353,7 +1286,7 @@ bool CDVDDemuxFFmpeg::SeekTime(double time, bool backwards, double* startpts)
-
- if (ret >= 0)
- {
-- if (m_pFormatContext->iformat->read_seek)
-+ if (!(m_pFormatContext->iformat->flags & AVFMT_NOTIMESTAMPS))
- m_seekToKeyFrame = true;
- m_currentPts = DVD_NOPTS_VALUE;
- }
---
-2.43.0
-
-
-From 17ce23505f171235ac6bfff7fbaa3a5b4bc9a8bf Mon Sep 17 00:00:00 2001
-From: Stephan Sundermann <stephansundermann@gmail.com>
-Date: Thu, 11 Apr 2024 17:13:36 +0200
-Subject: [PATCH 2/7] [ffmpeg] Remove deprecated use of FF_API_INTERLACED_FRAME
-
----
- .../DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp | 5 +++--
- .../VideoPlayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp | 9 +++++----
- xbmc/cores/VideoPlayer/DVDCodecs/Video/VAAPI.cpp | 6 ++++--
- xbmc/cores/VideoPlayer/DVDCodecs/Video/VTB.cpp | 2 +-
- 4 files changed, 13 insertions(+), 9 deletions(-)
-
-diff --git a/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp b/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp
-index eb2943bb8c..4da0722d5c 100644
---- a/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp
-+++ b/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp
-@@ -582,8 +582,9 @@ void CDVDVideoCodecDRMPRIME::SetPictureParams(VideoPicture* pVideoPicture)
-
- pVideoPicture->iRepeatPicture = 0;
- pVideoPicture->iFlags = 0;
-- pVideoPicture->iFlags |= m_pFrame->interlaced_frame ? DVP_FLAG_INTERLACED : 0;
-- pVideoPicture->iFlags |= m_pFrame->top_field_first ? DVP_FLAG_TOP_FIELD_FIRST : 0;
-+ pVideoPicture->iFlags |= m_pFrame->flags & AV_FRAME_FLAG_INTERLACED ? DVP_FLAG_INTERLACED : 0;
-+ pVideoPicture->iFlags |=
-+ m_pFrame->flags & AV_FRAME_FLAG_TOP_FIELD_FIRST ? DVP_FLAG_TOP_FIELD_FIRST : 0;
- pVideoPicture->iFlags |= m_pFrame->data[0] ? 0 : DVP_FLAG_DROPPED;
-
- if (m_codecControlFlags & DVD_CODEC_CTRL_DROP)
-diff --git a/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
-index d66378fa07..9586d211e9 100644
---- a/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
-+++ b/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
-@@ -792,12 +792,12 @@ CDVDVideoCodec::VCReturn CDVDVideoCodecFFmpeg::GetPicture(VideoPicture* pVideoPi
- }
- m_dropCtrl.Process(framePTS, m_pCodecContext->skip_frame > AVDISCARD_DEFAULT);
-
-- if (m_pDecodedFrame->key_frame)
-+ if (m_pDecodedFrame->flags & AV_FRAME_FLAG_KEY)
- {
- m_started = true;
- m_iLastKeyframe = m_pCodecContext->has_b_frames + 2;
- }
-- if (m_pDecodedFrame->interlaced_frame)
-+ if (m_pDecodedFrame->flags & AV_FRAME_FLAG_INTERLACED)
- m_interlaced = true;
- else
- m_interlaced = false;
-@@ -1013,8 +1013,9 @@ bool CDVDVideoCodecFFmpeg::GetPictureCommon(VideoPicture* pVideoPicture)
-
- pVideoPicture->iRepeatPicture = 0.5 * m_pFrame->repeat_pict;
- pVideoPicture->iFlags = 0;
-- pVideoPicture->iFlags |= m_pFrame->interlaced_frame ? DVP_FLAG_INTERLACED : 0;
-- pVideoPicture->iFlags |= m_pFrame->top_field_first ? DVP_FLAG_TOP_FIELD_FIRST: 0;
-+ pVideoPicture->iFlags |= m_pFrame->flags & AV_FRAME_FLAG_INTERLACED ? DVP_FLAG_INTERLACED : 0;
-+ pVideoPicture->iFlags |=
-+ m_pFrame->flags & AV_FRAME_FLAG_TOP_FIELD_FIRST ? DVP_FLAG_TOP_FIELD_FIRST : 0;
-
- if (m_codecControlFlags & DVD_CODEC_CTRL_DROP)
- {
-diff --git a/xbmc/cores/VideoPlayer/DVDCodecs/Video/VAAPI.cpp b/xbmc/cores/VideoPlayer/DVDCodecs/Video/VAAPI.cpp
-index fb7606e0d0..a62fa6273d 100644
---- a/xbmc/cores/VideoPlayer/DVDCodecs/Video/VAAPI.cpp
-+++ b/xbmc/cores/VideoPlayer/DVDCodecs/Video/VAAPI.cpp
-@@ -3068,8 +3068,10 @@ bool CFFmpegPostproc::AddPicture(CVaapiDecodedPicture &inPic)
- m_pFilterFrameIn->height = m_config.vidHeight;
- m_pFilterFrameIn->linesize[0] = image.pitches[0];
- m_pFilterFrameIn->linesize[1] = image.pitches[1];
-- m_pFilterFrameIn->interlaced_frame = (inPic.DVDPic.iFlags & DVP_FLAG_INTERLACED) ? 1 : 0;
-- m_pFilterFrameIn->top_field_first = (inPic.DVDPic.iFlags & DVP_FLAG_TOP_FIELD_FIRST) ? 1 : 0;
-+ if (inPic.DVDPic.iFlags & DVP_FLAG_INTERLACED)
-+ m_pFilterFrameIn->flags |= AV_FRAME_FLAG_INTERLACED;
-+ if (inPic.DVDPic.iFlags & DVP_FLAG_TOP_FIELD_FIRST)
-+ m_pFilterFrameIn->flags |= AV_FRAME_FLAG_TOP_FIELD_FIRST;
-
- if (inPic.DVDPic.pts == DVD_NOPTS_VALUE)
- m_pFilterFrameIn->pts = AV_NOPTS_VALUE;
-diff --git a/xbmc/cores/VideoPlayer/DVDCodecs/Video/VTB.cpp b/xbmc/cores/VideoPlayer/DVDCodecs/Video/VTB.cpp
-index 1f71f643d2..567d63559d 100644
---- a/xbmc/cores/VideoPlayer/DVDCodecs/Video/VTB.cpp
-+++ b/xbmc/cores/VideoPlayer/DVDCodecs/Video/VTB.cpp
-@@ -196,7 +196,7 @@ CDVDVideoCodec::VCReturn CDecoder::Decode(AVCodecContext* avctx, AVFrame* frame)
-
- if(frame)
- {
-- if (frame->interlaced_frame)
-+ if (frame->flags & AV_FRAME_FLAG_INTERLACED)
- return CDVDVideoCodec::VC_FATAL;
-
- if (m_renderBuffer)
---
-2.43.0
-
-
-From 01aa01d5c096ff7554c79493eab65dd41b00402f Mon Sep 17 00:00:00 2001
-From: Stephan Sundermann <stephansundermann@gmail.com>
-Date: Thu, 11 Apr 2024 17:14:48 +0200
-Subject: [PATCH 3/7] [ffmpeg] Remove deprecated use of avcodec_close
-
----
- xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxClient.cpp | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxClient.cpp b/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxClient.cpp
-index 0cdf8c3864..477a2e82ec 100644
---- a/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxClient.cpp
-+++ b/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxClient.cpp
-@@ -188,7 +188,6 @@ bool CDVDDemuxClient::ParsePacket(DemuxPacket* pkt)
- if (!avcodec_open2(stream->m_context, stream->m_context->codec, nullptr))
- {
- avcodec_send_packet(stream->m_context, avpkt);
-- avcodec_close(stream->m_context);
- }
- }
- av_packet_free(&avpkt);
---
-2.43.0
-
-
-From b509d439c18bebcf35cc80d18a0997caf6eda8a6 Mon Sep 17 00:00:00 2001
-From: Stephan Sundermann <stephansundermann@gmail.com>
-Date: Thu, 11 Apr 2024 17:15:16 +0200
-Subject: [PATCH 4/7] [ffmpeg] Remove deprecated use av_stream_get_side_data
-
----
- .../DVDDemuxers/DVDDemuxFFmpeg.cpp | 53 +++++++++++--------
- 1 file changed, 32 insertions(+), 21 deletions(-)
-
-diff --git a/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
-index 174df53f16..f917bf719f 100644
---- a/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
-+++ b/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
-@@ -1630,42 +1630,49 @@ CDemuxStream* CDVDDemuxFFmpeg::AddStream(int streamIdx)
- st->colorRange = pStream->codecpar->color_range;
- st->hdr_type = DetermineHdrType(pStream);
-
-- // https://github.com/FFmpeg/FFmpeg/blob/release/5.0/doc/APIchanges
-- size_t size = 0;
-- uint8_t* side_data = nullptr;
-+ // https://github.com/FFmpeg/FFmpeg/blob/release/7.0/doc/APIchanges
-+ const AVPacketSideData* sideData = nullptr;
-
- if (st->hdr_type == StreamHdrType::HDR_TYPE_DOLBYVISION)
- {
-- side_data = av_stream_get_side_data(pStream, AV_PKT_DATA_DOVI_CONF, &size);
-- if (side_data && size)
-+
-+ sideData =
-+ av_packet_side_data_get(pStream->codecpar->coded_side_data,
-+ pStream->codecpar->nb_coded_side_data, AV_PKT_DATA_DOVI_CONF);
-+ if (sideData && sideData->size)
- {
-- st->dovi = *reinterpret_cast<AVDOVIDecoderConfigurationRecord*>(side_data);
-+ st->dovi = *reinterpret_cast<const AVDOVIDecoderConfigurationRecord*>(sideData->data);
- }
- }
-
-- side_data = av_stream_get_side_data(pStream, AV_PKT_DATA_MASTERING_DISPLAY_METADATA, &size);
-- if (side_data && size)
-+ sideData = av_packet_side_data_get(pStream->codecpar->coded_side_data,
-+ pStream->codecpar->nb_coded_side_data,
-+ AV_PKT_DATA_MASTERING_DISPLAY_METADATA);
-+ if (sideData && sideData->size)
- {
- st->masteringMetaData = std::make_shared<AVMasteringDisplayMetadata>(
-- *reinterpret_cast<AVMasteringDisplayMetadata*>(side_data));
-+ *reinterpret_cast<const AVMasteringDisplayMetadata*>(sideData->data));
- }
-
-- side_data = av_stream_get_side_data(pStream, AV_PKT_DATA_CONTENT_LIGHT_LEVEL, &size);
-- if (side_data && size)
-+ sideData = av_packet_side_data_get(pStream->codecpar->coded_side_data,
-+ pStream->codecpar->nb_coded_side_data,
-+ AV_PKT_DATA_CONTENT_LIGHT_LEVEL);
-+ if (sideData && sideData->size)
- {
- st->contentLightMetaData = std::make_shared<AVContentLightMetadata>(
-- *reinterpret_cast<AVContentLightMetadata*>(side_data));
-+ *reinterpret_cast<const AVContentLightMetadata*>(sideData->data));
- }
-
-- uint8_t* displayMatrixSideData =
-- av_stream_get_side_data(pStream, AV_PKT_DATA_DISPLAYMATRIX, nullptr);
-- if (displayMatrixSideData)
-+ sideData = av_packet_side_data_get(pStream->codecpar->coded_side_data,
-+ pStream->codecpar->nb_coded_side_data,
-+ AV_PKT_DATA_DISPLAYMATRIX);
-+ if (sideData)
- {
-- const double tetha =
-- av_display_rotation_get(reinterpret_cast<int32_t*>(displayMatrixSideData));
-- if (!std::isnan(tetha))
-+ const double theta =
-+ av_display_rotation_get(reinterpret_cast<const int32_t*>(sideData->data));
-+ if (!std::isnan(theta))
- {
-- st->iOrientation = ((static_cast<int>(-tetha) % 360) + 360) % 360;
-+ st->iOrientation = ((static_cast<int>(-theta) % 360) + 360) % 360;
- }
- }
-
-@@ -2488,7 +2495,9 @@ StreamHdrType CDVDDemuxFFmpeg::DetermineHdrType(AVStream* pStream)
- {
- StreamHdrType hdrType = StreamHdrType::HDR_TYPE_NONE;
-
-- if (av_stream_get_side_data(pStream, AV_PKT_DATA_DOVI_CONF, nullptr)) // DoVi
-+ if (av_packet_side_data_get(pStream->codecpar->coded_side_data,
-+ pStream->codecpar->nb_coded_side_data,
-+ AV_PKT_DATA_DOVI_CONF)) // DoVi
- hdrType = StreamHdrType::HDR_TYPE_DOLBYVISION;
- else if (pStream->codecpar->color_trc == AVCOL_TRC_SMPTE2084) // HDR10
- hdrType = StreamHdrType::HDR_TYPE_HDR10;
-@@ -2496,7 +2505,9 @@ StreamHdrType CDVDDemuxFFmpeg::DetermineHdrType(AVStream* pStream)
- hdrType = StreamHdrType::HDR_TYPE_HLG;
- // file could be SMPTE2086 which FFmpeg currently returns as unknown
- // so use the presence of static metadata to detect it
-- else if (av_stream_get_side_data(pStream, AV_PKT_DATA_MASTERING_DISPLAY_METADATA, nullptr))
-+ else if (av_packet_side_data_get(pStream->codecpar->coded_side_data,
-+ pStream->codecpar->nb_coded_side_data,
-+ AV_PKT_DATA_MASTERING_DISPLAY_METADATA))
- hdrType = StreamHdrType::HDR_TYPE_HDR10;
-
- return hdrType;
---
-2.43.0
-
-
-From 5e7609bfee5e0559d6c29b01fbc4294d27168921 Mon Sep 17 00:00:00 2001
-From: Stephan Sundermann <stephansundermann@gmail.com>
-Date: Thu, 11 Apr 2024 17:15:43 +0200
-Subject: [PATCH 5/7] [ffmpeg] Remove CrystalHD hw acceleration strings
-
----
- addons/resource.language.en_gb/resources/strings.po | 11 ++---------
- 1 file changed, 2 insertions(+), 9 deletions(-)
-
-diff --git a/addons/resource.language.en_gb/resources/strings.po b/addons/resource.language.en_gb/resources/strings.po
-index 056b1747a0..292aae4a1b 100644
---- a/addons/resource.language.en_gb/resources/strings.po
-+++ b/addons/resource.language.en_gb/resources/strings.po
-@@ -7342,10 +7342,7 @@ msgctxt "#13427"
- msgid "Allow hardware acceleration - DXVA2"
- msgstr ""
-
--#: system/settings/settings.xml
--msgctxt "#13428"
--msgid "Allow hardware acceleration - CrystalHD"
--msgstr ""
-+#empty string with id 13428
-
- #: system/settings/settings.xml
- msgctxt "#13429"
-@@ -19502,11 +19499,7 @@ msgctxt "#36158"
- msgid "Enable DXVA2 hardware decoding of video files."
- msgstr ""
-
--#. Description of setting with label #13428 "Allow hardware acceleration (CrystalHD)"
--#: system/settings/settings.xml
--msgctxt "#36159"
--msgid "Enable CrystalHD decoding of video files."
--msgstr ""
-+#empty string with id 36159
-
- #. Description of setting with label #13429 "Allow hardware acceleration (VDADecoder)"
- #: system/settings/settings.xml
---
-2.43.0
-
-
-From 813a40bb30285b1b32a7ab6e63953eb3665f051a Mon Sep 17 00:00:00 2001
-From: Stephan Sundermann <stephansundermann@gmail.com>
-Date: Sat, 13 Apr 2024 10:31:36 +0200
-Subject: [PATCH 6/7] [settings] Remove VideoPlayerignoredtsinwav advanced
- setting
-
----
- xbmc/settings/AdvancedSettings.cpp | 2 --
- xbmc/settings/AdvancedSettings.h | 1 -
- 2 files changed, 3 deletions(-)
-
-diff --git a/xbmc/settings/AdvancedSettings.cpp b/xbmc/settings/AdvancedSettings.cpp
-index cc06244799..4e2d6badd6 100644
---- a/xbmc/settings/AdvancedSettings.cpp
-+++ b/xbmc/settings/AdvancedSettings.cpp
-@@ -129,7 +129,6 @@ void CAdvancedSettings::Initialize()
- return;
-
- m_audioApplyDrc = -1.0f;
-- m_VideoPlayerIgnoreDTSinWAV = false;
-
- //default hold time of 25 ms, this allows a 20 hertz sine to pass undistorted
- m_limiterHold = 0.025f;
-@@ -579,7 +578,6 @@ void CAdvancedSettings::ParseSettingsFile(const std::string &file)
- GetCustomRegexps(pAudioExcludes, m_audioExcludeFromScanRegExps);
-
- XMLUtils::GetFloat(pElement, "applydrc", m_audioApplyDrc);
-- XMLUtils::GetBoolean(pElement, "VideoPlayerignoredtsinwav", m_VideoPlayerIgnoreDTSinWAV);
-
- XMLUtils::GetFloat(pElement, "limiterhold", m_limiterHold, 0.0f, 100.0f);
- XMLUtils::GetFloat(pElement, "limiterrelease", m_limiterRelease, 0.001f, 100.0f);
-diff --git a/xbmc/settings/AdvancedSettings.h b/xbmc/settings/AdvancedSettings.h
-index 3351caff55..8eabfe8240 100644
---- a/xbmc/settings/AdvancedSettings.h
-+++ b/xbmc/settings/AdvancedSettings.h
-@@ -120,7 +120,6 @@ class CAdvancedSettings : public ISettingCallback, public ISettingsHandler
-
- std::string m_audioDefaultPlayer;
- float m_audioPlayCountMinimumPercent;
-- bool m_VideoPlayerIgnoreDTSinWAV;
- float m_limiterHold;
- float m_limiterRelease;
-
---
-2.43.0
-
-
-From 03449b80c2e00a56912b9612afc11f3d53dd4a05 Mon Sep 17 00:00:00 2001
-From: Stephan Sundermann <stephansundermann@gmail.com>
-Date: Sat, 13 Apr 2024 13:07:58 +0200
-Subject: [PATCH 7/7] [ffmpeg] Use new audio DTS and ATMOS profiles
-
----
- .../VideoPlayer/DVDDemuxers/DVDDemux.cpp | 20 +++++++++++++------
- .../DVDInputStreams/InputStreamAddon.cpp | 9 +++------
- 2 files changed, 17 insertions(+), 12 deletions(-)
-
-diff --git a/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemux.cpp b/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemux.cpp
-index 63fb9264a8..e9aa468dd0 100644
---- a/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemux.cpp
-+++ b/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemux.cpp
-@@ -15,15 +15,15 @@ std::string CDemuxStreamAudio::GetStreamType()
- std::string strInfo;
- switch (codec)
- {
-- //! @todo: With ffmpeg >= 6.1 add new AC4 codec
- case AV_CODEC_ID_AC3:
- strInfo = "AC3 ";
- break;
-+ case AV_CODEC_ID_AC4:
-+ strInfo = "AC4 ";
-+ break;
- case AV_CODEC_ID_EAC3:
- {
-- //! @todo: With ffmpeg >= 6.1 add new atmos profile case
-- // "JOC" its EAC3 Atmos underlying profile, there is no standard codec name string
-- if (StringUtils::Contains(codecName, "JOC"))
-+ if (profile == FF_PROFILE_EAC3_DDP_ATMOS)
- strInfo = "DD+ ATMOS ";
- else
- strInfo = "DD+ ";
-@@ -31,7 +31,6 @@ std::string CDemuxStreamAudio::GetStreamType()
- }
- case AV_CODEC_ID_DTS:
- {
-- //! @todo: With ffmpeg >= 6.1 add new DTSX profile cases
- switch (profile)
- {
- case FF_PROFILE_DTS_96_24:
-@@ -49,6 +48,12 @@ std::string CDemuxStreamAudio::GetStreamType()
- case FF_PROFILE_DTS_HD_HRA:
- strInfo = "DTS-HD HRA ";
- break;
-+ case FF_PROFILE_DTS_HD_MA_X:
-+ strInfo = "DTS-HD MA X ";
-+ break;
-+ case FF_PROFILE_DTS_HD_MA_X_IMAX:
-+ strInfo = "DTS-HD MA X (IMAX) ";
-+ break;
- default:
- strInfo = "DTS ";
- break;
-@@ -62,7 +67,10 @@ std::string CDemuxStreamAudio::GetStreamType()
- strInfo = "MP3 ";
- break;
- case AV_CODEC_ID_TRUEHD:
-- strInfo = "TrueHD ";
-+ if (profile == FF_PROFILE_TRUEHD_ATMOS)
-+ strInfo = "TrueHD ATMOS ";
-+ else
-+ strInfo = "TrueHD ";
- break;
- case AV_CODEC_ID_AAC:
- {
-diff --git a/xbmc/cores/VideoPlayer/DVDInputStreams/InputStreamAddon.cpp b/xbmc/cores/VideoPlayer/DVDInputStreams/InputStreamAddon.cpp
-index daf66ce0cd..902f38ade2 100644
---- a/xbmc/cores/VideoPlayer/DVDInputStreams/InputStreamAddon.cpp
-+++ b/xbmc/cores/VideoPlayer/DVDInputStreams/InputStreamAddon.cpp
-@@ -762,14 +762,11 @@ int CInputStreamAddon::ConvertAudioCodecProfile(STREAMCODEC_PROFILE profile)
- case DTSCodecProfileHDExpress:
- return FF_PROFILE_DTS_EXPRESS;
- case DTSCodecProfileHDMAX:
-- //! @todo: with ffmpeg >= 6.1 set the appropriate profile
-- return FF_PROFILE_UNKNOWN; // FF_PROFILE_DTS_HD_MA_X
-+ return FF_PROFILE_DTS_HD_MA_X;
- case DTSCodecProfileHDMAIMAX:
-- //! @todo: with ffmpeg >= 6.1 set the appropriate profile
-- return FF_PROFILE_UNKNOWN; // FF_PROFILE_DTS_HD_MA_X_IMAX
-+ return FF_PROFILE_DTS_HD_MA_X_IMAX;
- case DDPlusCodecProfileAtmos:
-- //! @todo: with ffmpeg >= 6.1 set the appropriate profile
-- return FF_PROFILE_UNKNOWN; // FF_PROFILE_EAC3_DDP_ATMOS
-+ return FF_PROFILE_EAC3_DDP_ATMOS;
- default:
- return FF_PROFILE_UNKNOWN;
- }
-
-
diff --git a/package/kodi/patches/patch-CMakeLists_txt b/package/kodi/patches/patch-CMakeLists_txt
deleted file mode 100644
index 7fa65595b..000000000
--- a/package/kodi/patches/patch-CMakeLists_txt
+++ /dev/null
@@ -1,27 +0,0 @@
---- xbmc-21.0b2-Omega.orig/CMakeLists.txt 2023-12-09 22:24:46.000000000 +0100
-+++ xbmc-21.0b2-Omega/CMakeLists.txt 2024-01-31 10:45:45.831435209 +0100
-@@ -178,7 +178,6 @@ endforeach()
- # Required tools. Keep in alphabetical order please
- set(required_buildtools FlatC
- JsonSchemaBuilder
-- TexturePacker
- )
-
- # Optional build tools
-@@ -468,7 +467,6 @@ endif()
- add_custom_command(
- OUTPUT ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/${CONFIG_VAR}/gen_skin.timestamp
- COMMAND ${CMAKE_COMMAND} -DBUNDLEDIR=${_bundle_dir}
-- -DTEXTUREPACKER_EXECUTABLE=$<TARGET_FILE:TexturePacker::TexturePacker::Executable>
- -P ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/GeneratedPackSkins.cmake
- COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/${CONFIG_VAR}
- COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/${CONFIG_VAR}/gen_skin.timestamp
-@@ -481,7 +479,7 @@ add_custom_target(gen_skin_pack DEPENDS
-
- # Packaging target. This generates system addon, xbt creation, copy files to build tree
- add_custom_target(generate-packaging ALL
-- DEPENDS TexturePacker::TexturePacker::Executable export-files gen_skin_pack gen_system_addons)
-+ DEPENDS export-files gen_skin_pack gen_system_addons)
- # Make sure we build any libs before we look to export-files.
- # We may need to export some shared libs/data (eg Python)
- add_dependencies(export-files ${GLOBAL_TARGET_DEPS})
diff --git a/package/kodi/patches/patch-tools_depends_native_TexturePacker_src_decoder_GifHelper_cpp b/package/kodi/patches/patch-tools_depends_native_TexturePacker_src_decoder_GifHelper_cpp
index 67e51c6e9..193f5987b 100644
--- a/package/kodi/patches/patch-tools_depends_native_TexturePacker_src_decoder_GifHelper_cpp
+++ b/package/kodi/patches/patch-tools_depends_native_TexturePacker_src_decoder_GifHelper_cpp
@@ -1,5 +1,5 @@
---- xbmc-19.3-Matrix.orig/tools/depends/native/TexturePacker/src/decoder/GifHelper.cpp 2021-10-24 12:09:58.000000000 +0200
-+++ xbmc-19.3-Matrix/tools/depends/native/TexturePacker/src/decoder/GifHelper.cpp 2022-02-26 00:09:15.499548854 +0100
+--- xbmc-22.0a1-Piers.orig/tools/depends/native/TexturePacker/src/decoder/GifHelper.cpp 2025-08-18 23:49:12.000000000 +0200
++++ xbmc-22.0a1-Piers/tools/depends/native/TexturePacker/src/decoder/GifHelper.cpp 2025-10-06 14:07:24.604055678 +0200
@@ -18,11 +18,11 @@
*
*/
diff --git a/package/kodi/patches/patch-xbmc_dbwrappers_dataset_h b/package/kodi/patches/patch-xbmc_dbwrappers_dataset_h
new file mode 100644
index 000000000..f27f92975
--- /dev/null
+++ b/package/kodi/patches/patch-xbmc_dbwrappers_dataset_h
@@ -0,0 +1,10 @@
+--- xbmc-22.0a1-Piers.orig/xbmc/dbwrappers/dataset.h 2025-08-18 23:49:12.000000000 +0200
++++ xbmc-22.0a1-Piers/xbmc/dbwrappers/dataset.h 2025-10-07 06:25:46.959580300 +0200
+@@ -14,6 +14,7 @@
+
+ #include "qry_dat.h"
+
++#include <cstdarg>
+ #include <list>
+ #include <map>
+ #include <memory>
diff --git a/package/kodi/patches/patch-xbmc_platform_linux_CPUInfoLinux_cpp b/package/kodi/patches/patch-xbmc_platform_linux_CPUInfoLinux_cpp
deleted file mode 100644
index 27c420df8..000000000
--- a/package/kodi/patches/patch-xbmc_platform_linux_CPUInfoLinux_cpp
+++ /dev/null
@@ -1,31 +0,0 @@
---- xbmc-21.0b2-Omega.orig/xbmc/platform/linux/CPUInfoLinux.cpp 2023-12-09 22:24:46.000000000 +0100
-+++ xbmc-21.0b2-Omega/xbmc/platform/linux/CPUInfoLinux.cpp 2024-01-30 15:52:43.704683194 +0100
-@@ -19,10 +19,7 @@
- #include <sstream>
- #include <vector>
-
--#if (defined(__arm__) && defined(HAS_NEON)) || defined(__aarch64__)
--#include <asm/hwcap.h>
--#include <sys/auxv.h>
--#elif defined(__i386__) || defined(__x86_64__)
-+#if defined(__i386__) || defined(__x86_64__)
- #include <cpuid.h>
- #endif
-
-@@ -279,16 +276,6 @@ CCPUInfoLinux::CCPUInfoLinux()
-
- m_cpuModel = m_cpuModel.substr(0, m_cpuModel.find(char(0))); // remove extra null terminations
-
--#if defined(HAS_NEON) && defined(__arm__)
-- if (getauxval(AT_HWCAP) & HWCAP_NEON)
-- m_cpuFeatures |= CPU_FEATURE_NEON;
--#endif
--
--#if defined(HAS_NEON) && defined(__aarch64__)
-- if (getauxval(AT_HWCAP) & HWCAP_ASIMD)
-- m_cpuFeatures |= CPU_FEATURE_NEON;
--#endif
--
- // Set MMX2 when SSE is present as SSE is a superset of MMX2 and Intel doesn't set the MMX2 cap
- if (m_cpuFeatures & CPU_FEATURE_SSE)
- m_cpuFeatures |= CPU_FEATURE_MMX2;
diff --git a/package/libinih/Makefile b/package/libinih/Makefile
index d546f244a..c54a62331 100644
--- a/package/libinih/Makefile
+++ b/package/libinih/Makefile
@@ -32,5 +32,7 @@ libinih-install:
$(INSTALL_DIR) $(IDIR_LIBINIH)/usr/lib
$(CP) $(WRKINST)/usr/lib/libinih*.so* \
$(IDIR_LIBINIH)/usr/lib
+ $(CP) $(WRKINST)/usr/lib/libINIReader*.so* \
+ $(IDIR_LIBINIH)/usr/lib
include $(ADK_TOPDIR)/mk/pkg-bottom.mk
diff --git a/package/libtheora/Makefile b/package/libtheora/Makefile
index a49ce0c81..c74f07dca 100644
--- a/package/libtheora/Makefile
+++ b/package/libtheora/Makefile
@@ -4,9 +4,9 @@
include $(ADK_TOPDIR)/rules.mk
PKG_NAME:= libtheora
-PKG_VERSION:= 1.1.1
-PKG_RELEASE:= 2
-PKG_HASH:= b6ae1ee2fa3d42ac489287d3ec34c5885730b1296f0801ae577a35193d3affbc
+PKG_VERSION:= 1.2.0
+PKG_RELEASE:= 1
+PKG_HASH:= 279327339903b544c28a92aeada7d0dcfd0397b59c2f368cc698ac56f515906e
PKG_DESCR:= open source video codec library
PKG_SECTION:= libs/video
PKG_DEPENDS:= libogg libvorbis
@@ -15,7 +15,7 @@ PKG_URL:= http://www.theora.org/
PKG_SITES:= http://downloads.xiph.org/releases/theora/
PKG_OPTS:= dev
-DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.bz2
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
include $(ADK_TOPDIR)/mk/package.mk
diff --git a/package/libtheora/patches/patch-Makefile_in b/package/libtheora/patches/patch-Makefile_in
deleted file mode 100644
index 41162985c..000000000
--- a/package/libtheora/patches/patch-Makefile_in
+++ /dev/null
@@ -1,20 +0,0 @@
---- libtheora-1.1.1.orig/Makefile.in 2009-10-01 20:04:07.000000000 +0200
-+++ libtheora-1.1.1/Makefile.in 2011-09-18 18:38:53.551740404 +0200
-@@ -164,7 +164,7 @@ AUTOMAKE_OPTIONS = foreign 1.6 dist-zip
- @THEORA_ENABLE_EXAMPLES_TRUE@EXAMPLES_DIR = examples
- @THEORA_ENABLE_EXAMPLES_FALSE@EXAMPLES_DIR =
-
--SUBDIRS = lib include doc tests m4 $(EXAMPLES_DIR)
-+SUBDIRS = lib include m4 $(EXAMPLES_DIR)
-
- # we include the whole debian/ dir in EXTRA_DIST because there's a problem
- # with autotools and HFS+ MacOSX file systems that caused debian/Makefile.am
-@@ -200,7 +200,7 @@ DIST_COMMON = README AUTHORS COPYING Mak
- missing mkinstalldirs theora-uninstalled.pc.in theora.pc.in \
- theoradec-uninstalled.pc.in theoradec.pc.in \
- theoraenc-uninstalled.pc.in theoraenc.pc.in
--DIST_SUBDIRS = lib include doc tests m4 examples
-+DIST_SUBDIRS = lib include m4 examples
- all: config.h
- $(MAKE) $(AM_MAKEFLAGS) all-recursive
-
diff --git a/package/mesa/Makefile b/package/mesa/Makefile
index a67016364..0bd924989 100644
--- a/package/mesa/Makefile
+++ b/package/mesa/Makefile
@@ -21,6 +21,11 @@ PKG_SITES:= https://archive.mesa3d.org/
PKG_LIBNAME:= mesa
PKG_OPTS:= dev
+PKG_CHOICES_MESA:= WITH_X11 WITH_WAYLAND
+PKGCD_WITH_X11:= with X11 support
+PKGCD_WITH_WAYLAND:= with wayland support
+PKGCB_WITH_WAYLAND:= wayland wayland-protocols
+
PKG_ARCH_DEPENDS:= x86 x86_64 mips mipsel mips64 mips64el arm aarch64
include $(ADK_TOPDIR)/mk/package.mk
@@ -36,8 +41,15 @@ MESON_FLAGS+= -Dllvm=disabled \
-Dgallium-drivers=panfrost,vc4,v3d,virgl \
-Dvulkan-drivers= \
-Dgbm=enabled \
- -Dglx=dri \
- -Dplatforms=x11,wayland
+ -Dglx=dri
+
+ifeq ($(ADK_PACKAGE_MESA_WITH_WAYLAND),y)
+MESON_FLAGS+= -Dplatforms="wayland"
+endif
+
+ifeq ($(ADK_PACKAGE_MESA_WITH_X11),y)
+MESON_FLAGS+= -Dplatforms="x11"
+endif
mesa-install:
$(INSTALL_DIR) $(IDIR_MESA)/usr/lib/dri
diff --git a/package/spdlog/Makefile b/package/spdlog/Makefile
index 3d96eecb9..ba38c8468 100644
--- a/package/spdlog/Makefile
+++ b/package/spdlog/Makefile
@@ -4,9 +4,9 @@
include $(ADK_TOPDIR)/rules.mk
PKG_NAME:= spdlog
-PKG_VERSION:= 1.9.2
+PKG_VERSION:= 1.15.3
PKG_RELEASE:= 1
-PKG_HASH:= 6fff9215f5cb81760be4cc16d033526d1080427d236e86d70bb02994f85e3d38
+PKG_HASH:= 15a04e69c222eb6c01094b5c7ff8a249b36bb22788d72519646fb85feb267e67
PKG_DESCR:= very fast, header-only/compiled, C++ logging library
PKG_BUILDDEP:= fmt
PKG_SECTION:= libs/misc