diff --git a/SDL_mixer.changes b/SDL_mixer.changes index 8fd55b0..fa5e749 100644 --- a/SDL_mixer.changes +++ b/SDL_mixer.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed Aug 21 12:28:36 UTC 2024 - Jan Engelhardt + +- Add gcc14.patch + ------------------------------------------------------------------- Sat Aug 20 08:22:31 UTC 2022 - Jan Engelhardt diff --git a/SDL_mixer.spec b/SDL_mixer.spec index b5c4d14..e2e2b01 100644 --- a/SDL_mixer.spec +++ b/SDL_mixer.spec @@ -1,7 +1,7 @@ # # spec file for package SDL_mixer # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -30,6 +30,7 @@ Source1: baselibs.conf Patch1: mikmod1.patch Patch2: mikmod2.patch Patch3: double-free-crash.patch +Patch4: gcc14.patch BuildRequires: pkg-config BuildRequires: pkgconfig(flac) BuildRequires: pkgconfig(fluidsynth) @@ -93,8 +94,7 @@ rm -rf Xcode-iOS %make_install install-bin rm -f "%buildroot/%_libdir"/*.la -%post -n %lname -p /sbin/ldconfig -%postun -n %lname -p /sbin/ldconfig +%ldconfig_scriptlets -n %lname %files -n %lname %license COPYING diff --git a/_scmsync.obsinfo b/_scmsync.obsinfo new file mode 100644 index 0000000..a0a19d6 --- /dev/null +++ b/_scmsync.obsinfo @@ -0,0 +1,4 @@ +mtime: 1724243364 +commit: 2db7fb2b46e898dbddeaaf237e891014c153a4d41d9f5250d4df15e46fe813c8 +url: https://src.opensuse.org/jengelh/SDL_mixer +revision: master diff --git a/build.specials.obscpio b/build.specials.obscpio new file mode 100644 index 0000000..2da3ccc --- /dev/null +++ b/build.specials.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:130bb418638469958411dd994adc0b73a5ccd0a961886dfac52ce4d5aa150828 +size 256 diff --git a/gcc14.patch b/gcc14.patch new file mode 100644 index 0000000..0c57d0d --- /dev/null +++ b/gcc14.patch @@ -0,0 +1,67 @@ +From: Jan Engelhardt +Date: 2024-08-21 14:26:45.530572801 +0200 + +dynamic_ogg.c: In function ‘Mix_InitOgg’: +dynamic_ogg.c:111:42: error: assignment to ‘int (*)(void *, OggVorbis_File *, char *, long int, ov_callbacks)’ from incompatible pointer type ‘int (*)(void *, OggVorbis_File *, const char *, long int, ov_callbacks)’ [-Wincompatible-pointer-types] + 111 | vorbis.ov_open_callbacks = ov_open_callbacks; +dynamic_mod.c: In function ‘Mix_InitMOD’: +dynamic_mod.c:244:36: error: assignment to ‘BOOL (*)(CHAR *)’ {aka ‘int (*)(char *)’} from incompatible pointer type ‘int (*)(const CHAR *)’ {aka ‘int (*)(const char *)’} [-Wincompatible-pointer-types] + 244 | mikmod.MikMod_Init = MikMod_Init; +dynamic_mod.c:248:40: error: assignment to ‘char * (*)(int)’ from incompatible pointer type ‘const char * (*)(int)’ [-Wincompatible-pointer-types] + 248 | mikmod.MikMod_strerror = MikMod_strerror; +mixer.c: In function ‘Mix_Init’: +mixer.c:153:60: error: implicit declaration of function ‘Mix_InitFluidSynth’ [-Wimplicit-function-declaration] + 153 | if ((initialized & MIX_INIT_FLUIDSYNTH) || Mix_InitFluidSynth() == 0) { +mixer.c: In function ‘Mix_Quit’: +mixer.c:205:17: error: implicit declaration of function ‘Mix_QuitFluidSynth’ [-Wimplicit-function-declaration] + 205 | Mix_QuitFluidSynth(); + +--- + dynamic_mod.h | 4 ++-- + dynamic_ogg.h | 2 +- + mixer.c | 1 + + 3 files changed, 4 insertions(+), 3 deletions(-) + +Index: SDL_mixer-1.2.12/dynamic_mod.h +=================================================================== +--- SDL_mixer-1.2.12.orig/dynamic_mod.h ++++ SDL_mixer-1.2.12/dynamic_mod.h +@@ -30,11 +30,11 @@ typedef struct { + void (*MikMod_Exit)(void); + CHAR* (*MikMod_InfoDriver)(void); + CHAR* (*MikMod_InfoLoader)(void); +- BOOL (*MikMod_Init)(CHAR*); ++ int (*MikMod_Init)(const char *); + void (*MikMod_RegisterAllLoaders)(void); + void (*MikMod_RegisterDriver)(struct MDRIVER*); + int* MikMod_errno; +- char* (*MikMod_strerror)(int); ++ const char *(*MikMod_strerror)(int); + void (*MikMod_free)(void*); + BOOL (*Player_Active)(void); + void (*Player_Free)(MODULE*); +Index: SDL_mixer-1.2.12/dynamic_ogg.h +=================================================================== +--- SDL_mixer-1.2.12.orig/dynamic_ogg.h ++++ SDL_mixer-1.2.12/dynamic_ogg.h +@@ -31,7 +31,7 @@ typedef struct { + void *handle; + int (*ov_clear)(OggVorbis_File *vf); + vorbis_info *(*ov_info)(OggVorbis_File *vf,int link); +- int (*ov_open_callbacks)(void *datasource, OggVorbis_File *vf, char *initial, long ibytes, ov_callbacks callbacks); ++ int (*ov_open_callbacks)(void *datasource, OggVorbis_File *vf, const char *initial, long ibytes, ov_callbacks callbacks); + ogg_int64_t (*ov_pcm_total)(OggVorbis_File *vf,int i); + #ifdef OGG_USE_TREMOR + long (*ov_read)(OggVorbis_File *vf,char *buffer,int length, int *bitstream); +Index: SDL_mixer-1.2.12/mixer.c +=================================================================== +--- SDL_mixer-1.2.12.orig/mixer.c ++++ SDL_mixer-1.2.12/mixer.c +@@ -35,6 +35,7 @@ + #include "load_ogg.h" + #include "load_flac.h" + #include "dynamic_flac.h" ++#include "dynamic_fluidsynth.h" + #include "dynamic_mod.h" + #include "dynamic_mp3.h" + #include "dynamic_ogg.h"