diff options
author | Parabola <dev@list.parabolagnulinux.org> | 2011-04-05 14:26:38 +0000 |
---|---|---|
committer | Parabola <dev@list.parabolagnulinux.org> | 2011-04-05 14:26:38 +0000 |
commit | 415856bdd4f48ab4f2732996f0bae58595092bbe (patch) | |
tree | ede2018b591f6dfb477fe9341ba17b9bc000fab9 /multilib/lib32-sdl |
Tue Apr 5 14:26:38 UTC 2011
Diffstat (limited to 'multilib/lib32-sdl')
-rw-r--r-- | multilib/lib32-sdl/PKGBUILD | 44 | ||||
-rw-r--r-- | multilib/lib32-sdl/sdl-1.2.14-fix-disappearing-cursor.patch | 17 | ||||
-rw-r--r-- | multilib/lib32-sdl/sdl-1.2.14-fix-mouse-clicking.patch | 23 | ||||
-rw-r--r-- | multilib/lib32-sdl/sdl-1.2.14-joystick-crash.diff | 14 |
4 files changed, 98 insertions, 0 deletions
diff --git a/multilib/lib32-sdl/PKGBUILD b/multilib/lib32-sdl/PKGBUILD new file mode 100644 index 000000000..51eda45e5 --- /dev/null +++ b/multilib/lib32-sdl/PKGBUILD @@ -0,0 +1,44 @@ +# $Id: PKGBUILD 33692 2010-11-27 16:54:21Z heftig $ +# Maintainer: Allan McRae <allan@archlinux.org> +# Contributor: dorphell <dorphell@archlinux.org> + +_pkgbasename=sdl +pkgname=lib32-$_pkgbasename +pkgver=1.2.14 +pkgrel=8 +pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard (32-bit)" +arch=('x86_64') +url="http://www.libsdl.org" +license=('LGPL') +depends=('lib32-libxext' 'lib32-libxrender' 'lib32-libx11' $_pkgbasename) +makedepends=('lib32-alsa-lib' 'lib32-mesa' 'lib32-libpulse' gcc-multilib) +options=('!libtool') +source=(http://www.libsdl.org/release/SDL-${pkgver}.tar.gz + 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() { + export CC="gcc -m32" + export CXX="g++ -m32" + export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" + + cd ${srcdir}/SDL-${pkgver} + 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 \ + --with-x --disable-rpath --libdir=/usr/lib32 + make +} + +package() { + cd ${srcdir}/SDL-${pkgver} + make DESTDIR=${pkgdir} install + + rm -rf "${pkgdir}"/usr/{include,share,bin} +} diff --git a/multilib/lib32-sdl/sdl-1.2.14-fix-disappearing-cursor.patch b/multilib/lib32-sdl/sdl-1.2.14-fix-disappearing-cursor.patch new file mode 100644 index 000000000..fcd3c314d --- /dev/null +++ b/multilib/lib32-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/multilib/lib32-sdl/sdl-1.2.14-fix-mouse-clicking.patch b/multilib/lib32-sdl/sdl-1.2.14-fix-mouse-clicking.patch new file mode 100644 index 000000000..7d3e5acfc --- /dev/null +++ b/multilib/lib32-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/multilib/lib32-sdl/sdl-1.2.14-joystick-crash.diff b/multilib/lib32-sdl/sdl-1.2.14-joystick-crash.diff new file mode 100644 index 000000000..949e18b96 --- /dev/null +++ b/multilib/lib32-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; |