diff options
author | Mike Frysinger <vapier@gentoo.org> | 2012-12-17 01:35:56 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2012-12-17 01:35:56 +0000 |
commit | cfcea7972c83fb68821d493c6e5a59f5edca34f6 (patch) | |
tree | 50f9cf6fc0dd5d7513d3ded85e1115651a18f32d /media-libs/sdl-mixer | |
parent | Version bump: adds improved tests, fixes flag setting, bug #446518 (diff) | |
download | historical-cfcea7972c83fb68821d493c6e5a59f5edca34f6.tar.gz historical-cfcea7972c83fb68821d493c6e5a59f5edca34f6.tar.bz2 historical-cfcea7972c83fb68821d493c6e5a59f5edca34f6.zip |
Add fixes from upstream for working with newer mikmod versions #445980 by Benjamin Réveillé.
Package-Manager: portage-2.2.0_alpha144/cvs/Linux x86_64
Manifest-Sign-Key: 0xFB7C4156
Diffstat (limited to 'media-libs/sdl-mixer')
-rw-r--r-- | media-libs/sdl-mixer/ChangeLog | 10 | ||||
-rw-r--r-- | media-libs/sdl-mixer/Manifest | 25 | ||||
-rw-r--r-- | media-libs/sdl-mixer/files/sdl-mixer-1.2.12-mikmod-r587.patch | 58 | ||||
-rw-r--r-- | media-libs/sdl-mixer/files/sdl-mixer-1.2.12-mikmod-r588.patch | 37 | ||||
-rw-r--r-- | media-libs/sdl-mixer/sdl-mixer-1.2.12-r2.ebuild | 103 |
5 files changed, 231 insertions, 2 deletions
diff --git a/media-libs/sdl-mixer/ChangeLog b/media-libs/sdl-mixer/ChangeLog index fcbbe94bcfe2..5f85662e6ea5 100644 --- a/media-libs/sdl-mixer/ChangeLog +++ b/media-libs/sdl-mixer/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for media-libs/sdl-mixer # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/sdl-mixer/ChangeLog,v 1.111 2012/11/17 18:04:05 mr_bones_ Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/sdl-mixer/ChangeLog,v 1.112 2012/12/17 01:35:51 vapier Exp $ + +*sdl-mixer-1.2.12-r2 (17 Dec 2012) + + 17 Dec 2012; Mike Frysinger <vapier@gentoo.org> + +files/sdl-mixer-1.2.12-mikmod-r587.patch, + +files/sdl-mixer-1.2.12-mikmod-r588.patch, +sdl-mixer-1.2.12-r2.ebuild: + Add fixes from upstream for working with newer mikmod versions #445980 by + Benjamin Réveillé. 17 Nov 2012; Michael Sterrett <mr_bones_@gentoo.org> -files/sdl-mixer-1.2.11-midi.patch, -files/sdl-mixer-1.2.11-multilib.patch, diff --git a/media-libs/sdl-mixer/Manifest b/media-libs/sdl-mixer/Manifest index d8c7d2760393..43599dc3f284 100644 --- a/media-libs/sdl-mixer/Manifest +++ b/media-libs/sdl-mixer/Manifest @@ -1,5 +1,28 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +AUX sdl-mixer-1.2.12-mikmod-r587.patch 1753 SHA256 f2d6268299ebb2c2a32778f4a2b7328b2e7449a2af819e512e1835132f93fb08 SHA512 cf9db17efea9ddfdae5420170314efa322b54ccf96dabba4be45f0aa727c449f32682fbcb695d6d4dcb812ea8ac1a3a012879868dff0aba397d72e4b2a74118e WHIRLPOOL 2735573dba69b384bce8ff8cc5f7efcc2fba1de75ef1daa4c37e22092f47bc20096451bc26292a2342788a552b18426900d7dedc3ed6e6f45e2b2c40839c6a0e +AUX sdl-mixer-1.2.12-mikmod-r588.patch 1241 SHA256 773bde5cefc791c980863fe0298cbe14657f6fc5a964b376bcf489f4fd57bf0a SHA512 4e2a2838132aeed0e35b3e43af9abe32eb51899899bdbb5833c9a3bfc0bd5957ae5a9a6c1adbca5d70f8c1986b32288d2edd89acefae184c32edc0f673c067c9 WHIRLPOOL 379c87714cb774e8999f3a75ad9d9682b06b77c93a22670111b0666a026dda1eee02eea24377ea1406cfdadb802d554c089fef5c048b86a1fe889b33806cd956 AUX sdl-mixer-1.2.12-wav.patch 796 SHA256 7d455c08d79c4a957a8ae25e83f7253c5ff307a7fdc2c4d433b482dc3b7d70b9 SHA512 9fed330d6bcae546752434a0ea29168e2a8fa432c8670d7290e70905f3431746b15126e5ce05820e4dd4dd09c982c880a6ce901ab9b3cff298e7f2c8d6a8b491 WHIRLPOOL 8b26551b494cdb6658538a4220c01d48f3996c2eb74f4a4e97b7b4f1aa4945d951e26d885911ef0cd2d7183befd5cace209e3f88469ab21d4981864c6ee2063c DIST SDL_mixer-1.2.12.tar.gz 3707781 SHA256 1644308279a975799049e4826af2cfc787cad2abb11aa14562e402521f86992a SHA512 230f6c5a73f4bea364f8aa3d75f76694305571dea45f357def742b2b50849b2d896af71e08689981207edc99a9836088bee2d0bd98d92c7f4ca52b12b3d8cf96 WHIRLPOOL 046b7a160cfe214cdac8c1a5ea424024a8850d3737908e5630b504f1f12817bfd2f391909f37be3d6994cab7f71ab24ecab92e99f5429dd8405f0e4046bc00a7 EBUILD sdl-mixer-1.2.12-r1.ebuild 2878 SHA256 7bc2f9790155808aec3623e10e697234ba9bb4346458334b018a6e10909f314b SHA512 1b4feef7c11c74af8ceca50914be97b386d40936baa2913e851507fd8d71c5efebc84bd439709af8715afdc4b998714ebfcd55f8fab8427656b8bd8a8bb2b32c WHIRLPOOL 9de71f8ac0e54aa1f290cab52e741bf09ad8f9f021c74e67e6d9b456603b1daf74a1aa580b0176bac18682858b98fba3e86e44961053bc20eaa75de8f20e8ac8 -MISC ChangeLog 14685 SHA256 e07b5d57eb4273d4f2eb40472bc0009907e573f42637f9eea5fc999a77138a13 SHA512 68e43463e6b27a7a3a9409c5cc1ac8a6f42967370500bcfc29e6f81e7a952b61c7fdf89f427cc2cc237b93879df394d9c23c570a74897c6270bc117bcad361de WHIRLPOOL 5989079115f68206c113aa20c4ed0012d267578d00971adee31b0e212ae2c6083f7362f1a78c4d428502e91c50897cf45e8ee2995a13e88eb919acf0647e1721 +EBUILD sdl-mixer-1.2.12-r2.ebuild 2943 SHA256 e682e83be0cc9cfd4a22d9084a63cbfda72519105cf0ae9dd1c1f682630fc5d8 SHA512 b5b0a20eaefb7157edfc0b10ceb7c371f3c4fd5c71b51ff644761a825cc1f033737dbf05c3f9e7b3fa0a2e5b3ba3a4c047993f8db31d755ee79b60d2b0b8862e WHIRLPOOL ed41958d8cf2b2810cba99f4a21ff5e89c5f3f4e77b6852f1623b9c29168a230d0d99e89d6b47ddbb5b9f7b030b7c8dfa4eff0f40295ec1137d69f122237123a +MISC ChangeLog 14987 SHA256 da6ad294acc17b4e223f8855173655abe74652ca44799f79e766da3494efca87 SHA512 af4f55f96fb395c6e9709c3e9daee283f387621741dbc448db8a6e909f8ae4f3485cf507caa44e9c450a21fa63afbfcc5d7ecc9744433044d8e53ef175be87ba WHIRLPOOL 5da89b9afe9c37d67888994070a9ea06325db41acf63d9d87bfa9f6bdcb891371f786599cf14b83ffa952d79bd65ed2b88f22130324ff3ba80774fb6ef57b2d4 MISC metadata.xml 572 SHA256 d4c6ae5e121255b47dd978176db7002fd8db1753cbfdf58792e9b4fa7565de35 SHA512 2b0cd28223fffbda314ad0f08415ca39b47b5734e105aea2f802b7ad22bee5aaa1c29c5583848de0605cbfde133901ac7bb1f61dd06c195ed731fc3a1847c656 WHIRLPOOL 50908664fc647d1c2d7c9d83cdb3bb4cb350ae38222dd15ad415bee3e5a85a7caa95ee65f79db44242bf7d94ff48ebe2354d21b1738cfc7a116eedaf4e32dc29 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.19 (GNU/Linux) + +iQIcBAEBCAAGBQJQznb6AAoJELEHsLL7fEFW2ZgP/jvnj8J1wi0ZWRVKHRSZ7Xag +iqNTTNJ8PRSOBgWE3zByFjLzusUKB3kYmxH9oe4fg1TMnZeN2g2xeoV37FkWHm1Z +dKhcvXTGKaqyZviSeyhQiMsc1+lap8KVIR7Q/+pQKdcha/FRHcx4s7XdeloFItWF +93G3/hG8dsSsHmE2B3DO3WjvkSkPlyeow8O/wAtx6OyMuthRLLTPYA/EntUCivSY +wtdxJlQ6u6ZJcIr1czC4JR6PybnNi4Gw1gcW7PINhkAjHijzkmZs6BDg38FQ8HBr +0Kl17N+ABZoPV49upVzVdqDlnycpx2MWOf27360fb1fIa3UKgeDKDy4J7C2YVcVZ +Ua6A1iEMNE2XBQ11z3uOzp5BFQX7XF6zVLHMUASXTFRGGP/0O4TXKfkECxSpxVGB +OLfAg+BgBDEjO8rJRYoXtHML8u5Zn6EPJgdzgPq9o1AwpWmsLUKXVFO2Kzw92Kz7 +dqwws03RLRYdTQaXASoQHyA8KbFVMejEKpXpMtrLmlfJ+n6onYfwwtFLeFkPj7r8 +XdvwAjS2a60CSxvVzQpsojuMwcYyzuU1G4eUymlX/+0uUbSOvDRotEahf2+t59IX +WhTkkVhEXvqXIuEDmdYH4ip4BKZLcr+Vevd9hC/8mkJlK+g0LQOe5mPXLcJhlLiv +JHC/IW9kPGX0ujGIc6/9 +=ghpq +-----END PGP SIGNATURE----- diff --git a/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-mikmod-r587.patch b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-mikmod-r587.patch new file mode 100644 index 000000000000..4763da11413f --- /dev/null +++ b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-mikmod-r587.patch @@ -0,0 +1,58 @@ +http://hg.libsdl.org/SDL_mixer/rev/56cad6484b04 +https://bugs.gentoo.org/445980 + +# HG changeset patch +# User Sam Lantinga <slouken@libsdl.org> +# Date 1342998807 25200 +# Node ID 56cad6484b04f83c8d42428c755a046678506436 +# Parent c92001a2c18f628698c58aa4e05a7335d10d0e9e +Paul P Komkoff Jr fixed malloc/free mismatch in the MikMod driver + +diff -r c92001a2c18f -r 56cad6484b04 dynamic_mod.c +--- a/dynamic_mod.c Sun Mar 04 21:32:47 2012 +0000 ++++ b/dynamic_mod.c Sun Jul 22 16:13:27 2012 -0700 +@@ -93,6 +93,13 @@ + SDL_UnloadObject(mikmod.handle); + return -1; + } ++ mikmod.MikMod_free = ++ (void (*)(void*)) ++ SDL_LoadFunction(mikmod.handle, "MikMod_free"); ++ if ( mikmod.MikMod_free == NULL ) { ++ SDL_UnloadObject(mikmod.handle); ++ return -1; ++ } + mikmod.Player_Active = + (BOOL (*)(void)) + SDL_LoadFunction(mikmod.handle, "Player_Active"); +diff -r c92001a2c18f -r 56cad6484b04 dynamic_mod.h +--- a/dynamic_mod.h Sun Mar 04 21:32:47 2012 +0000 ++++ b/dynamic_mod.h Sun Jul 22 16:13:27 2012 -0700 +@@ -35,6 +35,7 @@ + void (*MikMod_RegisterDriver)(struct MDRIVER*); + int* MikMod_errno; + char* (*MikMod_strerror)(int); ++ void (*MikMod_free)(void*); + BOOL (*Player_Active)(void); + void (*Player_Free)(MODULE*); + MODULE* (*Player_LoadGeneric)(MREADER*,int,BOOL); +diff -r c92001a2c18f -r 56cad6484b04 music_mod.c +--- a/music_mod.c Sun Mar 04 21:32:47 2012 +0000 ++++ b/music_mod.c Sun Jul 22 16:13:27 2012 -0700 +@@ -109,13 +109,13 @@ + + list = mikmod.MikMod_InfoDriver(); + if ( list ) +- free(list); ++ mikmod.MikMod_free(list); + else + mikmod.MikMod_RegisterDriver(mikmod.drv_nos); + + list = mikmod.MikMod_InfoLoader(); + if ( list ) +- free(list); ++ mikmod.MikMod_free(list); + else + mikmod.MikMod_RegisterAllLoaders(); + + diff --git a/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-mikmod-r588.patch b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-mikmod-r588.patch new file mode 100644 index 000000000000..a4469c056dd9 --- /dev/null +++ b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-mikmod-r588.patch @@ -0,0 +1,37 @@ +http://hg.libsdl.org/SDL_mixer/rev/2ebb0d016f27 +https://bugs.gentoo.org/445980 + +# HG changeset patch +# User Sam Lantinga <slouken@libsdl.org> +# Date 1343000017 25200 +# Node ID 2ebb0d016f277f7f643d8a66ed0e1099e10d1fba +# Parent 56cad6484b04f83c8d42428c755a046678506436 +Fixed normal linking with libmikmod and linking with earlier versions of libmikmod. + +diff -r 56cad6484b04 -r 2ebb0d016f27 dynamic_mod.c +--- a/dynamic_mod.c Sun Jul 22 16:13:27 2012 -0700 ++++ b/dynamic_mod.c Sun Jul 22 16:33:37 2012 -0700 +@@ -97,8 +97,8 @@ + (void (*)(void*)) + SDL_LoadFunction(mikmod.handle, "MikMod_free"); + if ( mikmod.MikMod_free == NULL ) { +- SDL_UnloadObject(mikmod.handle); +- return -1; ++ /* libmikmod 3.1 and earlier doesn't have it */ ++ mikmod.MikMod_free = free; + } + mikmod.Player_Active = + (BOOL (*)(void)) +@@ -246,6 +246,11 @@ + mikmod.MikMod_RegisterDriver = MikMod_RegisterDriver; + mikmod.MikMod_errno = &MikMod_errno; + mikmod.MikMod_strerror = MikMod_strerror; ++#if LIBMIKMOD_VERSION < ((3<<16)|(2<<8)) ++ mikmod.MikMod_free = free; ++#else ++ mikmod.MikMod_free = MikMod_free; ++#endif + mikmod.Player_Active = Player_Active; + mikmod.Player_Free = Player_Free; + mikmod.Player_LoadGeneric = Player_LoadGeneric; + diff --git a/media-libs/sdl-mixer/sdl-mixer-1.2.12-r2.ebuild b/media-libs/sdl-mixer/sdl-mixer-1.2.12-r2.ebuild new file mode 100644 index 000000000000..dc9e57826160 --- /dev/null +++ b/media-libs/sdl-mixer/sdl-mixer-1.2.12-r2.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/sdl-mixer/sdl-mixer-1.2.12-r2.ebuild,v 1.1 2012/12/17 01:35:51 vapier Exp $ + +EAPI=4 +inherit eutils + +MY_P=${P/sdl-/SDL_} +DESCRIPTION="Simple Direct Media Layer Mixer Library" +HOMEPAGE="http://www.libsdl.org/projects/SDL_mixer/" +SRC_URI="http://www.libsdl.org/projects/SDL_mixer/release/${MY_P}.tar.gz" + +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris" +IUSE="flac fluidsynth mad midi mikmod mod modplug mp3 playtools smpeg static-libs timidity vorbis +wav" +REQUIRED_USE=" + midi? ( || ( timidity fluidsynth ) ) + timidity? ( midi ) + fluidsynth? ( midi ) + mp3? ( || ( smpeg mad ) ) + smpeg? ( mp3 ) + mad? ( mp3 ) + mod? ( || ( mikmod modplug ) ) + mikmod? ( mod ) + modplug? ( mod ) + " + +DEPEND=">=media-libs/libsdl-1.2.10 + flac? ( media-libs/flac ) + midi? ( + fluidsynth? ( media-sound/fluidsynth ) + timidity? ( media-sound/timidity++ ) + ) + mp3? ( + mad? ( media-libs/libmad ) + smpeg? ( >=media-libs/smpeg-0.4.4-r1 ) + ) + mod? ( + modplug? ( media-libs/libmodplug ) + mikmod? ( >=media-libs/libmikmod-3.1.10 ) + ) + vorbis? ( >=media-libs/libvorbis-1.0_beta4 media-libs/libogg )" +RDEPEND=${DEPEND} + +S=${WORKDIR}/${MY_P} + +src_prepare() { + epatch "${FILESDIR}"/${P}-wav.patch + epatch "${FILESDIR}"/${P}-mikmod-r58{7,8}.patch #445980 + sed -i \ + -e '/link.*play/s/-o/$(LDFLAGS) -o/' \ + Makefile.in || die +} + +src_configure() { + econf \ + --disable-dependency-tracking \ + --disable-music-flac-shared \ + --disable-music-fluidsynth-shared \ + --disable-music-mod-shared \ + --disable-music-mp3-shared \ + --disable-music-ogg-shared \ + $(use_enable wav music-wave) \ + $(use_enable vorbis music-ogg) \ + $(use_enable mikmod music-mod) \ + $(use_enable modplug music-mod-modplug) \ + $(use_enable flac music-flac) \ + $(use_enable static-libs static) \ + $(use_enable smpeg music-mp3) \ + $(use_enable mad music-mp3-mad-gpl) \ + $(use_enable timidity music-timidity-midi) \ + $(use_enable fluidsynth music-fluidsynth-midi) +} + +src_install() { + emake DESTDIR="${D}" install + if use playtools; then + emake DESTDIR="${D}" install-bin + fi + dodoc CHANGES README + if ! use static-libs ; then + find "${D}" -type f -name '*.la' -exec rm {} + || die + fi +} + +pkg_postinst() { + # bug 412035 + # https://bugs.gentoo.org/show_bug.cgi?id=412035 + if use midi ; then + if use fluidsynth; then + ewarn "FluidSynth support requires you to set the SDL_SOUNDFONTS" + ewarn "environment variable to the location of a SoundFont file" + ewarn "unless the game or application happens to do this for you." + + if use timidity; then + ewarn "Failing to do so will result in Timidity being used instead." + else + ewarn "Failing to do so will result in silence." + fi + fi + fi +} |