summaryrefslogtreecommitdiff
path: root/media-libs/sdl3-mixer/sdl3-mixer-3.0.0_pre20250404.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/sdl3-mixer/sdl3-mixer-3.0.0_pre20250404.ebuild')
-rw-r--r--media-libs/sdl3-mixer/sdl3-mixer-3.0.0_pre20250404.ebuild108
1 files changed, 108 insertions, 0 deletions
diff --git a/media-libs/sdl3-mixer/sdl3-mixer-3.0.0_pre20250404.ebuild b/media-libs/sdl3-mixer/sdl3-mixer-3.0.0_pre20250404.ebuild
new file mode 100644
index 000000000000..caf79673dd40
--- /dev/null
+++ b/media-libs/sdl3-mixer/sdl3-mixer-3.0.0_pre20250404.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_COMMIT=68764f35899e133b402336843c046d75136eaf08
+inherit cmake-multilib
+
+DESCRIPTION="Simple Direct Media Layer Mixer Library"
+HOMEPAGE="https://github.com/libsdl-org/SDL_mixer"
+SRC_URI="https://codeload.github.com/libsdl-org/SDL_mixer/tar.gz/${MY_COMMIT} -> ${P}.tar.gz"
+
+S="${WORKDIR}/SDL_mixer-${MY_COMMIT}"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="drlibs flac fluidsynth gme midi mod modplug mp3 opus playtools"
+IUSE+=" sndfile stb timidity tremor vorbis +wav wavpack xmp"
+REQUIRED_USE="
+ drlibs? ( || ( flac mp3 ) )
+ midi? ( || ( timidity fluidsynth ) )
+ timidity? ( midi )
+ fluidsynth? ( midi )
+
+ vorbis? ( ?? ( stb tremor ) )
+ stb? ( vorbis )
+ tremor? ( vorbis )
+"
+
+RDEPEND="
+ media-libs/libsdl3[${MULTILIB_USEDEP}]
+ !drlibs? (
+ flac? ( media-libs/flac:=[${MULTILIB_USEDEP}] )
+ mp3? ( media-sound/mpg123-base[${MULTILIB_USEDEP}] )
+ )
+ gme? ( media-libs/game-music-emu[${MULTILIB_USEDEP}] )
+ midi? (
+ fluidsynth? ( media-sound/fluidsynth:=[${MULTILIB_USEDEP}] )
+ timidity? ( media-sound/timidity++ )
+ )
+ mod? ( media-libs/libxmp[${MULTILIB_USEDEP}] )
+
+ opus? ( media-libs/opusfile[${MULTILIB_USEDEP}] )
+ vorbis? (
+ 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=(
+ -DSDLMIXER_DEPS_SHARED=no # aka, no dlopen() (bug #950965)
+ -DSDLMIXER_FLAC=$(usex flac)
+ -DSDLMIXER_FLAC_LIBFLAC=$(usex flac $(usex drlibs no yes) no)
+ -DSDLMIXER_FLAC_DRFLAC=$(usex drlibs)
+ -DSDLMIXER_GME=$(usex gme)
+ -DSDLMIXER_GME_SHARED=no
+ -DSDLMIXER_INSTALL_MAN=yes
+ -DSDLMIXER_MIDI=$(usex midi)
+ -DSDLMIXER_MIDI_FLUIDSYNTH=$(usex fluidsynth)
+ -DSDLMIXER_MIDI_FLUIDSYNTH_SHARED=no
+ -DSDLMIXER_MIDI_TIMIDITY=$(usex timidity)
+ -DSDLMIXER_MOD=$(usex mod)
+ -DSDLMIXER_MOD_XMP=$(usex mod)
+ -DSDLMIXER_MOD_XMP_LITE=no
+ -DSDLMIXER_MOD_XMP_SHARED=no
+ -DSDLMIXER_MP3=$(usex mp3)
+ -DSDLMIXER_MP3_DRMP3=$(usex drlibs)
+ -DSDLMIXER_MP3_MPG123=$(usex mp3 $(usex drlibs no yes) no)
+ -DSDLMIXER_OPUS=$(usex opus)
+ -DSDLMIXER_OPUS_SHARED=no
+ -DSDLMIXER_SAMPLES=$(usex playtools)
+ -DSDLMIXER_SAMPLES_INSTALL=$(usex playtools)
+ -DSDLMIXER_SNDFILE=$(usex sndfile)
+ -DSDLMIXER_SNDFILE_SHARED=no
+ -DSDLMIXER_STRICT=yes # Fail when a dependency could not be found
+ -DSDLMIXER_VENDORED=no # Use vendored third-party libraries
+ -DSDLMIXER_VORBIS=$(usex vorbis $(usex stb STB $(usex tremor TREMOR VORBISFILE) ) no )
+ -DSDLMIXER_WAVE=$(usex wav)
+ -DSDLMIXER_WAVPACK=$(usex wavpack)
+ -DSDLMIXER_WAVPACK_DSD=$(usex wavpack) # seems to be default-enabled in wavpack
+ )
+
+ cmake_src_configure
+}
+
+multilib_src_install_all() {
+ dodoc {CHANGES,README}.txt
+ rm -r "${ED}"/usr/share/licenses || 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
+}