diff options
Diffstat (limited to 'community/sdl2/APKBUILD')
-rw-r--r-- | community/sdl2/APKBUILD | 88 |
1 files changed, 45 insertions, 43 deletions
diff --git a/community/sdl2/APKBUILD b/community/sdl2/APKBUILD index 64c7db813fc..a52362faaee 100644 --- a/community/sdl2/APKBUILD +++ b/community/sdl2/APKBUILD @@ -1,18 +1,19 @@ # Contributor: August Klein <amatcoder@gmail.com> -# Maintainer: August Klein <amatcoder@gmail.com> +# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca> pkgname=sdl2 -pkgver=2.0.16 -pkgrel=2 +pkgver=2.28.5 +pkgrel=1 pkgdesc="development library designed to provide low level access to audio, keyboard, mouse, joystick and graphics" url="https://www.libsdl.org" arch="all" license="Zlib" -depends_dev="directfb-dev mesa-dev" +depends_dev="$pkgname mesa-dev" makedepends=" alsa-lib-dev cmake eudev-dev jack-dev + libsamplerate-dev libx11-dev libxcursor-dev libxext-dev @@ -22,21 +23,20 @@ makedepends=" libxrender-dev libxscrnsaver-dev libusb-dev + pipewire-dev pulseaudio-dev + samurai wayland-dev wayland-protocols $depends_dev " -subpackages="$pkgname-dev" -# TODO: drop fullscreen mode patch after next release -source="https://www.libsdl.org/release/SDL2-$pkgver.tar.gz - directfb-cflags.patch - wayland-ignore-stateless-configs-fullscreen-mode.patch - " -options="!check" # No good way to run the available tests +subpackages="$pkgname-dbg $pkgname-doc $pkgname-dev" +source="https://www.libsdl.org/release/SDL2-$pkgver.tar.gz" builddir="$srcdir/SDL2-$pkgver" # secfixes: +# 2.0.18-r0: +# - CVE-2021-33657 # 2.0.10-r0: # - CVE-2019-7572 # - CVE-2019-7573 @@ -49,51 +49,53 @@ builddir="$srcdir/SDL2-$pkgver" # - CVE-2019-7637 # - CVE-2019-7638 -case "$CARCH" in - s390x|mips64) _pipewire=OFF ;; - *) - makedepends="$makedepends pipewire-dev" - _pipewire=ON - ;; -esac - build() { - # NOTE: Please do not remove the -DVIDEO_DIRECTFB=ON flag. - # Some apps, used for booting Alpine derivatives, require this to function! if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi - cmake -B build \ + CFLAGS="$CFLAGS -flto=auto -ffat-lto-objects" \ + cmake -B build -G Ninja \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib \ - -DCMAKE_BUILD_TYPE=None \ + -DCMAKE_BUILD_TYPE=MinSizeRel \ + -DCMAKE_JOB_POOLS=thr=3 \ + -DCMAKE_JOB_POOL_LINK=thr \ -DBUILD_SHARED_LIBS=True \ - -DSDL_TEST=OFF \ - -DALSA=ON \ - -DJACK=ON \ - -DCLOCK_GETTIME=ON \ - -DARTS=OFF \ - -DESD=OFF \ - -DNAS=OFF \ - -DRPATH=OFF \ - -DVIDEO_X11=ON \ - -DVIDEO_DIRECTFB=ON \ - -DVIDEO_WAYLAND=ON \ - -DCMAKE_C_FLAGS="$CFLAGS" \ + -DSDL_TEST=ON \ + -DSDL_TESTS="$(want_check && echo ON || echo OFF)" \ + -DSDL_ALSA=ON \ + -DSDL_JACK=ON \ + -DSDL_CLOCK_GETTIME=ON \ + -DSDL_ARTS=OFF \ + -DSDL_ESD=OFF \ + -DSDL_NAS=OFF \ + -DSDL_RPATH=OFF \ + -DSDL_X11=ON \ + -DSDL_DIRECTFB=OFF \ + -DSDL_WAYLAND=ON \ -DSDL_STATIC=ON \ -DSDL_SHARED=ON \ - -DPIPEWIRE_SHARED=$_pipewire \ - -DPULSEAUDIO_SHARED=ON \ - "$CMAKE_CROSSOPTS" - make -C build + $CMAKE_CROSSOPTS + ninja -C build +} + +check() { + ctest --test-dir build --output-on-failure } package() { - make -C build DESTDIR="$pkgdir" install + DESTDIR="$pkgdir" ninja -C build install +} + +dev() { + default_dev + + # move back dev symlink into main package so things can dlopen it + # libSDL2.so -> libSDL2-2.0.so -> libSDL2-2.0.so.version + mv "$subpkgdir"/usr/lib/libSDL2.so "$subpkgdir"/usr/lib/libSDL2-2.0.so \ + "$pkgdir"/usr/lib } sha512sums=" -ec75ef8526792650c2647b78bb0244f973774418aeae33a2182d90ce696b30acb652f8be9c2012a16c1c5d5622f7630ff2e1eadae27ea3dc78ab47730cf5e62f SDL2-2.0.16.tar.gz -8efdd02e0e71908b913f4c05b1f02aa94315c2bbffff87d1a46db94723dd7f0ea177e1e00de6c212ad31a00a22aa0fd87f63c3865c4dff2dc98f302046084caf directfb-cflags.patch -feb2adc0c90ca8d6bdcb7bd06d20c5adb3ca720a0035079fe478abcfb399064bbfb1c8a0108f08ba74aad254572ce7dfc427f17ab345511f00d0a83216556f42 wayland-ignore-stateless-configs-fullscreen-mode.patch +12593eb78fcca877a8dfb78cf21a4e6feba7dc87c964de378ac462b36d8e41ecb587222cb41d5f56dd35b838e1b9867b8ae0cf2f4d2a01afaf23ac8c11edc84d SDL2-2.28.5.tar.gz " |