From 515c2610644f9486649fcb399dd661426cb678c5 Mon Sep 17 00:00:00 2001
From: Alexander Golubev <fatzer2@gmail.com>
Date: Sun, 17 May 2026 01:47:28 +0300
Subject: trinity-base/tdemultimedia-arts: fix build with gcc-16/C++20

Signed-off-by: Alexander Golubev <fatzer2@gmail.com>
---
 ...rts-14.1.6-fix-build-issues-with-GCC-16.x.patch | 57 ++++++++++++++++++++++
 .../tdemultimedia-arts-14.1.5-r1.ebuild            | 46 +++++++++++++++++
 .../tdemultimedia-arts-14.1.5.ebuild               | 42 ----------------
 .../tdemultimedia-arts-14.1.6-r1.ebuild            | 46 +++++++++++++++++
 .../tdemultimedia-arts-14.1.6.ebuild               | 42 ----------------
 5 files changed, 149 insertions(+), 84 deletions(-)
 create mode 100644 trinity-base/tdemultimedia-arts/files/tdemultimedia-arts-14.1.6-fix-build-issues-with-GCC-16.x.patch
 create mode 100644 trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.5-r1.ebuild
 delete mode 100644 trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.5.ebuild
 create mode 100644 trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.6-r1.ebuild
 delete mode 100644 trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.6.ebuild

