diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /media-libs/sdl-mixer | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'media-libs/sdl-mixer')
9 files changed, 397 insertions, 0 deletions
diff --git a/media-libs/sdl-mixer/Manifest b/media-libs/sdl-mixer/Manifest new file mode 100644 index 000000000000..af4393c0507b --- /dev/null +++ b/media-libs/sdl-mixer/Manifest @@ -0,0 +1 @@ +DIST SDL_mixer-1.2.12.tar.gz 3707781 SHA256 1644308279a975799049e4826af2cfc787cad2abb11aa14562e402521f86992a SHA512 230f6c5a73f4bea364f8aa3d75f76694305571dea45f357def742b2b50849b2d896af71e08689981207edc99a9836088bee2d0bd98d92c7f4ca52b12b3d8cf96 WHIRLPOOL 046b7a160cfe214cdac8c1a5ea424024a8850d3737908e5630b504f1f12817bfd2f391909f37be3d6994cab7f71ab24ecab92e99f5429dd8405f0e4046bc00a7 diff --git a/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-Fix-compiling-against-libmodplug-0.8.8.5.patch b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-Fix-compiling-against-libmodplug-0.8.8.5.patch new file mode 100644 index 000000000000..369fe49558f0 --- /dev/null +++ b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-Fix-compiling-against-libmodplug-0.8.8.5.patch @@ -0,0 +1,24 @@ +From: hasufell <hasufell@gentoo.org> +Date: Fri, 8 Aug 2014 13:49:49 +0200 +Subject: [PATCH] Fix compiling against libmodplug-0.8.8.5 + +pkg-config --cflags libmodplug no longer +reports a subdir and thus we need to use +#include "libmodplug/modplug.h" syntax. +--- + music_modplug.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/music_modplug.h ++++ b/music_modplug.h +@@ -1,6 +1,6 @@ + #ifdef MODPLUG_MUSIC + +-#include "modplug.h" ++#include "libmodplug/modplug.h" + #include "SDL_rwops.h" + #include "SDL_audio.h" + #include "SDL_mixer.h" +-- +2.0.4 + diff --git a/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-clang.patch b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-clang.patch new file mode 100644 index 000000000000..3c462bd97088 --- /dev/null +++ b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-clang.patch @@ -0,0 +1,11 @@ +--- SDL_mixer-1.2.12.orig/music_mad.c ++++ SDL_mixer-1.2.12/music_mad.c +@@ -224,7 +224,7 @@ + if ((mp3_mad->status & MS_playing) == 0) { + /* We're not supposed to be playing, so send silence instead. */ + memset(stream, 0, len); +- return; ++ return 0; + } + + out = stream; 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..d99609f8ab25 --- /dev/null +++ b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-mikmod-r587.patch @@ -0,0 +1,55 @@ +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 + +--- a/dynamic_mod.c ++++ b/dynamic_mod.c +@@ -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"); +--- a/dynamic_mod.h ++++ b/dynamic_mod.h +@@ -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); +--- a/music_mod.c ++++ b/music_mod.c +@@ -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..d47a8d4534c8 --- /dev/null +++ b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-mikmod-r588.patch @@ -0,0 +1,36 @@ +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. + +--- a/dynamic_mod.c ++++ b/dynamic_mod.c +@@ -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/files/sdl-mixer-1.2.12-wav.patch b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-wav.patch new file mode 100644 index 000000000000..38914fd77f15 --- /dev/null +++ b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-wav.patch @@ -0,0 +1,35 @@ +https://bugs.gentoo.org/show_bug.cgi?id=406739 +Nikos Chantziaras 2012-03-03 03:13:39 EST + +There's a bug in the current version of SDL_mixer where failing to load a WAV sample will result in freeing a resource twice, resulting in an application crash. There is an upstream fix for this: + +http://hg.libsdl.org/SDL_mixer/rev/ea53a85853dd + +Upstream bug: http://bugzilla.libsdl.org/show_bug.cgi?id=1418 + +--- a/mixer.c ++++ b/mixer.c +@@ -610,13 +610,15 @@ + break; + default: + SDL_SetError("Unrecognized sound file type"); +- return(0); ++ if ( freesrc ) { ++ SDL_RWclose(src); ++ } ++ loaded = NULL; ++ break; + } + if ( !loaded ) { ++ /* The individual loaders have closed src if needed */ + SDL_free(chunk); +- if ( freesrc ) { +- SDL_RWclose(src); +- } + return(NULL); + } + + + + + diff --git a/media-libs/sdl-mixer/metadata.xml b/media-libs/sdl-mixer/metadata.xml new file mode 100644 index 000000000000..f6db1ba16a50 --- /dev/null +++ b/media-libs/sdl-mixer/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>games</herd> +<use> + <flag name='fluidsynth'>Use <pkg>media-sound/fluidsynth</pkg> for MIDI support</flag> + <flag name='midi'>basic support for MIDI files</flag> + <flag name='mod'>basic support for MOD files</flag> + <flag name='playtools'>Install playwave and playmus tools (useful for testing)</flag> + <flag name='smpeg'>Use <pkg>media-libs/smpeg</pkg> for MP3 support</flag> + <flag name='wav'>support WAVE files</flag> +</use> +</pkgmetadata> diff --git a/media-libs/sdl-mixer/sdl-mixer-1.2.12-r3.ebuild b/media-libs/sdl-mixer/sdl-mixer-1.2.12-r3.ebuild new file mode 100644 index 000000000000..85e86edc1ac8 --- /dev/null +++ b/media-libs/sdl-mixer/sdl-mixer-1.2.12-r3.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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} + playtools? ( !media-libs/sdl2-mixer[playtools] )" + +S=${WORKDIR}/${MY_P} + +src_prepare() { + epatch \ + "${FILESDIR}"/${P}-wav.patch \ + "${FILESDIR}"/${P}-clang.patch \ + "${FILESDIR}"/${P}-Fix-compiling-against-libmodplug-0.8.8.5.patch \ + "${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 +} diff --git a/media-libs/sdl-mixer/sdl-mixer-1.2.12-r4.ebuild b/media-libs/sdl-mixer/sdl-mixer-1.2.12-r4.ebuild new file mode 100644 index 000000000000..bd5266a5af8c --- /dev/null +++ b/media-libs/sdl-mixer/sdl-mixer-1.2.12-r4.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils multilib-minimal + +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 ~arm64 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 ) + " + +RDEPEND=">=media-libs/libsdl-1.2.15-r4[${MULTILIB_USEDEP}] + flac? ( >=media-libs/flac-1.2.1-r5[${MULTILIB_USEDEP}] ) + midi? ( + fluidsynth? ( >=media-sound/fluidsynth-1.1.6-r1[${MULTILIB_USEDEP}] ) + timidity? ( media-sound/timidity++ ) + ) + mp3? ( + mad? ( >=media-libs/libmad-0.15.1b-r8[${MULTILIB_USEDEP}] ) + smpeg? ( >=media-libs/smpeg-0.4.4-r10[${MULTILIB_USEDEP}] ) + ) + mod? ( + modplug? ( >=media-libs/libmodplug-0.8.8.4-r1[${MULTILIB_USEDEP}] ) + mikmod? ( >=media-libs/libmikmod-3.3.6-r1[${MULTILIB_USEDEP}] ) + ) + vorbis? ( + >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}] + >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] ) + abi_x86_32? ( + !<=app-emulation/emul-linux-x86-sdl-20140406-r1 + !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)] + )" +DEPEND=${RDEPEND} + +S=${WORKDIR}/${MY_P} + +src_prepare() { + epatch \ + "${FILESDIR}"/${P}-wav.patch \ + "${FILESDIR}"/${P}-clang.patch \ + "${FILESDIR}"/${P}-Fix-compiling-against-libmodplug-0.8.8.5.patch \ + "${FILESDIR}"/${P}-mikmod-r58{7,8}.patch #445980 + sed -i \ + -e '/link.*play/s/-o/$(LDFLAGS) -o/' \ + Makefile.in || die +} + +multilib_src_configure() { + ECONF_SOURCE=${S} \ + 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) \ + LIBMIKMOD_CONFIG=${EPREFIX}/usr/bin/${CHOST}-libmikmod-config +} + +multilib_src_install() { + emake DESTDIR="${D}" install + if multilib_is_native_abi && use playtools; then + emake DESTDIR="${D}" install-bin + fi +} + +multilib_src_install_all() { + dodoc CHANGES README + prune_libtool_files +} + +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 +} |