commit: 43d1cd2daa68a26fd73fe37c257f46c56bfe1e7e Author: Andrei Sabalenka <mechakotik <AT> gmail <DOT> com> AuthorDate: Fri Oct 11 20:06:27 2024 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Fri Dec 20 12:46:00 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43d1cd2d
media-libs/sdl2-mixer: add 2.8.0, co-maintain The new ebuild has following changes over 2.6.3-r1: - Using CMake instead of autoconf: CMake is the preferred way of building it, autoconf seems to be no longer supported since 3.0 - Added GME and WavPack support, introduced in 2.8.0 - Added OGG Vorbis support via dev-libs/stb - Added MOD support via media-libs/libxmp - Removed static-libs USE flag, seems to be pointless as some of the dependencies still don't have static version Closes: https://bugs.gentoo.org/927188 Closes: https://bugs.gentoo.org/945154 Signed-off-by: Andrei Sabalenka <mechakotik <AT> gmail.com> Closes: https://github.com/gentoo/gentoo/pull/38946 Signed-off-by: Sam James <sam <AT> gentoo.org> media-libs/sdl2-mixer/Manifest | 1 + media-libs/sdl2-mixer/metadata.xml | 27 +++++--- media-libs/sdl2-mixer/sdl2-mixer-2.8.0.ebuild | 96 +++++++++++++++++++++++++++ 3 files changed, 116 insertions(+), 8 deletions(-) diff --git a/media-libs/sdl2-mixer/Manifest b/media-libs/sdl2-mixer/Manifest index d1f5b72a1e64..cfd0e4a1d952 100644 --- a/media-libs/sdl2-mixer/Manifest +++ b/media-libs/sdl2-mixer/Manifest @@ -1,2 +1,3 @@ DIST SDL2_mixer-2.6.2.tar.gz 9934376 BLAKE2B 9cf378d03046389b3625b90ca7a4c34d9b80e0908bccef454adedc21f16f24d99acc0fc3522ba981be89d8c58c7a6e877e7d98c798b157529e2cb26141faec8c SHA512 16baa9d8b345bf0224538cbfb2ae9fc5d3deea2b454f41a98006c938fe7a65d5a8c84e28a76f98a4dd971c4fe5cf0219d8bf73331cf11f2702e01600eb197658 DIST SDL2_mixer-2.6.3.tar.gz 9935069 BLAKE2B 9908bdc549300af05b4fbcbb6c0533913ae62bfa2f761118983e0da58a4bcd68c2d008fa5bbcd94b0141241e54f1cd507e275e2d4b637214b803dabdbc5b0250 SHA512 2e9da045d2fdab97236c3901b3d441834a67a47c8851ddfb817c9db6f23ed9fb355a5ef8d2158d0c9959a83934e8cd1b95db8a69eaddf8f7fcca115f01818740 +DIST SDL2_mixer-2.8.0.tar.gz 10874471 BLAKE2B 701ed21416e7a3ceda313f3e9ad47f98687f357712fb90f6c3c2ac065c96a4ded04a907c563f3b9b7bf42f192b6c442d025abb0a5cfbb745bd8719c49e29ff61 SHA512 5ddbc4b0b5fad2e0844a503daa79564b912654192599ef8fa7698531f08323ce01801f6bb17b2b3905020a3df362a967b7566ae725eb085da991578cc0807aad diff --git a/media-libs/sdl2-mixer/metadata.xml b/media-libs/sdl2-mixer/metadata.xml index c3925886628a..955d39ff6de7 100644 --- a/media-libs/sdl2-mixer/metadata.xml +++ b/media-libs/sdl2-mixer/metadata.xml @@ -5,15 +5,26 @@ <email>[email protected]</email> <name>Gentoo Games Project</name> </maintainer> + <maintainer type="person" proxied="yes"> + <email>[email protected]</email> + <name>Andrei Sabalenka</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>[email protected]</email> + <name>Proxy Maintainers</name> + </maintainer> <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="tremor">enable OGG Vorbis music via libtremor</flag> - <flag name="wav">support WAVE files</flag> + <flag name="fluidsynth">Use <pkg>media-sound/fluidsynth</pkg> for MIDI support</flag> + <flag name="gme">Support additional music formats with <pkg>media-libs/game-music-emu</pkg></flag> + <flag name="midi">Basic support for MIDI files</flag> + <flag name="mod">Basic support for MOD files</flag> + <flag name="modplug">Support MOD via <pkg>media-libs/libmodplug</pkg></flag> + <flag name="playtools">Install playwave and playmus tools (useful for testing)</flag> + <flag name="stb">Use <pkg>dev-libs/stb</pkg> instead of <pkg>media-libs/libvorbis</pkg> for OGG Vorbis support</flag> + <flag name="tremor">Use <pkg>media-libs/tremor</pkg> instead of <pkg>media-libs/libvorbis</pkg> for OGG Vorbis support</flag> + <flag name="wav">Support WAVE files</flag> + <flag name="wavpack">Support WavPack files</flag> + <flag name="xmp">Support MOD via <pkg>media-libs/libxmp</pkg></flag> </use> <upstream> <remote-id type="github">libsdl-org/SDL_mixer</remote-id> diff --git a/media-libs/sdl2-mixer/sdl2-mixer-2.8.0.ebuild b/media-libs/sdl2-mixer/sdl2-mixer-2.8.0.ebuild new file mode 100644 index 000000000000..56704efb999a --- /dev/null +++ b/media-libs/sdl2-mixer/sdl2-mixer-2.8.0.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_P="SDL2_mixer-${PV}" +inherit cmake-multilib + +DESCRIPTION="Simple Direct Media Layer Mixer Library" +HOMEPAGE="https://github.com/libsdl-org/SDL_mixer" +SRC_URI="https://www.libsdl.org/projects/SDL_mixer/release/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="~amd64" +IUSE="flac fluidsynth gme midi mod modplug mp3 opus playtools stb timidity tremor vorbis +wav wavpack xmp" +REQUIRED_USE=" + midi? ( || ( timidity fluidsynth ) ) + timidity? ( midi ) + fluidsynth? ( midi ) + + vorbis? ( ?? ( stb tremor ) ) + stb? ( vorbis ) + tremor? ( vorbis ) + + mod? ( || ( modplug xmp ) ) + modplug? ( mod ) + xmp? ( mod ) +" + +RDEPEND=" + media-libs/libsdl2[${MULTILIB_USEDEP}] + flac? ( media-libs/flac:=[${MULTILIB_USEDEP}] ) + midi? ( + fluidsynth? ( media-sound/fluidsynth:=[${MULTILIB_USEDEP}] ) + timidity? ( media-sound/timidity++ ) + ) + mod? ( + modplug? ( media-libs/libmodplug[${MULTILIB_USEDEP}] ) + xmp? ( media-libs/libxmp ) + ) + mp3? ( media-sound/mpg123[${MULTILIB_USEDEP}] ) + opus? ( media-libs/opusfile ) + vorbis? ( + stb? ( dev-libs/stb ) + tremor? ( media-libs/tremor[${MULTILIB_USEDEP}] ) + !stb? ( !tremor? ( media-libs/libvorbis[${MULTILIB_USEDEP}] ) ) + ) + gme? ( media-libs/game-music-emu[${MULTILIB_USEDEP}] ) + wavpack? ( media-sound/wavpack[${MULTILIB_USEDEP}] ) +" +DEPEND="${RDEPEND}" + +multilib_src_configure() { + local mycmakeargs=( + -DSDL2MIXER_CMD=yes + -DSDL2MIXER_WAVE=$(usex wav) + -DSDL2MIXER_MOD=$(usex mod) + -DSDL2MIXER_MOD_MODPLUG=$(usex modplug) + -DSDL2MIXER_MOD_XMP=$(usex xmp) + -DSDL2MIXER_MIDI=$(usex midi) + -DSDL2MIXER_MIDI_TIMIDITY=$(usex timidity) + -DSDL2MIXER_MIDI_FLUIDSYNTH=$(usex fluidsynth) + -DSDL2MIXER_VORBIS=$(usex vorbis $(usex stb STB $(usex tremor TREMOR VORBISFILE) ) no ) + -DSDL2MIXER_FLAC=$(usex flac) + -DSDL2MIXER_FLAC_LIBFLAC=$(usex flac) + -DSDL2MIXER_MP3=$(usex mp3) + -DSDL2MIXER_MP3_MPG123=$(usex mp3) + -DSDL2MIXER_OPUS=$(usex opus) + -DSDL2MIXER_GME=$(usex gme) + -DSDL2MIXER_WAVPACK=$(usex wavpack) + -DSDL2MIXER_SAMPLES=$(usex playtools) + -DSDL2MIXER_SAMPLES_INSTALL=$(usex playtools) + ) + cmake_src_configure +} + +multilib_src_install_all() { + dodoc {CHANGES,README}.txt + find "${D}" -name '*.la' -delete || die +} + +pkg_postinst() { + # bug #412035 + if use midi && 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 +}
