commit:     aed12edb041378de1ccdf9c041785e9e6c2b0b54
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 18 21:40:55 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Feb 18 21:53:16 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aed12edb

media-libs/id3lib: further (non-)C23 fixes

My 5b0d1e373dcd8c4f79735d033d205a6f36698c59 fix was nearly there but
I'd forgot about one thing that I even remember considering: the C (but not C++)
headers need to be changed to use my_bool. The C++ ones should be fine as they
would've worked before.

Bug: https://bugs.gentoo.org/949086
Bug: https://bugs.gentoo.org/949814
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch | 58 ++++++++++++++++++----
 ...ib-3.8.3-r11.ebuild => id3lib-3.8.3-r12.ebuild} |  0
 2 files changed, 49 insertions(+), 9 deletions(-)

diff --git a/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch 
b/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch
index 17f59eab4da1..ed243bc72f99 100644
--- a/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch
+++ b/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch
@@ -19,12 +19,55 @@ C++ always had "good _Bool-as-bool", unfortunately: typedef 
int my_bool.
 
 Bug: https://bugs.gentoo.org/949086
 Signed-off-by: Sam James <[email protected]>
----
- include/id3/globals.h | 25 ++++++++++++++++---------
- 1 file changed, 16 insertions(+), 9 deletions(-)
-
-diff --git a/include/id3/globals.h b/include/id3/globals.h
-index 5d8fa20..69c02b4 100644
+--- a/include/id3.h
++++ b/include/id3.h
+@@ -47,12 +47,12 @@ extern "C"
+   ID3_C_EXPORT ID3Tag*              CCONV ID3Tag_New                  (void);
+   ID3_C_EXPORT void                 CCONV ID3Tag_Delete               (ID3Tag 
*tag);
+   ID3_C_EXPORT void                 CCONV ID3Tag_Clear                (ID3Tag 
*tag);
+-  ID3_C_EXPORT bool                 CCONV ID3Tag_HasChanged           (const 
ID3Tag *tag);
+-  ID3_C_EXPORT void                 CCONV ID3Tag_SetUnsync            (ID3Tag 
*tag, bool unsync);
+-  ID3_C_EXPORT void                 CCONV ID3Tag_SetExtendedHeader    (ID3Tag 
*tag, bool ext);
+-  ID3_C_EXPORT void                 CCONV ID3Tag_SetPadding           (ID3Tag 
*tag, bool pad);
++  ID3_C_EXPORT my_bool                 CCONV ID3Tag_HasChanged           
(const ID3Tag *tag);
++  ID3_C_EXPORT void                 CCONV ID3Tag_SetUnsync            (ID3Tag 
*tag, my_bool unsync);
++  ID3_C_EXPORT void                 CCONV ID3Tag_SetExtendedHeader    (ID3Tag 
*tag, my_bool ext);
++  ID3_C_EXPORT void                 CCONV ID3Tag_SetPadding           (ID3Tag 
*tag, my_bool pad);
+   ID3_C_EXPORT void                 CCONV ID3Tag_AddFrame             (ID3Tag 
*tag, const ID3Frame *frame);
+-  ID3_C_EXPORT bool                 CCONV ID3Tag_AttachFrame          (ID3Tag 
*tag, ID3Frame *frame);
++  ID3_C_EXPORT my_bool                 CCONV ID3Tag_AttachFrame          
(ID3Tag *tag, ID3Frame *frame);
+   ID3_C_EXPORT void                 CCONV ID3Tag_AddFrames            (ID3Tag 
*tag, const ID3Frame *frames, size_t num);
+   ID3_C_EXPORT ID3Frame*            CCONV ID3Tag_RemoveFrame          (ID3Tag 
*tag, const ID3Frame *frame);
+   ID3_C_EXPORT ID3_Err              CCONV ID3Tag_Parse                (ID3Tag 
*tag, const uchar header[ID3_TAGHEADERSIZE], const uchar *buffer);
+@@ -66,7 +66,7 @@ extern "C"
+   ID3_C_EXPORT ID3Frame*            CCONV ID3Tag_FindFrameWithASCII   (const 
ID3Tag *tag, ID3_FrameID id, ID3_FieldID fld, const char *data);
+   ID3_C_EXPORT ID3Frame*            CCONV ID3Tag_FindFrameWithUNICODE (const 
ID3Tag *tag, ID3_FrameID id, ID3_FieldID fld, const unicode_t *data);
+   ID3_C_EXPORT size_t               CCONV ID3Tag_NumFrames            (const 
ID3Tag *tag);
+-  ID3_C_EXPORT bool                 CCONV ID3Tag_HasTagType           (const 
ID3Tag *tag, ID3_TagType);
++  ID3_C_EXPORT my_bool                 CCONV ID3Tag_HasTagType           
(const ID3Tag *tag, ID3_TagType);
+   ID3_C_EXPORT ID3TagIterator*      CCONV ID3Tag_CreateIterator       (ID3Tag 
*tag);
+   ID3_C_EXPORT ID3TagConstIterator* CCONV ID3Tag_CreateConstIterator  (const 
ID3Tag *tag);
+ 
+@@ -83,8 +83,8 @@ extern "C"
+   ID3_C_EXPORT void                 CCONV ID3Frame_SetID              
(ID3Frame *frame, ID3_FrameID id);
+   ID3_C_EXPORT ID3_FrameID          CCONV ID3Frame_GetID              (const 
ID3Frame *frame);
+   ID3_C_EXPORT ID3Field*            CCONV ID3Frame_GetField           (const 
ID3Frame *frame, ID3_FieldID name);
+-  ID3_C_EXPORT void                 CCONV ID3Frame_SetCompression     
(ID3Frame *frame, bool comp);
+-  ID3_C_EXPORT bool                 CCONV ID3Frame_GetCompression     (const 
ID3Frame *frame);
++  ID3_C_EXPORT void                 CCONV ID3Frame_SetCompression     
(ID3Frame *frame, my_bool comp);
++  ID3_C_EXPORT my_bool                 CCONV ID3Frame_GetCompression     
(const ID3Frame *frame);
+ 
+   /* field wrappers */
+   ID3_C_EXPORT void                 CCONV ID3Field_Clear              
(ID3Field *field);
+@@ -116,7 +116,7 @@ extern "C"
+   ID3_C_EXPORT flags_t              CCONV ID3FrameInfo_FieldFlags     
(ID3_FrameID frameid, int fieldnum);
+ 
+   /* Deprecated */
+-  ID3_C_EXPORT void                 CCONV ID3Tag_SetCompression       (ID3Tag 
*tag, bool comp);
++  ID3_C_EXPORT void                 CCONV ID3Tag_SetCompression       (ID3Tag 
*tag, my_bool comp);
+ 
+ #ifdef __cplusplus
+ }
 --- a/include/id3/globals.h
 +++ b/include/id3/globals.h
 @@ -82,12 +82,19 @@
@@ -66,6 +109,3 @@ index 5d8fa20..69c02b4 100644
  };
  
  #define ID3_NR_OF_V1_GENRES 148
--- 
-2.48.1
-

diff --git a/media-libs/id3lib/id3lib-3.8.3-r11.ebuild 
b/media-libs/id3lib/id3lib-3.8.3-r12.ebuild
similarity index 100%
rename from media-libs/id3lib/id3lib-3.8.3-r11.ebuild
rename to media-libs/id3lib/id3lib-3.8.3-r12.ebuild

Reply via email to