diff --git a/trinity-base/tdemultimedia-arts/files/tdemultimedia-arts-14.1.6-fix-build-issues-with-GCC-16.x.patch b/trinity-base/tdemultimedia-arts/files/tdemultimedia-arts-14.1.6-fix-build-issues-with-GCC-16.x.patch
new file mode 100644
index 00000000..db12d9d2
--- /dev/null
+++ b/trinity-base/tdemultimedia-arts/files/tdemultimedia-arts-14.1.6-fix-build-issues-with-GCC-16.x.patch
@@ -0,0 +1,57 @@
+From 1839dd0d865eb366a1ef8eca669c5871cdd7483b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= <slavek.banko@axis.cz>
+Date: Tue, 5 May 2026 19:59:43 +0200
+Subject: [PATCH] Fix build issues with GCC 16.x
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Remove now probably no longer needed __STRICT_ANSI__ to avoid redefinitions
+of structures originating from includes internal to "iostream" include.
+
+This resolves issue #110.
+
+Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
+---
+ mpeglib/lib/input/cdromAccess_Linux.cpp | 7 -------
+ mpeglib/lib/input/httpInputStream.h     | 4 ----
+ 2 files changed, 11 deletions(-)
+
+diff --git a/mpeglib/lib/input/cdromAccess_Linux.cpp b/mpeglib/lib/input/cdromAccess_Linux.cpp
+index a3bde622..125d78c3 100644
+--- a/mpeglib/lib/input/cdromAccess_Linux.cpp
++++ b/mpeglib/lib/input/cdromAccess_Linux.cpp
+@@ -10,15 +10,8 @@
+ 
+  */
+ 
+-#ifdef __STRICT_ANSI__
+-#undef __STRICT_ANSI__
+-#define _ANSI_WAS_HERE_
+-#endif
+ #include <linux/types.h>
+ #include <linux/cdrom.h>
+-#ifdef _ANSI_WAS_HERE_
+-#define __STRICT_ANSI__ 
+-#endif
+ #include <sys/ioctl.h>
+ 
+ #include "cdromToc.h"
+diff --git a/mpeglib/lib/input/httpInputStream.h b/mpeglib/lib/input/httpInputStream.h
+index 78ec10f0..11e8862d 100644
+--- a/mpeglib/lib/input/httpInputStream.h
++++ b/mpeglib/lib/input/httpInputStream.h
+@@ -17,10 +17,6 @@
+ 
+ #include "inputStream.h"
+ 
+-#ifndef __STRICT_ANSI__
+-#define __STRICT_ANSI__
+-#endif
+-
+ #include <stdlib.h>
+ #include <string.h>
+ 
+-- 
+2.53.0
+
diff --git a/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.5-r1.ebuild b/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.5-r1.ebuild
new file mode 100644
index 00000000..aec10b51
--- /dev/null
+++ b/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.5-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2020 Gentoo Authors
+# Copyright 2020-2026 The Trinity Desktop Project
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+TRINITY_MODULE_NAME="tdemultimedia"
+TRINITY_MODULE_TYPE="core"
+TRINITY_SUBMODULE="arts mpeglib"
+TSM_EXTRACT="${TRINITY_SUBMODULE} akode_artsplugin audiofile_artsplugin
+	mpeglib_artsplug oggvorbis_artsplugin xine_artsplugin"
+inherit trinity-meta-2
+
+DESCRIPTION="The aRts pipeline builder and other tools"
+if [[ ${PV} != *9999* ]] ; then
+	KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+IUSE="akode alsa audiofile mpeg vorbis xine"
+
+DEPEND="
+	~trinity-base/arts-${PV}
+	akode? ( ~media-libs/akode-${PV} )
+	alsa? ( media-libs/alsa-lib )
+	audiofile? ( media-libs/audiofile )
+	vorbis? ( media-libs/libvorbis )
+	xine? ( media-libs/xine-lib )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+	"$FILESDIR/${PN}-14.1.6-fix-build-issues-with-GCC-16.x.patch"
+)
+
+src_configure() {
+	local mycmakeargs=(
+		-DWITH_ALSA="$(usex alsa)"
+		-DWITH_ARTS_AKODE="$(usex akode)"
+		-DWITH_ARTS_AUDIOFILE="$(usex audiofile)"
+		-DWITH_ARTS_MPEGLIB="$(usex mpeg)"
+		-DBUILD_MPEGLIB="$(usex mpeg)"
+		-DWITH_ARTS_XINE="$(usex xine)"
+		-DWITH_VORBIS="$(usex vorbis)"
+	)
+
+	trinity-meta-2_src_configure
+}
diff --git a/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.5.ebuild b/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.5.ebuild
deleted file mode 100644
index 7e4eb9e3..00000000
--- a/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.5.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Copyright 2020-2026 The Trinity Desktop Project
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-TRINITY_MODULE_NAME="tdemultimedia"
-TRINITY_MODULE_TYPE="core"
-TRINITY_SUBMODULE="arts mpeglib"
-TSM_EXTRACT="${TRINITY_SUBMODULE} akode_artsplugin audiofile_artsplugin
-	mpeglib_artsplug oggvorbis_artsplugin xine_artsplugin"
-inherit trinity-meta-2
-
-DESCRIPTION="The aRts pipeline builder and other tools"
-if [[ ${PV} != *9999* ]] ; then
-	KEYWORDS="~amd64 ~arm64 ~x86"
-fi
-IUSE="akode alsa audiofile mpeg vorbis xine"
-
-DEPEND="
-	~trinity-base/arts-${PV}
-	akode? ( ~media-libs/akode-${PV} )
-	alsa? ( media-libs/alsa-lib )
-	audiofile? ( media-libs/audiofile )
-	vorbis? ( media-libs/libvorbis )
-	xine? ( media-libs/xine-lib )
-"
-RDEPEND="${DEPEND}"
-
-src_configure() {
-	local mycmakeargs=(
-		-DWITH_ALSA="$(usex alsa)"
-		-DWITH_ARTS_AKODE="$(usex akode)"
-		-DWITH_ARTS_AUDIOFILE="$(usex audiofile)"
-		-DWITH_ARTS_MPEGLIB="$(usex mpeg)"
-		-DBUILD_MPEGLIB="$(usex mpeg)"
-		-DWITH_ARTS_XINE="$(usex xine)"
-		-DWITH_VORBIS="$(usex vorbis)"
-	)
-
-	trinity-meta-2_src_configure
-}
diff --git a/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.6-r1.ebuild b/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.6-r1.ebuild
new file mode 100644
index 00000000..dcf7e0c9
--- /dev/null
+++ b/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.6-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2020 Gentoo Authors
+# Copyright 2020-2026 The Trinity Desktop Project
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+TRINITY_MODULE_NAME="tdemultimedia"
+TRINITY_MODULE_TYPE="core"
+TRINITY_SUBMODULE="arts mpeglib"
+TSM_EXTRACT="${TRINITY_SUBMODULE} akode_artsplugin audiofile_artsplugin
+	mpeglib_artsplug oggvorbis_artsplugin xine_artsplugin"
+inherit trinity-meta-2
+
+DESCRIPTION="The aRts pipeline builder and other tools"
+if [[ ${PV} != *9999* ]] ; then
+	KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+IUSE="akode alsa audiofile mpeg vorbis xine"
+
+DEPEND="
+	~trinity-base/arts-${PV}
+	akode? ( ~media-libs/akode-${PV} )
+	alsa? ( media-libs/alsa-lib )
+	audiofile? ( media-libs/audiofile )
+	vorbis? ( media-libs/libvorbis )
+	xine? ( media-libs/xine-lib )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+	"$FILESDIR/${P}-fix-build-issues-with-GCC-16.x.patch"
+)
+
+src_configure() {
+	local mycmakeargs=(
+		-DWITH_ALSA="$(usex alsa)"
+		-DWITH_ARTS_AKODE="$(usex akode)"
+		-DWITH_ARTS_AUDIOFILE="$(usex audiofile)"
+		-DWITH_ARTS_MPEGLIB="$(usex mpeg)"
+		-DBUILD_MPEGLIB="$(usex mpeg)"
+		-DWITH_ARTS_XINE="$(usex xine)"
+		-DWITH_VORBIS="$(usex vorbis)"
+	)
+
+	trinity-meta-2_src_configure
+}
diff --git a/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.6.ebuild b/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.6.ebuild
deleted file mode 100644
index 7e4eb9e3..00000000
--- a/trinity-base/tdemultimedia-arts/tdemultimedia-arts-14.1.6.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Copyright 2020-2026 The Trinity Desktop Project
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-TRINITY_MODULE_NAME="tdemultimedia"
-TRINITY_MODULE_TYPE="core"
-TRINITY_SUBMODULE="arts mpeglib"
-TSM_EXTRACT="${TRINITY_SUBMODULE} akode_artsplugin audiofile_artsplugin
-	mpeglib_artsplug oggvorbis_artsplugin xine_artsplugin"
-inherit trinity-meta-2
-
-DESCRIPTION="The aRts pipeline builder and other tools"
-if [[ ${PV} != *9999* ]] ; then
-	KEYWORDS="~amd64 ~arm64 ~x86"
-fi
-IUSE="akode alsa audiofile mpeg vorbis xine"
-
-DEPEND="
-	~trinity-base/arts-${PV}
-	akode? ( ~media-libs/akode-${PV} )
-	alsa? ( media-libs/alsa-lib )
-	audiofile? ( media-libs/audiofile )
-	vorbis? ( media-libs/libvorbis )
-	xine? ( media-libs/xine-lib )
-"
-RDEPEND="${DEPEND}"
-
-src_configure() {
-	local mycmakeargs=(
-		-DWITH_ALSA="$(usex alsa)"
-		-DWITH_ARTS_AKODE="$(usex akode)"
-		-DWITH_ARTS_AUDIOFILE="$(usex audiofile)"
-		-DWITH_ARTS_MPEGLIB="$(usex mpeg)"
-		-DBUILD_MPEGLIB="$(usex mpeg)"
-		-DWITH_ARTS_XINE="$(usex xine)"
-		-DWITH_VORBIS="$(usex vorbis)"
-	)
-
-	trinity-meta-2_src_configure
-}
-- 
cgit v1.2.3

