aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main/sdl/APKBUILD28
-rw-r--r--main/sdl/SDL-1.2.10-GrabNotViewable.patch22
2 files changed, 45 insertions, 5 deletions
diff --git a/main/sdl/APKBUILD b/main/sdl/APKBUILD
index 38dc05424d..79d2c3ac01 100644
--- a/main/sdl/APKBUILD
+++ b/main/sdl/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=sdl
pkgver=1.2.15
-pkgrel=0
+pkgrel=1
pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard"
url="http://www.libsdl.org"
arch="all"
@@ -9,16 +9,33 @@ license="LGPL"
subpackages="$pkgname-dev $pkgname-doc"
depends=
depends_dev="libx11-dev libiconv-dev"
-makedepends="libxext-dev libxrender-dev libx11-dev libice-dev libsm-dev
+makedepends="
+ $depends_dev
+ libxext-dev libxrender-dev libx11-dev libice-dev libsm-dev
libxrandr-dev mesa-dev alsa-lib-dev libiconv-dev"
-source="http://www.libsdl.org/release/SDL-$pkgver.tar.gz"
+source="http://www.libsdl.org/release/SDL-$pkgver.tar.gz
+ SDL-1.2.10-GrabNotViewable.patch"
+_builddir="$srcdir"/SDL-$pkgver
+
+prepare() {
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
build() {
- cd "$srcdir"/SDL-$pkgver
+ cd "$_builddir"
./configure --prefix=/usr \
--disable-nasm \
--disable-esd \
+ --disable-video-svga \
+ --disable-video-ggi \
+ --disable-video-aalib \
--enable-alsa \
+ --enable-sdl-dlopen \
--with-x \
--disable-rpath \
--disable-nls
@@ -31,4 +48,5 @@ package() {
rm "$pkgdir"/usr/lib/*.la
}
-md5sums="9d96df8417572a2afb781a7c4c811a85 SDL-1.2.15.tar.gz"
+md5sums="9d96df8417572a2afb781a7c4c811a85 SDL-1.2.15.tar.gz
+37ad001a4d2ff924a5fab356b49f8a78 SDL-1.2.10-GrabNotViewable.patch"
diff --git a/main/sdl/SDL-1.2.10-GrabNotViewable.patch b/main/sdl/SDL-1.2.10-GrabNotViewable.patch
new file mode 100644
index 0000000000..128cf3510d
--- /dev/null
+++ b/main/sdl/SDL-1.2.10-GrabNotViewable.patch
@@ -0,0 +1,22 @@
+Makes SDL-1.2 SDL_WM_GrabInput() non-blocking in case of SDL window is not
+viewable. Patch provided by <pbonzini@redhat.com>.
+See <http://bugzilla.libsdl.org/show_bug.cgi?id=1155>.
+
+--- ./src/video/x11/SDL_x11wm.c 2007-12-31 04:48:13.000000000 +0000
++++ ./src/video/x11/SDL_x11wm.c 2009-01-15 10:27:14.000000000 +0000
+@@ -351,13 +351,14 @@ SDL_GrabMode X11_GrabInputNoLock(_THIS,
+ result = XGrabPointer(SDL_Display, SDL_Window, True, 0,
+ GrabModeAsync, GrabModeAsync,
+ SDL_Window, None, CurrentTime);
+- if ( result == GrabSuccess ) {
++ if ( result == GrabSuccess || result == GrabNotViewable ) {
+ break;
+ }
+ SDL_Delay(100);
+ }
+ if ( result != GrabSuccess ) {
+ /* Uh, oh, what do we do here? */ ;
++ return(SDL_GRAB_OFF);
+ }
+ /* Now grab the keyboard */
+ XGrabKeyboard(SDL_Display, WMwindow, True,