Date: Sunday, May 7, 2023 @ 07:54:17
Author: arojas
Revision: 1459212
upgpkg: kodi 20.1-4: libplist 2.3 rebuild, fix build with GCC 13
Added:
kodi/trunk/gcc13.patch
Modified:
kodi/trunk/PKGBUILD
-------------+
PKGBUILD | 17 ++-
gcc13.patch | 298 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 311 insertions(+), 4 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2023-05-07 07:42:21 UTC (rev 1459211)
+++ PKGBUILD 2023-05-07 07:54:17 UTC (rev 1459212)
@@ -20,7 +20,7 @@
pkgbase=kodi
pkgname=('kodi' 'kodi-eventclients' 'kodi-tools-texturepacker' 'kodi-dev')
pkgver=20.1
-pkgrel=3
+pkgrel=4
arch=('x86_64')
url="https://kodi.tv"
license=('GPL2')
@@ -51,7 +51,7 @@
_ffmpeg_version="4.4.1-Nexus-Alpha1"
_crossguid_version="ca1bf4b810e2d188d04cb6286f957008ee1b7681"
_fstrcmp_version="0.7.D001"
-_flatbuffers_version="2.0.0"
+_flatbuffers_version="23.3.3"
_libudfread_version="1.1.2"
source=(
@@ -65,6 +65,9 @@
"$pkgbase-flatbuffers-$_flatbuffers_version.tar.gz::https://mirrors.kodi.tv/build-deps/sources/flatbuffers-$_flatbuffers_version.tar.gz"
"$pkgbase-libudfread-$_libudfread_version.tar.gz::https://mirrors.kodi.tv/build-deps/sources/libudfread-$_libudfread_version.tar.gz"
'cheat-sse-build.patch'
+ 'gcc13.patch'
+ 'https://github.com/xbmc/xbmc/commit/28ed2221.patch'
+ 'https://github.com/xbmc/xbmc/commit/023717ed.patch'
)
noextract=(
"$pkgbase-libdvdcss-$_libdvdcss_version.tar.gz"
@@ -83,9 +86,12 @@
'8beb04d577b5251e74b0d52f4d130997a8ba94bbd488c7c8309e6b45095c27807e150212888ce3a384b23dff52f8df1a7bde5407bae924ddc363f8125c0616c5'
'f0a80d8e99b10473bcfdfde3d1c5fd7b766959819f0d1c0595ac84ce46db9007a5fbfde9a55aca60530c46cb7f8ef4c7e472c6191559ded92f868589c141ccaf'
'aaeb0227afd5ada5955cbe6a565254ff88d2028d677d199c00e03b7cb5de1f2c69b18e6e8b032e452350a8eda7081807b01765adbeb8476eaf803d9de6e5509c'
-
'26a06b572c0e4c9685743bd2d2162ac7dcd74b9324624cc3f3ef5b154c0cee7c52a04b77cdc184245d2d6ae38dfdcc4fd66001c318aa8ca001d2bf1d85d66a89'
+
'4066c94f2473c7ea16917d29a613e16f840a329089c88e0bdbdb999aef3442ba00abfd2aa92266fa9c067e399dc88e6f0ccac40dc151378857e665638e78bbf0'
'3069feb5db40288beb5b112b285186162a704f0fdd3cf67a17fd4eeea015f2cfcfbb455b7aa7c3d79d00fd095a3fd11cffc7b121dce94d99c3b06a509a8977d2'
-
'91409cc66959a30f2d0dbf8d28e47dd2acbac560efb8961550c5928ae8546a32d1f156f8e55f073f953b114230117ec96c224212d28c1c1d752540c836c9ae1a')
+
'91409cc66959a30f2d0dbf8d28e47dd2acbac560efb8961550c5928ae8546a32d1f156f8e55f073f953b114230117ec96c224212d28c1c1d752540c836c9ae1a'
+
'4c9b6eebb0465f83b5ba13854b01fbecfef0c90c2a9ad5ec8ee275eccb00d3304ac378f30551a8011fef5f3e01959cf02f2e2109b73be19e24e5cbf4a209a09d'
+
'1c2bc6111e30033b13a912fc6ff49455a89ac71ddf22ecf2f833ed661154014f40c4b5625a98126ef8616184670b85e4b3aaef29f253ce46e559bcc56e07fbae'
+
'f2309773f7b12d6c0244549f3895f8cb24cb82d87a8c46f0c6987895e44ae97348e799f3237b859580aec0681fdfb09a92f07418e7a5c1cb0769f27aaaf9c45c')
prepare() {
[[ -d kodi-build ]] && rm -rf kodi-build
@@ -94,6 +100,9 @@
cd "xbmc-$pkgver-$_codename"
[[ "$_sse_workaround" -eq 1 ]] && patch -p1 -i
"$srcdir/cheat-sse-build.patch"
+ patch -p1 -i ../28ed2221.patch # Fix build with GCC 13
+ patch -p1 -i ../023717ed.patch # Fix build with GCC 13
+ patch -p1 -i ../gcc13.patch # Fix build with GCC 13
}
build() {
Added: gcc13.patch
===================================================================
--- gcc13.patch (rev 0)
+++ gcc13.patch 2023-05-07 07:54:17 UTC (rev 1459212)
@@ -0,0 +1,298 @@
+From 3e9ca53755d14417ec0f426193f63593a4ee988f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Markus=20H=C3=A4rer?= <[email protected]>
+Date: Sat, 6 May 2023 00:24:06 +0200
+Subject: [PATCH 1/8] IDecoder: Add missing cstdint include for gcc>=13
+
+---
+ tools/depends/native/TexturePacker/src/decoder/IDecoder.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/tools/depends/native/TexturePacker/src/decoder/IDecoder.h
b/tools/depends/native/TexturePacker/src/decoder/IDecoder.h
+index 3279c55a1c13f..5bc06f2f96b43 100644
+--- a/tools/depends/native/TexturePacker/src/decoder/IDecoder.h
++++ b/tools/depends/native/TexturePacker/src/decoder/IDecoder.h
+@@ -20,6 +20,7 @@
+
+ #pragma once
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+
+From d72b5b8c5e1e1f3976996930d664a4149f80c87b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Markus=20H=C3=A4rer?= <[email protected]>
+Date: Sat, 6 May 2023 00:26:44 +0200
+Subject: [PATCH 2/8] [depends][crossguid] Patch for compatibility with gcc>=13
+
+---
+ cmake/modules/FindCrossGUID.cmake | 3 ++-
+ .../target/crossguid/003-add-cstdint-include.patch | 10 ++++++++++
+ tools/depends/target/crossguid/Makefile | 1 +
+ 3 files changed, 13 insertions(+), 1 deletion(-)
+ create mode 100644
tools/depends/target/crossguid/003-add-cstdint-include.patch
+
+diff --git a/cmake/modules/FindCrossGUID.cmake
b/cmake/modules/FindCrossGUID.cmake
+index d68948a9e0650..4aceb84dfcd49 100644
+--- a/cmake/modules/FindCrossGUID.cmake
++++ b/cmake/modules/FindCrossGUID.cmake
+@@ -29,7 +29,8 @@ if(ENABLE_INTERNAL_CROSSGUID)
+ endif()
+
+ set(patches
"${CMAKE_SOURCE_DIR}/tools/depends/target/crossguid/001-fix-unused-function.patch"
+-
"${CMAKE_SOURCE_DIR}/tools/depends/target/crossguid/002-disable-Wall-error.patch")
++
"${CMAKE_SOURCE_DIR}/tools/depends/target/crossguid/002-disable-Wall-error.patch"
++
"${CMAKE_SOURCE_DIR}/tools/depends/target/crossguid/003-add-cstdint-include.patch")
+
+ generate_patchcommand("${patches}")
+
+diff --git a/tools/depends/target/crossguid/003-add-cstdint-include.patch
b/tools/depends/target/crossguid/003-add-cstdint-include.patch
+new file mode 100644
+index 0000000000000..9a710d835a99c
+--- /dev/null
++++ b/tools/depends/target/crossguid/003-add-cstdint-include.patch
+@@ -0,0 +1,10 @@
++--- a/include/crossguid/guid.hpp
+++++ b/include/crossguid/guid.hpp
++@@ -36,6 +36,7 @@ THE SOFTWARE.
++ #include <string_view>
++ #include <utility>
++ #include <iomanip>
+++#include <cstdint>
++
++ #define BEGIN_XG_NAMESPACE namespace xg {
++ #define END_XG_NAMESPACE }
+diff --git a/tools/depends/target/crossguid/Makefile
b/tools/depends/target/crossguid/Makefile
+index 2138ede9d3049..da01c39e25d45 100644
+--- a/tools/depends/target/crossguid/Makefile
++++ b/tools/depends/target/crossguid/Makefile
+@@ -47,6 +47,7 @@ endif
+ cd $(PLATFORM); $(ARCHIVE_TOOL) $(ARCHIVE_TOOL_FLAGS)
$(TARBALLS_LOCATION)/$(ARCHIVE)
+ cd $(PLATFORM); patch -p1 -i ../001-fix-unused-function.patch
+ cd $(PLATFORM); patch -p1 -i ../002-disable-Wall-error.patch
++ cd $(PLATFORM); patch -p1 -i ../003-add-cstdint-include.patch
+ cd $(PLATFORM)/build; $(CMAKE) $(CMAKE_OPTIONS) ..
+
+ .installed-$(PLATFORM): $(PLATFORM)
+
+From 9a1b8e1a92d6269ab383d0845b92d0d001873194 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Markus=20H=C3=A4rer?= <[email protected]>
+Date: Sat, 6 May 2023 01:16:17 +0200
+Subject: [PATCH 3/8] [depends][flatbuffers] Update to 23.3.3
+
+---
+ tools/depends/native/flatbuffers/Makefile | 4 ++--
+ tools/depends/target/flatbuffers/FLATBUFFERS-VERSION | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/tools/depends/native/flatbuffers/Makefile
b/tools/depends/native/flatbuffers/Makefile
+index 6911d4c78641a..2d55d7e5830cd 100644
+--- a/tools/depends/native/flatbuffers/Makefile
++++ b/tools/depends/native/flatbuffers/Makefile
+@@ -5,10 +5,10 @@ DEPS =../../Makefile.include Makefile
../../download-files.include
+
+ # lib name, version
+ LIBNAME=flatbuffers
+-VERSION=2.0.0
++VERSION=23.3.3
+ SOURCE=$(LIBNAME)-$(VERSION)
+ ARCHIVE=$(SOURCE).tar.gz
+-SHA512=26a06b572c0e4c9685743bd2d2162ac7dcd74b9324624cc3f3ef5b154c0cee7c52a04b77cdc184245d2d6ae38dfdcc4fd66001c318aa8ca001d2bf1d85d66a89
++SHA512=4066c94f2473c7ea16917d29a613e16f840a329089c88e0bdbdb999aef3442ba00abfd2aa92266fa9c067e399dc88e6f0ccac40dc151378857e665638e78bbf0
+ include ../../download-files.include
+
+ APP=$(PLATFORM)/build-cmake/flatc
+diff --git a/tools/depends/target/flatbuffers/FLATBUFFERS-VERSION
b/tools/depends/target/flatbuffers/FLATBUFFERS-VERSION
+index 4d05761cfa4b5..5ccaa80c2d668 100644
+--- a/tools/depends/target/flatbuffers/FLATBUFFERS-VERSION
++++ b/tools/depends/target/flatbuffers/FLATBUFFERS-VERSION
+@@ -1,4 +1,4 @@
+ LIBNAME=flatbuffers
+-VERSION=2.0.0
++VERSION=23.3.3
+ ARCHIVE=$(LIBNAME)-$(VERSION).tar.gz
+-SHA512=26a06b572c0e4c9685743bd2d2162ac7dcd74b9324624cc3f3ef5b154c0cee7c52a04b77cdc184245d2d6ae38dfdcc4fd66001c318aa8ca001d2bf1d85d66a89
++SHA512=4066c94f2473c7ea16917d29a613e16f840a329089c88e0bdbdb999aef3442ba00abfd2aa92266fa9c067e399dc88e6f0ccac40dc151378857e665638e78bbf0
+
+From c98cd6995b03b99ddedc266dfebd040324aed08b Mon Sep 17 00:00:00 2001
+From: Lukas Rusak <[email protected]>
+Date: Fri, 5 May 2023 16:14:16 -0700
+Subject: [PATCH 4/8] Observable: remove virtual keyword as it's never
+ overriden
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+/home/lukas/Documents/git/xbmc/xbmc/utils/Observer.h:51:23: warning: ‘virtual
Observable& Observable::operator=(const Observable&)’ was hidden
[-Woverloaded-virtual=]
+ 51 | virtual Observable &operator=(const Observable &observable);
+ | ^~~~~~~~
+
+Signed-off-by: Lukas Rusak <[email protected]>
+---
+ xbmc/utils/Observer.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/xbmc/utils/Observer.h b/xbmc/utils/Observer.h
+index 71adddd5b3651..49c9b3c2ab092 100644
+--- a/xbmc/utils/Observer.h
++++ b/xbmc/utils/Observer.h
+@@ -48,7 +48,7 @@ class Observable
+ public:
+ Observable() = default;
+ virtual ~Observable() = default;
+- virtual Observable &operator=(const Observable &observable);
++ Observable& operator=(const Observable& observable);
+
+ /*!
+ * @brief Register an observer.
+
+From fce0bcf4e203cc6cac0d91974c669b7459250eb0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Markus=20H=C3=A4rer?= <[email protected]>
+Date: Sat, 6 May 2023 15:25:25 +0200
+Subject: [PATCH 5/8] [CMake][FlatBuffers][FlatC] Make it build with our old
+ build servers
+
+Suppresses errors like these:
+
+.../binary_annotator.cpp:196:28: error: 'value' is unavailable: introduced in
macOS 10.14
+ return root_table_offset.value();
+ ^
+.../include/c++/v1/optional:944:33: note: 'value' has been explicitly marked
unavailable here
+ constexpr value_type const& value() const&
+ ^
+---
+ cmake/modules/FindFlatBuffers.cmake | 6 ++++++
+ cmake/modules/buildtools/FindFlatC.cmake | 6 ++++++
+ 2 files changed, 12 insertions(+)
+
+diff --git a/cmake/modules/FindFlatBuffers.cmake
b/cmake/modules/FindFlatBuffers.cmake
+index fffac4fae7390..e4d8b0c65188d 100644
+--- a/cmake/modules/FindFlatBuffers.cmake
++++ b/cmake/modules/FindFlatBuffers.cmake
+@@ -31,6 +31,12 @@ if(ENABLE_INTERNAL_FLATBUFFERS)
+ "${EXTRA_ARGS}")
+ set(BUILD_BYPRODUCTS ${DEPENDS_PATH}/include/flatbuffers/flatbuffers.h)
+
++ # Make it build with older XCode, remove once new build servers are in place
++ # Fixes "error: 'value' is unavailable: introduced in macOS 10.14"
++ if(APPLE)
++ list(APPEND CMAKE_ARGS -DCMAKE_CXX_FLAGS="${CMAKE_CXX_FLAGS}
-D_LIBCPP_DISABLE_AVAILABILITY")
++ endif()
++
+ BUILD_DEP_TARGET()
+ else()
+ find_path(FLATBUFFERS_INCLUDE_DIR NAMES flatbuffers/flatbuffers.h)
+diff --git a/cmake/modules/buildtools/FindFlatC.cmake
b/cmake/modules/buildtools/FindFlatC.cmake
+index e42c81463542f..b6feae664c3ce 100644
+--- a/cmake/modules/buildtools/FindFlatC.cmake
++++ b/cmake/modules/buildtools/FindFlatC.cmake
+@@ -65,6 +65,12 @@ if(NOT TARGET flatbuffers::flatc)
+ set(WIN_DISABLE_PROJECT_FLAGS 1)
+ endif()
+
++ # Make it build with older XCode, remove once new build servers are in
place
++ # Fixes "error: 'value' is unavailable: introduced in macOS 10.14"
++ if(APPLE)
++ list(APPEND CMAKE_ARGS -DCMAKE_CXX_FLAGS="${CMAKE_CXX_FLAGS}
-D_LIBCPP_DISABLE_AVAILABILITY")
++ endif()
++
+ set(FLATBUFFERS_FLATC_EXECUTABLE ${INSTALL_DIR}/flatc CACHE INTERNAL
"FlatBuffer compiler")
+
+ set(BUILD_NAME flatc)
+
+From c3f457170a2b34c0d3b7d96e1fe6c796b7a8f08d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Markus=20H=C3=A4rer?= <[email protected]>
+Date: Sat, 6 May 2023 18:11:36 +0200
+Subject: [PATCH 6/8] [CMake][FlatC] Don't look for local flatc if
+ ENABLE_INTERNAL_FLATBUFFERS in enabled
+
+The internal headers and external flatc may not be compatible.
+---
+ cmake/modules/buildtools/FindFlatC.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/modules/buildtools/FindFlatC.cmake
b/cmake/modules/buildtools/FindFlatC.cmake
+index b6feae664c3ce..b0849d59137c2 100644
+--- a/cmake/modules/buildtools/FindFlatC.cmake
++++ b/cmake/modules/buildtools/FindFlatC.cmake
+@@ -19,7 +19,7 @@ if(NOT TARGET flatbuffers::flatc)
+ find_program(FLATBUFFERS_FLATC_EXECUTABLE NAMES flatc
+ HINTS ${NATIVEPREFIX}/bin)
+
+- if(FLATBUFFERS_FLATC_EXECUTABLE)
++ if(FLATBUFFERS_FLATC_EXECUTABLE AND NOT ENABLE_INTERNAL_FLATBUFFERS)
+ execute_process(COMMAND "${FLATBUFFERS_FLATC_EXECUTABLE}" --version
+ OUTPUT_VARIABLE FLATBUFFERS_FLATC_VERSION
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+From 56973329e871569f1b50e80a48ce2bcc3d8baaff Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Markus=20H=C3=A4rer?= <[email protected]>
+Date: Sat, 6 May 2023 21:27:01 +0200
+Subject: [PATCH 7/8] !!!TEMP!!! I'm becoming desperate...
+
+---
+ cmake/modules/FindFlatBuffers.cmake | 6 ++++++
+ cmake/modules/buildtools/FindFlatC.cmake | 8 +++++++-
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/cmake/modules/FindFlatBuffers.cmake
b/cmake/modules/FindFlatBuffers.cmake
+index e4d8b0c65188d..5a95fdcc10f85 100644
+--- a/cmake/modules/FindFlatBuffers.cmake
++++ b/cmake/modules/FindFlatBuffers.cmake
+@@ -34,7 +34,13 @@ if(ENABLE_INTERNAL_FLATBUFFERS)
+ # Make it build with older XCode, remove once new build servers are in place
+ # Fixes "error: 'value' is unavailable: introduced in macOS 10.14"
+ if(APPLE)
++ message(STATUS "I'm in the correct branch")
++ message(STATUS "CMAKE_ARGS before: ${CMAKE_ARGS}")
+ list(APPEND CMAKE_ARGS -DCMAKE_CXX_FLAGS="${CMAKE_CXX_FLAGS}
-D_LIBCPP_DISABLE_AVAILABILITY")
++ message(STATUS "CMAKE_ARGS after: ${CMAKE_ARGS}")
++ else()
++ message(STATUS "I'm in the wrong branch")
++ message(STATUS "I'm in the wrong branch. CMAKE_SYSTEM_NAME:
${CMAKE_SYSTEM_NAME} CMAKE_HOST_SYSTEM_NAME: ${CMAKE_HOST_SYSTEM_NAME}")
+ endif()
+
+ BUILD_DEP_TARGET()
+diff --git a/cmake/modules/buildtools/FindFlatC.cmake
b/cmake/modules/buildtools/FindFlatC.cmake
+index b0849d59137c2..6bebc755d56a9 100644
+--- a/cmake/modules/buildtools/FindFlatC.cmake
++++ b/cmake/modules/buildtools/FindFlatC.cmake
+@@ -67,8 +67,14 @@ if(NOT TARGET flatbuffers::flatc)
+
+ # Make it build with older XCode, remove once new build servers are in
place
+ # Fixes "error: 'value' is unavailable: introduced in macOS 10.14"
+- if(APPLE)
++ if(LINUX)
++ message(STATUS "I'm in the correct branch")
++ message(STATUS "CMAKE_ARGS before: ${CMAKE_ARGS}")
+ list(APPEND CMAKE_ARGS -DCMAKE_CXX_FLAGS="${CMAKE_CXX_FLAGS}
-D_LIBCPP_DISABLE_AVAILABILITY")
++ message(STATUS "CMAKE_ARGS after: ${CMAKE_ARGS}")
++ else()
++ message(STATUS "I'm in the wrong branch")
++ message(STATUS "I'm in the wrong branch. CMAKE_SYSTEM_NAME:
${CMAKE_SYSTEM_NAME} CMAKE_HOST_SYSTEM_NAME: ${CMAKE_HOST_SYSTEM_NAME}")
+ endif()
+
+ set(FLATBUFFERS_FLATC_EXECUTABLE ${INSTALL_DIR}/flatc CACHE INTERNAL
"FlatBuffer compiler")
+
+From cb6c8bbb20096afca2b456221fa5e036b01f272a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Markus=20H=C3=A4rer?= <[email protected]>
+Date: Sat, 6 May 2023 22:10:26 +0200
+Subject: [PATCH 8/8] fixup! !!!TEMP!!! I'm becoming desperate...
+
+---
+ cmake/modules/buildtools/FindFlatC.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/modules/buildtools/FindFlatC.cmake
b/cmake/modules/buildtools/FindFlatC.cmake
+index 6bebc755d56a9..0ccbc04dc9924 100644
+--- a/cmake/modules/buildtools/FindFlatC.cmake
++++ b/cmake/modules/buildtools/FindFlatC.cmake
+@@ -67,7 +67,7 @@ if(NOT TARGET flatbuffers::flatc)
+
+ # Make it build with older XCode, remove once new build servers are in
place
+ # Fixes "error: 'value' is unavailable: introduced in macOS 10.14"
+- if(LINUX)
++ if(APPLE)
+ message(STATUS "I'm in the correct branch")
+ message(STATUS "CMAKE_ARGS before: ${CMAKE_ARGS}")
+ list(APPEND CMAKE_ARGS -DCMAKE_CXX_FLAGS="${CMAKE_CXX_FLAGS}
-D_LIBCPP_DISABLE_AVAILABILITY")