commit:     f3200404d3bcd2190dd93087787749e574647d62
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 26 03:19:14 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov 26 03:19:14 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f3200404

dev-perl/Ogg-Vorbis-Header: fix modern C issues

Closes: https://bugs.gentoo.org/883703
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ....ebuild => Ogg-Vorbis-Header-0.110.0-r1.ebuild} |  9 +--
 .../files/Ogg-Vorbis-Header-0.110.0-c99.patch      | 71 ++++++++++++++++++++++
 2 files changed, 76 insertions(+), 4 deletions(-)

diff --git a/dev-perl/Ogg-Vorbis-Header/Ogg-Vorbis-Header-0.110.0.ebuild 
b/dev-perl/Ogg-Vorbis-Header/Ogg-Vorbis-Header-0.110.0-r1.ebuild
similarity index 81%
rename from dev-perl/Ogg-Vorbis-Header/Ogg-Vorbis-Header-0.110.0.ebuild
rename to dev-perl/Ogg-Vorbis-Header/Ogg-Vorbis-Header-0.110.0-r1.ebuild
index 27f3fa228dc3..f6f50c3a885a 100644
--- a/dev-perl/Ogg-Vorbis-Header/Ogg-Vorbis-Header-0.110.0.ebuild
+++ b/dev-perl/Ogg-Vorbis-Header/Ogg-Vorbis-Header-0.110.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -19,6 +19,7 @@ RDEPEND="
        media-libs/libogg
        media-libs/libvorbis
 "
-BDEPEND="${RDEPEND}
-       virtual/perl-ExtUtils-MakeMaker
-"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-0.110.0-c99.patch
+)

diff --git 
a/dev-perl/Ogg-Vorbis-Header/files/Ogg-Vorbis-Header-0.110.0-c99.patch 
b/dev-perl/Ogg-Vorbis-Header/files/Ogg-Vorbis-Header-0.110.0-c99.patch
new file mode 100644
index 000000000000..d57d4d5f8ddd
--- /dev/null
+++ b/dev-perl/Ogg-Vorbis-Header/files/Ogg-Vorbis-Header-0.110.0-c99.patch
@@ -0,0 +1,71 @@
+https://bugs.gentoo.org/883703
+https://cgit.freebsd.org/ports/commit/?id=082c2a33647f8921c7bf815a02c9bd62eeb91a08
+https://github.com/freebsd/freebsd-ports/commit/082c2a33647f8921c7bf815a02c9bd62eeb91a08
+
+--- a/lib/Ogg/Vorbis/Header.pm
++++ b/lib/Ogg/Vorbis/Header.pm
+@@ -7,8 +7,9 @@ use warnings;
+ our $VERSION = '0.11';
+ 
+ use Inline C => 'DATA',
++  CC => $ENV{CC},
++  CCFLAGSEX => '-Wno-compound-token-split-by-macro',
+   LIBS => '-logg -lvorbis -lvorbisfile',
+-  INC => '-I/inc',
+   AUTO_INCLUDE => '#include "inc/vcedit.h"',
+   AUTO_INCLUDE => '#include "inc/vcedit.c"',
+   VERSION => '0.11',
+@@ -476,14 +477,14 @@ int write_vorbis (SV *obj)
+   if ((fd = fopen(inpath, "rb")) == NULL) {
+     perror("Error opening file in Ogg::Vorbis::Header::write\n");
+     free(outpath);
+-    return &PL_sv_undef;
++    return 0;
+   }
+ 
+   if ((fd2 = fopen(outpath, "w+b")) == NULL) {
+     perror("Error opening temp file in Ogg::Vorbis::Header::write\n");
+     fclose(fd);
+     free(outpath);
+-    return &PL_sv_undef;
++    return 0;
+   }
+ 
+   /* Setup the state and comments structs */
+@@ -494,7 +495,7 @@ int write_vorbis (SV *obj)
+     fclose(fd2);
+     unlink(outpath);
+     free(outpath);
+-    return &PL_sv_undef;
++    return 0;
+   }
+   vc = vcedit_comments(state);
+ 
+@@ -526,7 +527,7 @@ int write_vorbis (SV *obj)
+     vcedit_clear(state);
+     unlink(outpath);
+     free(outpath);
+-    return &PL_sv_undef;
++    return 0;
+   }
+ 
+   fclose(fd);
+@@ -536,7 +537,7 @@ int write_vorbis (SV *obj)
+     perror("Error copying tempfile in Ogg::Vorbis::Header::add_comment\n");
+     unlink(outpath);
+     free(outpath);
+-    return &PL_sv_undef;
++    return 0;
+   }
+ 
+   if ((fd2 = fopen(inpath, "wb")) == NULL) {
+@@ -544,7 +545,7 @@ int write_vorbis (SV *obj)
+     fclose(fd);
+     unlink(outpath);
+     free(outpath);
+-    return &PL_sv_undef;
++    return 0;
+   }
+ 
+   while ((bytes = fread(buffer, 1, BUFFSIZE, fd)) > 0)
+

Reply via email to