Install this version:
emerge -a =media-libs/sdl3-mixer-3.2.4
If this version is masked, you can unmask it using the autounmask tool or standard emerge options:
autounmask =media-libs/sdl3-mixer-3.2.4
Or alternatively:
emerge --autounmask-write -a =media-libs/sdl3-mixer-3.2.4
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake-multilib
DESCRIPTION="Simple Direct Media Layer Mixer Library"
HOMEPAGE="https://github.com/libsdl-org/SDL_mixer"
# Upstream use release- and prerelease- prefixed tags.
GIT_TAG=release-${PV}
if [[ ${PV} == *_rc* ]]; then
GIT_TAG=prerelease-${PV%%_rc*}
fi
SRC_URI="https://github.com/libsdl-org/SDL_mixer/archive/refs/tags/${GIT_TAG}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/SDL_mixer-${GIT_TAG}"
LICENSE="ZLIB"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="drlibs flac +fluidsynth gme +midi mod modplug mp3 opus playtools"
IUSE+=" +libvorbis timidity tremor +vorbis +wav wavpack xmp"
REQUIRED_USE="
drlibs? ( || ( flac mp3 ) )
midi? ( || ( fluidsynth timidity ) )
fluidsynth? ( midi )
timidity? ( midi )
vorbis? ( ^^ ( libvorbis tremor ) )
libvorbis? ( 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}] )
playtools? (
!media-libs/sdl-mixer[playtools]
!media-libs/sdl2-mixer[playtools]
)
libvorbis? ( media-libs/libvorbis[${MULTILIB_USEDEP}] )
tremor? ( media-libs/tremor[${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_STRICT=yes # Fail when a dependency could not be found
-DSDLMIXER_VENDORED=no # Use vendored third-party libraries
-DSDLMIXER_VORBIS_STB=no # Only available vendored, as per SDL_mixer#434 distros should prefer an external lib
-DSDLMIXER_VORBIS_VORBISFILE=$(usex vorbis $(usex libvorbis) no)
-DSDLMIXER_VORBIS_TREMOR=$(usex vorbis $(usex tremor) 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() {
rm -r "${ED}"/usr/share/licenses || die
}
# There are no automated tests included with SDL_mixer.
# Theoretically we could use `-DSLDMIXER_TESTS{,_INSTALL}=yes` to build and install test binaries
# However they're not particularly useful standalone - runtime testing will have to do.
src_test() {
:
}
Manage flags for this package:
euse -i <flag> -p media-libs/sdl3-mixer |
euse -E <flag> -p media-libs/sdl3-mixer |
euse -D <flag> -p media-libs/sdl3-mixer
media-libs/libsdl3[] !drlibs? ( flac? ( media-libs/flac:=[] ) mp3? ( media-sound/mpg123-base[] ) ) gme? ( media-libs/game-music-emu[] ) midi? ( fluidsynth? ( media-sound/fluidsynth:=[] ) timidity? ( media-sound/timidity++ ) ) mod? ( media-libs/libxmp[] ) opus? ( media-libs/opusfile[] ) playtools? ( !media-libs/sdl-mixer[playtools] !media-libs/sdl2-mixer[playtools] ) libvorbis? ( media-libs/libvorbis[] ) tremor? ( media-libs/tremor[] ) gme? ( media-libs/game-music-emu[] ) wavpack? ( media-sound/wavpack[] )
media-libs/libsdl3[] !drlibs? ( flac? ( media-libs/flac:=[] ) mp3? ( media-sound/mpg123-base[] ) ) gme? ( media-libs/game-music-emu[] ) midi? ( fluidsynth? ( media-sound/fluidsynth:=[] ) timidity? ( media-sound/timidity++ ) ) mod? ( media-libs/libxmp[] ) opus? ( media-libs/opusfile[] ) playtools? ( !media-libs/sdl-mixer[playtools] !media-libs/sdl2-mixer[playtools] ) libvorbis? ( media-libs/libvorbis[] ) tremor? ( media-libs/tremor[] ) gme? ( media-libs/game-music-emu[] ) wavpack? ( media-sound/wavpack[] )
| Type | File | Size | Source URLs |
|---|---|---|---|
| DIST | sdl3-mixer-3.2.4.tar.gz | 5200314 bytes | https://github.com/libsdl-org/SDL_mixer/archive/refs/tags/prerelease-3.2.4.tar.gz |