diff --git a/dev-libs/pegtl/files/pegtl-3.2.8-gcc-16-1.patch b/dev-libs/pegtl/files/pegtl-3.2.8-gcc-16-1.patch new file mode 100644 index 0000000000000..bcf3eed93d5bf --- /dev/null +++ b/dev-libs/pegtl/files/pegtl-3.2.8-gcc-16-1.patch @@ -0,0 +1,39 @@ +From 479dd5726da0df75bc9fc96f6fa8aa33e2104621 Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping +Date: Tue, 11 Aug 2026 02:30:40 +0200 +Subject: [PATCH] Work around compilation isues with GCC 16.1.x + +Related: +- https://github.com/taocpp/PEGTL/issues/382#issuecomment-4587769241 +- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91155 +- https://github.com/taocpp/PEGTL/commit/0176e87da3a02d0ab40ce39f03e0e4108d1bbba5 +--- + include/tao/pegtl/demangle.hpp | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/include/tao/pegtl/demangle.hpp b/include/tao/pegtl/demangle.hpp +index 389d00c..b1e1500 100644 +--- a/include/tao/pegtl/demangle.hpp ++++ b/include/tao/pegtl/demangle.hpp +@@ -85,15 +85,15 @@ template< typename T > + return tmp.substr( 0, end ); + } + +-#elif( __GNUC__ == 9 ) && ( __GNUC_MINOR__ < 3 ) ++#elif( ( __GNUC__ == 9 ) && ( __GNUC_MINOR__ < 3 ) ) || ( ( __GNUC__ == 16 ) && ( __GNUC_MINOR__ < 2 ) ) + + #if !defined( __cpp_rtti ) +-#error "RTTI support required for GCC 9.1/9.2" ++#error "RTTI support required for GCC 9.1/9.2/16.1" + #else + + #include + +-// GCC 9.1 and 9.2 have a bug that leads to truncated __PRETTY_FUNCTION__ names, ++// GCC 9.1/9.2/16.1 have a bug that leads to truncated __PRETTY_FUNCTION__ names, + // see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91155 + template< typename T > + [[nodiscard]] constexpr std::string_view TAO_PEGTL_NAMESPACE::demangle() noexcept +-- +2.55.0 + diff --git a/dev-libs/pegtl/pegtl-3.2.8-r2.ebuild b/dev-libs/pegtl/pegtl-3.2.8-r2.ebuild new file mode 100644 index 0000000000000..75bf4159e6468 --- /dev/null +++ b/dev-libs/pegtl/pegtl-3.2.8-r2.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Header-only library for creating parsers according to Parsing Expression Grammar" +HOMEPAGE="https://github.com/taocpp/PEGTL" +SRC_URI="https://github.com/taocpp/PEGTL/archive/${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${P^^}" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" +IUSE="examples test" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/${PN}-3.2.1-werror.patch + "${FILESDIR}"/${P}-gcc-16-1.patch +) + +src_configure() { + local mycmakeargs=( + -DPEGTL_BUILD_EXAMPLES=$(usex examples) + -DPEGTL_BUILD_TESTS=$(usex test) + -DPEGTL_INSTALL_CMAKE_DIR="$(get_libdir)/cmake/${PN}" + -DPEGTL_INSTALL_DOC_DIR="share/doc/${PF}" + ) + cmake_src_configure +} diff --git a/games-emulation/bsnes-jg/Manifest b/games-emulation/bsnes-jg/Manifest index 6e3778f74d1ee..e648f95a48311 100644 --- a/games-emulation/bsnes-jg/Manifest +++ b/games-emulation/bsnes-jg/Manifest @@ -1 +1,2 @@ DIST bsnes-2.1.0.tar.bz2 4327819 BLAKE2B 509ef2ed265eaf026a06511652297e690d51c12938d389c79989539f95cc6dc3c8fc5eea0d1a857067b73b079c20fa5a119262aba84f450e9733af14e454807c SHA512 3c7b0c8f8a7bcb121afcae5af45cf3e89cfd2bfa67583cd682682464784015ca10c41df7587a0c0e69bf0edc5f85df7cdb7793d10968da588b230f5ff3f08fb8 +DIST bsnes-2.1.1.tar.bz2 4335904 BLAKE2B ef05888ad19aafcd1440af4c1c7fb1723bff61f24dc3c62a551831a4899f3105c9a49642366d6f174d53a50688ff90a7e19317b80598433f41ae8dcff6468211 SHA512 f707326aab8c8fe6a648e669963475b54fbcc760fc8fb36c190451cf0ad9ce28557ce92995f90b4610ebca7435cce06482d284980d0c851284d5b89bc97897dd diff --git a/games-emulation/bsnes-jg/bsnes-jg-2.1.0.ebuild b/games-emulation/bsnes-jg/bsnes-jg-2.1.0-r1.ebuild similarity index 97% rename from games-emulation/bsnes-jg/bsnes-jg-2.1.0.ebuild rename to games-emulation/bsnes-jg/bsnes-jg-2.1.0-r1.ebuild index c614eebb313e6..4390eedf3b61b 100644 --- a/games-emulation/bsnes-jg/bsnes-jg-2.1.0.ebuild +++ b/games-emulation/bsnes-jg/bsnes-jg-2.1.0-r1.ebuild @@ -35,7 +35,7 @@ REQUIRED_USE=" DEPEND=" media-libs/libsamplerate examples? ( media-libs/libsdl2[sound,video] ) - jgmodule? ( media-libs/jg:1= ) + jgmodule? ( id == AV_CODEC_ID_RAWVIDEO || +- in_plugin->id == AV_CODEC_ID_V210 || +- in_plugin->id == AV_CODEC_ID_V210X || +- in_plugin->id == AV_CODEC_ID_V308 || +- in_plugin->id == AV_CODEC_ID_V408 || +- in_plugin->id == AV_CODEC_ID_V410 || in_plugin->id == AV_CODEC_ID_R210 ++ if (in_plugin->id == AV_CODEC_ID_RAWVIDEO ++ || in_plugin->id == AV_CODEC_ID_V210 ++ || in_plugin->id == AV_CODEC_ID_V210X ++ || in_plugin->id == AV_CODEC_ID_R210 ++#if LIBAVCODEC_VERSION_MAJOR < 63 ++ || in_plugin->id == AV_CODEC_ID_V308 ++ || in_plugin->id == AV_CODEC_ID_V408 ++ || in_plugin->id == AV_CODEC_ID_V410 ++#endif + #if LIBAVCODEC_VERSION_MAJOR < 61 +--- a/ext/libav/gstavvidenc.c ++++ b/ext/libav/gstavvidenc.c +@@ -1032,8 +1032,11 @@ + /* no quasi codecs, please */ +- if (in_plugin->id == AV_CODEC_ID_RAWVIDEO || +- in_plugin->id == AV_CODEC_ID_V210 || +- in_plugin->id == AV_CODEC_ID_V210X || +- in_plugin->id == AV_CODEC_ID_V308 || +- in_plugin->id == AV_CODEC_ID_V408 || +- in_plugin->id == AV_CODEC_ID_V410 || in_plugin->id == AV_CODEC_ID_R210 ++ if (in_plugin->id == AV_CODEC_ID_RAWVIDEO ++ || in_plugin->id == AV_CODEC_ID_V210 ++ || in_plugin->id == AV_CODEC_ID_V210X ++ || in_plugin->id == AV_CODEC_ID_R210 ++#if LIBAVCODEC_VERSION_MAJOR < 63 ++ || in_plugin->id == AV_CODEC_ID_V308 ++ || in_plugin->id == AV_CODEC_ID_V408 ++ || in_plugin->id == AV_CODEC_ID_V410 ++#endif + #if LIBAVCODEC_VERSION_MAJOR < 61 diff --git a/media-plugins/gst-plugins-libav/gst-plugins-libav-1.26.11.ebuild b/media-plugins/gst-plugins-libav/gst-plugins-libav-1.26.11.ebuild index dcfda2ce94398..1e65666944b6d 100644 --- a/media-plugins/gst-plugins-libav/gst-plugins-libav-1.26.11.ebuild +++ b/media-plugins/gst-plugins-libav/gst-plugins-libav-1.26.11.ebuild @@ -29,6 +29,10 @@ RDEPEND=" DEPEND="${RDEPEND}" BDEPEND="" +PATCHES=( + "${FILESDIR}"/${P}-ffmpeg9.patch # upstreamed +) + multilib_src_test() { # Homebrew test skips for meson local -a tests