2025-01-25 16:32:42 +01:00
|
|
|
# Template file for 'SDL3'
|
|
|
|
pkgname=SDL3
|
2025-02-18 12:56:13 +01:00
|
|
|
version=3.2.4
|
2025-01-25 16:32:42 +01:00
|
|
|
revision=1
|
|
|
|
build_style=cmake
|
2025-02-04 15:56:29 +01:00
|
|
|
configure_args="-DSDL_ALSA=ON -DSDL_RPATH=OFF
|
2025-01-25 16:32:42 +01:00
|
|
|
-DSDL_CLOCK_GETTIME=ON -DSDL_PULSEAUDIO_SHARED=OFF
|
|
|
|
-DSDL_ALSA_SHARED=OFF -DSDL_DBUS=ON"
|
|
|
|
hostmakedepends="pkg-config nasm"
|
|
|
|
makedepends="alsa-lib-devel dbus-devel eudev-libudev-devel libusb-compat-devel
|
|
|
|
libsamplerate-devel"
|
|
|
|
short_desc="Simple DirectMedia Layer (version 3)"
|
|
|
|
maintainer="Piotr Danecki <i3riced@mailfence.com>"
|
|
|
|
license="Zlib"
|
|
|
|
homepage="https://www.libsdl.org/"
|
|
|
|
changelog="https://raw.githubusercontent.com/libsdl-org/SDL/refs/heads/main/WhatsNew.txt"
|
|
|
|
distfiles="https://www.libsdl.org/release/SDL3-${version}.tar.gz"
|
2025-02-18 12:56:13 +01:00
|
|
|
checksum=2938328317301dfbe30176d79c251733aa5e7ec5c436c800b99ed4da7adcb0f0
|
2025-01-25 16:32:42 +01:00
|
|
|
|
|
|
|
# Package build options
|
|
|
|
build_options="gles opengl pulseaudio pipewire sndio vulkan wayland x11"
|
|
|
|
build_options_default="gles opengl pulseaudio sndio vulkan wayland x11"
|
|
|
|
|
|
|
|
case "$XBPS_TARGET_MACHINE" in
|
|
|
|
ppcle*) ;;
|
|
|
|
*) build_options_default+=" pipewire";;
|
|
|
|
esac
|
|
|
|
|
|
|
|
case "$XBPS_TARGET_MACHINE" in
|
|
|
|
# SDL_cpuinfo includes altivec.h, which breaks C++ programs with vector keyword
|
|
|
|
ppc*) configure_args+=" -DSDL_ALTIVEC=OFF";;
|
|
|
|
# SDL detects SSE3 on i686, which is above our support target
|
|
|
|
i686*) configure_args+=" -DSDL_SSE3=OFF";;
|
|
|
|
*) ;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
unset depends
|
|
|
|
|
|
|
|
if [ "$build_option_gles" ]; then
|
|
|
|
configure_args+=" -DSDL_OPENGLES=ON"
|
|
|
|
# libGLESv2.so.2 is dynamically loaded with dlopen.
|
|
|
|
shlib_requires="libGLESv2.so.2"
|
|
|
|
depends+=" virtual?libGLES"
|
|
|
|
else
|
|
|
|
configure_args+=" -DSDL_OPENGLES=OFF"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$build_option_opengl" ]; then
|
|
|
|
# libGL.so.1 is dynamically loaded with dlopen.
|
|
|
|
shlib_requires+=" libGL.so.1"
|
|
|
|
depends+=" virtual?libGL"
|
|
|
|
configure_args+=" -DSDL_OPENGL=ON"
|
|
|
|
else
|
|
|
|
configure_args+=" -DSDL_OPENGL=OFF"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$build_option_opengl" -o "$build_option_gles" ]; then
|
|
|
|
makedepends+=" glu-devel"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$build_option_pulseaudio" ]; then
|
|
|
|
configure_args+=" -DSDL_PULSEAUDIO=ON"
|
|
|
|
makedepends+=" pulseaudio-devel"
|
|
|
|
else
|
|
|
|
configure_args+=" -DSDL_PULSEAUDIO=OFF"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$build_option_pipewire" ]; then
|
|
|
|
configure_args+=" -DSDL_PIPEWIRE=ON"
|
|
|
|
makedepends+=" pipewire-devel"
|
|
|
|
else
|
|
|
|
configure_args+=" -DSDL_PIPEWIRE=OFF"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$build_option_sndio" ]; then
|
|
|
|
configure_args+=" -DSDL_SNDIO=ON"
|
|
|
|
makedepends+=" sndio-devel"
|
|
|
|
else
|
|
|
|
configure_args+=" -DSDL_SNDIO=OFF"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$build_option_wayland" ]; then
|
|
|
|
if [ -z "$build_option_gles" ]; then
|
|
|
|
msg_error "$pkgname: wayland option requires gles.\n"
|
|
|
|
fi
|
|
|
|
configure_args+=" -DSDL_WAYLAND=ON -DSDL_WAYLAND_SHARED=OFF -DSDL_WAYLAND_LIBDECOR=ON"
|
|
|
|
makedepends+=" libxkbcommon-devel libdecor-devel wayland-devel wayland-protocols"
|
|
|
|
if [ "$CROSS_BUILD" ]; then
|
|
|
|
hostmakedepends+=" wayland-devel"
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
configure_args+=" -DSDL_WAYLAND=OFF"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$build_option_x11" ]; then
|
|
|
|
configure_args+=" -DSDL_X11=ON -DSDL_X11_SHARED=OFF"
|
|
|
|
makedepends+=" libSM-devel libXcursor-devel libXScrnSaver-devel libXrandr-devel"
|
|
|
|
else
|
|
|
|
configure_args+=" -DSDL_X11=OFF"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$build_option_vulkan" ]; then
|
|
|
|
configure_args+=" -DSDL_VULKAN=ON"
|
|
|
|
makedepends+=" vulkan-loader-devel"
|
|
|
|
else
|
|
|
|
configure_args+=" -DSDL_VULKAN=OFF"
|
|
|
|
fi
|
|
|
|
|
|
|
|
SDL3-devel_package() {
|
|
|
|
short_desc+=" - development files"
|
|
|
|
depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
|
|
|
|
pkg_install() {
|
|
|
|
vmove usr/include
|
|
|
|
vmove usr/lib/cmake
|
|
|
|
vmove usr/lib/pkgconfig
|
|
|
|
vmove "usr/lib/*.a"
|
|
|
|
vmove "usr/lib/*.so"
|
|
|
|
vmove usr/share
|
|
|
|
}
|
|
|
|
}
|