media-libs/libsdl2: add 2.32.4

Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sam James 2025-04-23 11:51:39 +01:00
parent b7f923640b
commit f6b2ba5a34
No known key found for this signature in database
GPG Key ID: 738409F520DF9190
2 changed files with 215 additions and 0 deletions

View File

@ -2,4 +2,5 @@ DIST SDL2-2.30.11.tar.gz 7585207 BLAKE2B e6038cbf79bec299fae9cfdc4b84ff3e28343ab
DIST SDL2-2.30.7.tar.gz 7525092 BLAKE2B a494ca856f43009957f62ef4e5d401777c2d1f8518e4cc1a1b9fc9a2efedc5031b9cb5e2965aeb7347821310153cf3abc4c898dd493962fb268c5c55081ed7c3 SHA512 1a16c10f500dea97bd4e4ca5f560fe4ab8e746c975d30751b7cf567868743d105ce84055d480e4c18b290adac485e67d1bb14ae1719644d6e42223d96f299a16
DIST SDL2-2.32.0.tar.gz 7625288 BLAKE2B 491796e2b222a49eaead76e60bb6e58bed881667cc61d0ba81ed0e083134b6b13089ca2c4658f6576b2924ddeaffcc9ff5c7532841e7b0797c6bd1769ad74a53 SHA512 a91b8105125f06118e8bfce2a5553fe053f7158dd02f06a36cfc535f09c401eb7da11072e576c6bf6e41fa2e02b08483b9cc4e11c658578b762e1b6c326a45bb
DIST SDL2-2.32.2.tar.gz 7627192 BLAKE2B 5ea13fe60f2388e2ff61f60413ec71be84a429b6b2dbcb98bee8bf59e931396e164347288c68453e2932d9201fc8e53907cfe2fa0e456ae0383edaefa901df9b SHA512 9a608974a69b97fd5589bf8feed4742498f8f07731bcd5b99dd518089acda8b9b4216197b6adf7ca79ef1a9fe47c542033eefe94763e66229b1d9ba5207da5c5
DIST SDL2-2.32.4.tar.gz 7627336 BLAKE2B 55a24c75c90d77358b647d44c05525ee00bc69f6ed662894bfc32a26dee816254e5ce4a6ab0fdd20e6854b46ff222a13ed83a08d94595e2c26b8bf65e8e012fb SHA512 36e2f9cc743703f03a4fa161b5a8134ded58be8952cd4a1e019ea013c744ece2ef83eac7a79257ee4ce9190dc79d33108cb6f2613d7f935aebe50af8be100a7b
DIST sdl2-compat-2.32.54.tar.gz 2816984 BLAKE2B 71b28567f0039c1833f3b80f0bc9d025d08d3dc0bc9fe688e18e38064c2ee84149f6e7b66c04004c1d63fd18d141ca2d0a20280a72b12d48fa0f5976a9100cd5 SHA512 857aee92ab78692b9d9fb1734ee8d0bd59cff6d427a4aef8406e98858182299420d1f129676ad9a939e2b263fe7c78991a0a9ff955bae920f5530919a1f9a0ea

View File

