summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--abs/core/sdl/PKGBUILD31
-rw-r--r--abs/core/sdl/sdl-1.2.14-fix-disappearing-cursor.patch17
-rw-r--r--abs/core/sdl/sdl-1.2.14-fix-mouse-clicking.patch23
-rw-r--r--abs/core/sdl/sdl-1.2.14-joystick-crash.diff14
4 files changed, 75 insertions, 10 deletions
diff --git a/abs/core/sdl/PKGBUILD b/abs/core/sdl/PKGBUILD
index dabe808..27d9b6f 100644
--- a/abs/core/sdl/PKGBUILD
+++ b/abs/core/sdl/PKGBUILD
@@ -1,26 +1,37 @@
-# $Id: PKGBUILD 16059 2008-10-20 12:58:43Z allan $
+# $Id: PKGBUILD 82982 2010-06-20 08:19:40Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# Contributor: dorphell <dorphell@archlinux.org>
pkgname=sdl
-pkgver=1.2.13
-pkgrel=3
+pkgver=1.2.14
+pkgrel=5
pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard"
arch=('i686' 'x86_64')
url="http://www.libsdl.org"
license=('LGPL')
depends=('glibc' 'libxext' 'libxrender' 'libx11')
-makedepends=('alsa-lib' 'mesa')
+makedepends=('alsa-lib' 'esound' 'mesa')
options=('!libtool')
source=(http://www.libsdl.org/release/SDL-${pkgver}.tar.gz
- sdl-1.2.13-dynaminc-esd.patch)
-md5sums=('c6660feea2a6834de10bc71b2f8e4d88'
- '7c2f51f526f3b905b6170f39a7015eb9')
+ sdl-1.2.14-joystick-crash.diff
+ sdl-1.2.14-fix-mouse-clicking.patch
+ sdl-1.2.14-fix-disappearing-cursor.patch)
+md5sums=('e52086d1b508fa0b76c52ee30b55bec4'
+ '9d8890b3817736a5d365f7497f096634'
+ '04d8c179f125e04bcd4c9d60e013c2d7'
+ 'a6cf3e71b653aa97d0d8ae6c0a789807')
build() {
cd ${srcdir}/SDL-${pkgver}
- patch -Np1 -i $srcdir/sdl-1.2.13-dynaminc-esd.patch
- ./configure --prefix=/usr --disable-nasm --enable-alsa --disable-esd --with-x --disable-rpath
- make || return 1
+ patch -Np1 -i $srcdir/sdl-1.2.14-joystick-crash.diff
+ patch -Np1 -i $srcdir/sdl-1.2.14-fix-mouse-clicking.patch
+ patch -Np1 -i $srcdir/sdl-1.2.14-fix-disappearing-cursor.patch
+ ./configure --prefix=/usr --disable-nasm --enable-alsa --disable-esd \
+ --with-x --disable-rpath
+ make
+}
+
+package() {
+ cd ${srcdir}/SDL-${pkgver}
make DESTDIR=${pkgdir} install
}
diff --git a/abs/core/sdl/sdl-1.2.14-fix-disappearing-cursor.patch b/abs/core/sdl/sdl-1.2.14-fix-disappearing-cursor.patch
new file mode 100644
index 0000000..fcd3c31
--- /dev/null
+++ b/abs/core/sdl/sdl-1.2.14-fix-disappearing-cursor.patch
@@ -0,0 +1,17 @@
+Index: SDL-1.2.14/src/video/x11/SDL_x11events.c
+===================================================================
+--- SDL-1.2.14.orig/src/video/x11/SDL_x11events.c 2010-04-30 09:16:35.000000000 -0400
++++ SDL-1.2.14/src/video/x11/SDL_x11events.c 2010-04-30 09:16:35.000000000 -0400
+@@ -444,8 +444,10 @@
+ if ( xevent.xcrossing.mode == NotifyUngrab )
+ printf("Mode: NotifyUngrab\n");
+ #endif
+- if ( xevent.xcrossing.detail != NotifyInferior ) {
+- if ( this->input_grab == SDL_GRAB_OFF ) {
++ if ( (xevent.xcrossing.mode != NotifyGrab) &&
++ (xevent.xcrossing.mode != NotifyUngrab) &&
++ (xevent.xcrossing.detail != NotifyInferior) ) {
++ if ( this->input_grab == SDL_GRAB_OFF ) {
+ posted = SDL_PrivateAppActive(0, SDL_APPMOUSEFOCUS);
+ } else {
+ posted = SDL_PrivateMouseMotion(0, 0,
diff --git a/abs/core/sdl/sdl-1.2.14-fix-mouse-clicking.patch b/abs/core/sdl/sdl-1.2.14-fix-mouse-clicking.patch
new file mode 100644
index 0000000..7d3e5ac
--- /dev/null
+++ b/abs/core/sdl/sdl-1.2.14-fix-mouse-clicking.patch
@@ -0,0 +1,23 @@
+--- SDL-1.2.14/src/video/x11/SDL_x11events.c.orig 2010-04-08 11:57:05.003169834 -0700
++++ SDL-1.2.14/src/video/x11/SDL_x11events.c 2010-04-08 12:33:51.690926340 -0700
+@@ -423,12 +423,15 @@
+ if ( xevent.xcrossing.mode == NotifyUngrab )
+ printf("Mode: NotifyUngrab\n");
+ #endif
+- if ( this->input_grab == SDL_GRAB_OFF ) {
+- posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
++ if ( (xevent.xcrossing.mode != NotifyGrab) &&
++ (xevent.xcrossing.mode != NotifyUngrab) ) {
++ if ( this->input_grab == SDL_GRAB_OFF ) {
++ posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
++ }
++ posted = SDL_PrivateMouseMotion(0, 0,
++ xevent.xcrossing.x,
++ xevent.xcrossing.y);
+ }
+- posted = SDL_PrivateMouseMotion(0, 0,
+- xevent.xcrossing.x,
+- xevent.xcrossing.y);
+ }
+ break;
+
diff --git a/abs/core/sdl/sdl-1.2.14-joystick-crash.diff b/abs/core/sdl/sdl-1.2.14-joystick-crash.diff
new file mode 100644
index 0000000..949e18b
--- /dev/null
+++ b/abs/core/sdl/sdl-1.2.14-joystick-crash.diff
@@ -0,0 +1,14 @@
+Description: Fix crash with joystick detection.
+Index: libsdl1.2-1.2.14/src/joystick/linux/SDL_sysjoystick.c
+===================================================================
+--- libsdl1.2-1.2.14.orig/src/joystick/linux/SDL_sysjoystick.c 2010-01-12 12:37:36.000000000 -0500
++++ libsdl1.2-1.2.14/src/joystick/linux/SDL_sysjoystick.c 2010-01-12 12:38:27.000000000 -0500
+@@ -700,7 +700,7 @@
+ continue;
+ }
+ if ( test_bit(i, absbit) ) {
+- int values[5];
++ int values[6];
+
+ if ( ioctl(fd, EVIOCGABS(i), values) < 0 )
+ continue;