commit:     d36b51a1c723da47b592cf6097e288f29a4367fc
Author:     Alexey Sokolov <alexey+gentoo <AT> asokolov <DOT> org>
AuthorDate: Mon Apr 14 23:48:34 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Apr 24 18:11:57 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d36b51a1

media-libs/libmp3splt: fix build with gcc 15

Closes: https://bugs.gentoo.org/943821
Signed-off-by: Alexey Sokolov <alexey+gentoo <AT> asokolov.org>
Part-of: https://github.com/gentoo/gentoo/pull/41600
Closes: https://github.com/gentoo/gentoo/pull/41600
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../libmp3splt/files/libmp3splt-0.9.2-gcc15.patch  | 14 +++++
 media-libs/libmp3splt/libmp3splt-0.9.2-r7.ebuild   | 69 ++++++++++++++++++++++
 2 files changed, 83 insertions(+)

diff --git a/media-libs/libmp3splt/files/libmp3splt-0.9.2-gcc15.patch 
b/media-libs/libmp3splt/files/libmp3splt-0.9.2-gcc15.patch
new file mode 100644
index 000000000000..6d22d027462b
--- /dev/null
+++ b/media-libs/libmp3splt/files/libmp3splt-0.9.2-gcc15.patch
@@ -0,0 +1,14 @@
+https://bugs.gentoo.org/880505
+https://github.com/mp3splt/mp3splt/pull/373
+
+--- a/plugins/ogg_new_stream_handler.h
++++ b/plugins/ogg_new_stream_handler.h
+@@ -61,7 +61,7 @@ void splt_ogg_nsh_free(splt_ogg_new_stream_handler **nsh);
+ 
+ void splt_ogg_initialise_for_new_stream(splt_ogg_new_stream_handler *nsh, 
+     ogg_page *page, ogg_int64_t *cutpoint, ogg_int64_t previous_granulepos);
+-int splt_ogg_new_stream_needs_header_packet();
++int splt_ogg_new_stream_needs_header_packet(splt_ogg_new_stream_handler *nsh);
+ void splt_ogg_new_stream_handle_header_packet(splt_ogg_new_stream_handler 
*nsh, ogg_packet *packet, int *error);
+ 
+ #define MP3SPLT_OGG_NEW_STREAM_HANDLER_H

diff --git a/media-libs/libmp3splt/libmp3splt-0.9.2-r7.ebuild 
b/media-libs/libmp3splt/libmp3splt-0.9.2-r7.ebuild
new file mode 100644
index 000000000000..a4e3d0582b74
--- /dev/null
+++ b/media-libs/libmp3splt/libmp3splt-0.9.2-r7.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="Library for mp3splt to split mp3 and ogg files without decoding"
+HOMEPAGE="https://mp3splt.sourceforge.net/mp3splt_page/home.php";
+SRC_URI="https://downloads.sourceforge.net/${PN:3}/${P}.tar.gz";
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE="doc flac pcre"
+
+RDEPEND="
+       media-libs/libmad
+       media-libs/libid3tag:=
+       media-libs/libogg
+       media-libs/libvorbis
+       flac? ( media-libs/flac:= )
+       pcre? ( dev-libs/libpcre )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       doc? (
+               >=app-text/doxygen-1.8.3.1
+               media-gfx/graphviz
+       )
+"
+
+DOCS=( AUTHORS ChangeLog LIMITS NEWS README TODO )
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-0.9.2-drop-libltdl.patch
+       "${FILESDIR}"/${PN}-0.9.2-fix-implicit-decl.patch
+       "${FILESDIR}"/CVE-2017-15185.patch
+       "${FILESDIR}"/${PN}-0.9.2-gcc15.patch
+)
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
+src_configure() {
+       # Breaks consumers like media-sound/libmp3splt otherwise
+       # bug #778476
+       append-libs -ldl
+
+       local myeconfargs=(
+               --disable-cutter # TODO package cutter 
<https://cutter.sourceforge.net/>
+               --disable-optimise
+               --disable-static
+               $(use_enable doc doxygen_doc)
+               $(use_enable flac)
+               $(use_enable pcre)
+       )
+       econf "${myeconfargs[@]}"
+}
+
+src_install() {
+       default
+
+       use doc && docompress -x /usr/share/doc/${PF}/doxygen/${PN}_ico.svg
+
+       find "${ED}" -type f -name '*.la' -delete || die
+}

Reply via email to