@ -0,0 +1,214 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake-multilib flag-o-matic
MY_P="SDL2-${PV}"
DESCRIPTION="Simple Direct Media Layer"
HOMEPAGE="https://www.libsdl.org/"
SRC_URI="https://www.libsdl.org/release/${MY_P}.tar.gz"
S="${WORKDIR}/${MY_P}"
LICENSE="ZLIB"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="alsa aqua cpu_flags_ppc_altivec cpu_flags_x86_3dnow cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 custom-cflags dbus doc fcitx gles1 gles2 +haptic ibus jack +joystick kms libsamplerate nas opengl oss pipewire pulseaudio sndio +sound static-libs test udev +video vulkan wayland X xscreensaver"
RESTRICT="!test? ( test )"
REQUIRED_USE="
alsa? ( sound )
fcitx? ( dbus )
gles1? ( video )
gles2? ( video )
haptic? ( joystick )
ibus? ( dbus )
jack? ( sound )
kms? ( || ( gles1 gles2 opengl ) )
nas? ( sound )
opengl? ( video )
pulseaudio? ( sound )
sndio? ( sound )
test? ( static-libs )
vulkan? ( video )
wayland? ( gles2 )
xscreensaver? ( X )
"
COMMON_DEPEND="
virtual/libiconv[${MULTILIB_USEDEP}]
alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
ibus? ( app-i18n/ibus )
jack? ( virtual/jack[${MULTILIB_USEDEP}] )
kms? (
>=x11-libs/libdrm-2.4.82[${MULTILIB_USEDEP}]
>=media-libs/mesa-9.0.0[${MULTILIB_USEDEP},gbm(+)]
)
libsamplerate? ( media-libs/libsamplerate[${MULTILIB_USEDEP}] )
nas? (
>=media-libs/nas-1.9.4[${MULTILIB_USEDEP}]
>=x11-libs/libXt-1.1.4[${MULTILIB_USEDEP}]
)
opengl? (
>=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}]
>=virtual/glu-9.0-r1[${MULTILIB_USEDEP}]
)
pipewire? ( media-video/pipewire:=[${MULTILIB_USEDEP}] )
pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
sndio? ( media-sound/sndio:=[${MULTILIB_USEDEP}] )
udev? ( >=virtual/libudev-208:=[${MULTILIB_USEDEP}] )
wayland? (
>=dev-libs/wayland-1.20[${MULTILIB_USEDEP}]
gui-libs/libdecor[${MULTILIB_USEDEP}]
>=media-libs/mesa-9.1.6[${MULTILIB_USEDEP},egl(+),gles2(+),wayland]
>=x11-libs/libxkbcommon-0.2.0[${MULTILIB_USEDEP}]
)
X? (
>=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
>=x11-libs/libXcursor-1.1.14[${MULTILIB_USEDEP}]
>=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
>=x11-libs/libXfixes-6.0.0[${MULTILIB_USEDEP}]
>=x11-libs/libXi-1.7.2[${MULTILIB_USEDEP}]
>=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}]
xscreensaver? ( >=x11-libs/libXScrnSaver-1.2.2-r1[${MULTILIB_USEDEP}] )
)
"
RDEPEND="
${COMMON_DEPEND}
fcitx? ( app-i18n/fcitx:* )
gles1? ( media-libs/mesa[${MULTILIB_USEDEP},gles1(+)] )
gles2? ( media-libs/mesa[${MULTILIB_USEDEP},gles2(+)] )
vulkan? ( media-libs/vulkan-loader )
"
DEPEND="
${COMMON_DEPEND}
gles1? ( media-libs/libglvnd )
gles2? ( media-libs/libglvnd )
ibus? ( dev-libs/glib:2[${MULTILIB_USEDEP}] )
test? ( x11-libs/libX11[${MULTILIB_USEDEP}] )
vulkan? ( dev-util/vulkan-headers )
X? ( x11-base/xorg-proto )
"
BDEPEND="
virtual/pkgconfig
doc? (
app-text/doxygen
media-gfx/graphviz
)
wayland? ( >=dev-util/wayland-scanner-1.20 )
"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/SDL2/SDL_config.h
/usr/include/SDL2/SDL_platform.h
/usr/include/SDL2/begin_code.h
/usr/include/SDL2/close_code.h
)
PATCHES=(
"${FILESDIR}"/libsdl2-2.32.0-fix-tests-for-disabled-vulkan-and-gles.patch
)
src_prepare() {
cmake_src_prepare
# Unbundle some headers.
rm -r src/video/khronos || die
ln -s "${ESYSROOT}/usr/include" src/video/khronos || die
}
src_configure() {
use custom-cflags || strip-flags
local mycmakeargs=(
-DSDL_STATIC=$(usex static-libs)
-DSDL_SYSTEM_ICONV=ON
-DSDL_GCC_ATOMICS=ON
-DSDL_AUDIO=$(usex sound)
-DSDL_VIDEO=$(usex video)
-DSDL_JOYSTICK=$(usex joystick)
-DSDL_HAPTIC=$(usex haptic)
-DSDL_POWER=ON
-DSDL_FILESYSTEM=ON
-DSDL_TIMERS=ON
-DSDL_FILE=ON
-DSDL_LOADSO=ON
-DSDL_ASSEMBLY=ON
-DSDL_ALTIVEC=$(usex cpu_flags_ppc_altivec)
-DSDL_SSEMATH=$(usex cpu_flags_x86_sse)
-DSDL_MMX=$(usex cpu_flags_x86_mmx)
-DSDL_3DNOW=$(usex cpu_flags_x86_3dnow)
-DSDL_SSE=$(usex cpu_flags_x86_sse)
-DSDL_SSE2=$(usex cpu_flags_x86_sse2)
-DSDL_SSE3=$(usex cpu_flags_x86_sse3)
-DSDL_OSS=$(usex oss)
-DSDL_ALSA=$(usex alsa)
-DSDL_ALSA_SHARED=OFF
-DSDL_JACK=$(usex jack)
-DSDL_JACK_SHARED=OFF
-DSDL_ESD=OFF
-DSDL_PIPEWIRE=$(usex pipewire)
-DSDL_PIPEWIRE_SHARED=OFF
-DSDL_PULSEAUDIO=$(usex pulseaudio)
-DSDL_PULSEAUDIO_SHARED=OFF
-DSDL_ARTS=OFF
-DSDL_LIBSAMPLERATE=$(usex libsamplerate)
-DSDL_LIBSAMPLERATE_SHARED=OFF
-DSDL_WERROR=OFF
-DSDL_NAS=$(usex nas)
-DSDL_NAS_SHARED=OFF
-DSDL_SNDIO=$(usex sndio)
-DSDL_SNDIO_SHARED=OFF
-DSDL_DISKAUDIO=$(usex sound)
-DSDL_DUMMYAUDIO=$(usex sound)
-DSDL_WAYLAND=$(usex wayland)
-DSDL_WAYLAND_SHARED=OFF
-DSDL_WAYLAND_LIBDECOR=$(usex wayland)
-DSDL_WAYLAND_LIBDECOR_SHARED=OFF
-DSDL_RPI=OFF
-DSDL_X11=$(usex X)
-DSDL_X11_SHARED=OFF
-DSDL_X11_XSCRNSAVER=$(usex xscreensaver)
-DSDL_COCOA=$(usex aqua)
-DSDL_DIRECTFB=OFF
-DSDL_FUSIONSOUND=OFF
-DSDL_KMSDRM=$(usex kms)
-DSDL_KMSDRM_SHARED=OFF
-DSDL_DUMMYVIDEO=$(usex video)
-DSDL_OPENGL=$(usex opengl)
-DSDL_OPENGLES=$(use gles1 || use gles2 && echo ON || echo OFF)
-DSDL_VULKAN=$(usex vulkan)
-DSDL_LIBUDEV=$(usex udev)
-DSDL_DBUS=$(usex dbus)
-DSDL_IBUS=$(usex ibus)
-DSDL_CCACHE=OFF
-DSDL_DIRECTX=OFF
-DSDL_RPATH=OFF
-DSDL_VIDEO_RENDER_D3D=OFF
-DSDL_TESTS=$(usex test)
)
cmake-multilib_src_configure
}
src_compile() {
multilib-minimal_src_compile
if use doc; then
cd docs || die
doxygen || die
fi
}
src_test() {
# Unset all SDL_* variables as they cause issues for tests.
unset "${!SDL_@}"
cmake-multilib_src_test
}
multilib_src_install_all() {
rm -r "${ED}"/usr/share/licenses/ || die
dodoc {BUGS,CREDITS,README-SDL,TODO,WhatsNew}.txt README.md docs/README*.md
use doc && dodoc -r docs/output/html/
}