summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLocke Shinseiko <wizzleby@gmail.com>2010-07-01 18:54:31 -0400
committerLocke Shinseiko <wizzleby@gmail.com>2010-07-01 18:54:31 -0400
commitaa0e477a0286be0bb95cc4c8edc9e71c550bc092 (patch)
treee99120f111fae380093adc2ed944010a13bbf77b /media-libs/libsdl
parent...and Manifest for last commit (diff)
downloadgamerlay-aa0e477a0286be0bb95cc4c8edc9e71c550bc092.tar.gz
gamerlay-aa0e477a0286be0bb95cc4c8edc9e71c550bc092.tar.bz2
gamerlay-aa0e477a0286be0bb95cc4c8edc9e71c550bc092.zip
[media-libs/libsdl-1.2.14-r3] Sync from tree, revbump, add patch to fix bug #
patch added: libsdl-1.2.14-disappearingcursor.diff, from debian patch tracker, fixes the bug introduced by libsdl-1.2.14-click.patch (also from debian)
Diffstat (limited to 'media-libs/libsdl')
-rw-r--r--media-libs/libsdl/Manifest6
-rw-r--r--media-libs/libsdl/files/libsdl-1.2.13-sdl-config.patch20
-rw-r--r--media-libs/libsdl/files/libsdl-1.2.14-click.patch23
-rw-r--r--media-libs/libsdl/files/libsdl-1.2.14-disappearingcursor.diff19
-rw-r--r--media-libs/libsdl/libsdl-1.2.14-r3.ebuild155
-rw-r--r--media-libs/libsdl/metadata.xml28
6 files changed, 251 insertions, 0 deletions
diff --git a/media-libs/libsdl/Manifest b/media-libs/libsdl/Manifest
new file mode 100644
index 0000000..e530820
--- /dev/null
+++ b/media-libs/libsdl/Manifest
@@ -0,0 +1,6 @@
+AUX libsdl-1.2.13-sdl-config.patch 780 RMD160 63a3f86cd25011d0d1e983d89910d4bceb965e86 SHA1 01c8d54cb8a22ea2a1e898b3ca39f9baca07dc98 SHA256 1c73cc815ae4f6fdaee3dc899a9f38e9f29f88e3997070c9fba226b36dbed015
+AUX libsdl-1.2.14-click.patch 804 RMD160 5330dbd055bd7451ce5af133a9c8eb9446b2664f SHA1 481bd4371dd0099556435d9972a3d16274833d63 SHA256 8d178f13eb707e81f5f9d86bf7b609ae8f0bac937fb4a37ebcbf4bbc9b89e21b
+AUX libsdl-1.2.14-disappearingcursor.diff 965 RMD160 8249d39ab94cd93d0ce305c36b7507b325dcd682 SHA1 e05c8f16dcddf0af6dc1e3e27b683867e3c5e28c SHA256 39ceba35c5ea8b9bcc52d2fe3b62a74eb1691524630bffc711b4c690f22aaf19
+DIST SDL-1.2.14.tar.gz 4014154 RMD160 a3a9a691f5510eb5327ca159a034f55a70cb5801 SHA1 ba625b4b404589b97e92d7acd165992debe576dd SHA256 5d927e287034cb6bb0ebccfa382cb1d185cb113c8ab5115a0759798642eed9b6
+EBUILD libsdl-1.2.14-r3.ebuild 4611 RMD160 8ede77ec6e0683df83491c8deb1f80e2b16e40e3 SHA1 71e13374798f3a725fbd32724183c0de7e5452bc SHA256 6e6e15756a19e883c3c0b35c56454e12066972731f0c381bcb5e68bedecbf191
+MISC metadata.xml 1357 RMD160 f76f0ef20941fc2c320b8a13f497dcb43f124cc9 SHA1 e5c05312f46bc682fc7fed1c7cec23bbdb59cd07 SHA256 a19b0d85c597bbe4d3dffa744d2ed9365660f8082145ab6b6f0813e36e174827
diff --git a/media-libs/libsdl/files/libsdl-1.2.13-sdl-config.patch b/media-libs/libsdl/files/libsdl-1.2.13-sdl-config.patch
new file mode 100644
index 0000000..f430428
--- /dev/null
+++ b/media-libs/libsdl/files/libsdl-1.2.13-sdl-config.patch
@@ -0,0 +1,20 @@
+Only output -L -rpath cruft if using a non-standard install location.
+
+Makes ABI / cross-compiling easier on the soul.
+
+--- sdl-config.in
++++ sdl-config.in
+@@ -44,7 +44,12 @@
+ echo -I@includedir@/SDL @SDL_CFLAGS@
+ ;;
+ @ENABLE_SHARED_TRUE@ --libs)
+-@ENABLE_SHARED_TRUE@ echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@
++@ENABLE_SHARED_TRUE@ if test x"${prefix}" != x"/usr" ; then
++@ENABLE_SHARED_TRUE@ libdirs="-L@libdir@"
++@ENABLE_SHARED_TRUE@ else
++@ENABLE_SHARED_TRUE@ libdirs=""
++@ENABLE_SHARED_TRUE@ fi
++@ENABLE_SHARED_TRUE@ echo $libdirs @SDL_RLD_FLAGS@ @SDL_LIBS@
+ @ENABLE_SHARED_TRUE@ ;;
+ @ENABLE_STATIC_TRUE@@ENABLE_SHARED_TRUE@ --static-libs)
+ @ENABLE_STATIC_TRUE@@ENABLE_SHARED_FALSE@ --libs|--static-libs)
diff --git a/media-libs/libsdl/files/libsdl-1.2.14-click.patch b/media-libs/libsdl/files/libsdl-1.2.14-click.patch
new file mode 100644
index 0000000..7d3e5ac
--- /dev/null
+++ b/media-libs/libsdl/files/libsdl-1.2.14-click.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/media-libs/libsdl/files/libsdl-1.2.14-disappearingcursor.diff b/media-libs/libsdl/files/libsdl-1.2.14-disappearingcursor.diff
new file mode 100644
index 0000000..bb637b9
--- /dev/null
+++ b/media-libs/libsdl/files/libsdl-1.2.14-disappearingcursor.diff
@@ -0,0 +1,19 @@
+This was retrieved from the debian patch tracker, and fixes an issue caused by the clicks patch,
+which we seem to have also gotten from debian.
+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/media-libs/libsdl/libsdl-1.2.14-r3.ebuild b/media-libs/libsdl/libsdl-1.2.14-r3.ebuild
new file mode 100644
index 0000000..174dcb9
--- /dev/null
+++ b/media-libs/libsdl/libsdl-1.2.14-r3.ebuild
@@ -0,0 +1,155 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/libsdl/libsdl-1.2.14-r2.ebuild,v 1.1 2010/04/08 20:25:47 mr_bones_ Exp $
+
+EAPI=2
+inherit flag-o-matic multilib toolchain-funcs eutils libtool
+
+DESCRIPTION="Simple Direct Media Layer"
+HOMEPAGE="http://www.libsdl.org/"
+SRC_URI="http://www.libsdl.org/release/SDL-${PV}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+# WARNING:
+# if you disable the audio, video, joystick use flags or turn on the custom-cflags use flag
+# in USE and something breaks, you pick up the pieces. Be prepared for
+# bug reports to be marked INVALID.
+IUSE="oss alsa nas X dga xv xinerama fbcon directfb ggi svga tslib aalib opengl libcaca +audio +video +joystick custom-cflags pulseaudio ps3 static-libs"
+
+RDEPEND="audio? ( >=media-libs/audiofile-0.1.9 )
+ alsa? ( media-libs/alsa-lib )
+ nas? (
+ media-libs/nas
+ x11-libs/libXt
+ x11-libs/libXext
+ x11-libs/libX11
+ )
+ X? (
+ x11-libs/libXt
+ x11-libs/libXext
+ x11-libs/libX11
+ x11-libs/libXrandr
+ )
+ directfb? ( >=dev-libs/DirectFB-0.9.19 )
+ ggi? ( >=media-libs/libggi-2.0_beta3 )
+ svga? ( >=media-libs/svgalib-1.4.2 )
+ aalib? ( media-libs/aalib )
+ libcaca? ( >=media-libs/libcaca-0.9-r1 )
+ opengl? ( virtual/opengl virtual/glu )
+ ppc64? ( ps3? ( sys-libs/libspe2 ) )
+ tslib? ( x11-libs/tslib )
+ pulseaudio? ( media-sound/pulseaudio )"
+DEPEND="${RDEPEND}
+ nas? (
+ x11-proto/xextproto
+ x11-proto/xproto
+ )
+ X? (
+ x11-proto/xextproto
+ x11-proto/xproto
+ )
+ x86? ( || ( >=dev-lang/yasm-0.6.0 >=dev-lang/nasm-0.98.39-r3 ) )"
+
+S=${WORKDIR}/SDL-${PV}
+
+pkg_setup() {
+ if use !audio || use !video || use !joystick ; then
+ ewarn "Since you've chosen to turn off some of libsdl's functionality,"
+ ewarn "don't bother filing libsdl-related bugs until trying to remerge"
+ ewarn "libsdl with the audio, video, and joystick flags in USE."
+ ewarn "You need to know what you're doing to selectively turn off parts of libsdl."
+ epause 30
+ fi
+ if use custom-cflags ; then
+ ewarn "Since you've chosen to use possibly unsafe CFLAGS,"
+ ewarn "don't bother filing libsdl-related bugs until trying to remerge"
+ ewarn "libsdl without the custom-cflags use flag in USE."
+ epause 10
+ fi
+}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-1.2.13-sdl-config.patch \
+ "${FILESDIR}"/${P}-click.patch \
+ "${FILESDIR}"/${P}-disappearingcursor.diff
+
+ elibtoolize
+}
+
+src_configure() {
+ local myconf=
+ if [[ $(tc-arch) != "x86" ]] ; then
+ myconf="${myconf} --disable-nasm"
+ else
+ myconf="${myconf} --enable-nasm"
+ fi
+ use custom-cflags || strip-flags
+ use audio || myconf="${myconf} --disable-audio"
+ use video \
+ && myconf="${myconf} --enable-video-dummy" \
+ || myconf="${myconf} --disable-video"
+ use joystick || myconf="${myconf} --disable-joystick"
+
+ local directfbconf="--disable-video-directfb"
+ if use directfb ; then
+ # since DirectFB can link against SDL and trigger a
+ # dependency loop, only link against DirectFB if it
+ # isn't broken #61592
+ echo 'int main(){}' > directfb-test.c
+ $(tc-getCC) directfb-test.c -ldirectfb 2>/dev/null \
+ && directfbconf="--enable-video-directfb" \
+ || ewarn "Disabling DirectFB since libdirectfb.so is broken"
+ fi
+
+ myconf="${myconf} ${directfbconf}"
+
+ econf \
+ --disable-rpath \
+ --disable-arts \
+ --disable-esd \
+ --enable-events \
+ --enable-cdrom \
+ --enable-threads \
+ --enable-timers \
+ --enable-file \
+ --enable-cpuinfo \
+ --disable-alsa-shared \
+ --disable-esd-shared \
+ --disable-pulseaudio-shared \
+ --disable-arts-shared \
+ --disable-nas-shared \
+ --disable-x11-shared \
+ --disable-osmesa-shared \
+ $(use_enable oss) \
+ $(use_enable alsa) \
+ $(use_enable pulseaudio) \
+ $(use_enable nas) \
+ $(use_enable X video-x11) \
+ $(use_enable dga) \
+ $(use_enable xv video-x11-xv) \
+ $(use_enable xinerama video-x11-xinerama) \
+ $(use_enable X video-x11-xrandr) \
+ $(use_enable dga video-dga) \
+ $(use_enable fbcon video-fbcon) \
+ $(use_enable ggi video-ggi) \
+ $(use_enable svga video-svga) \
+ $(use_enable aalib video-aalib) \
+ $(use_enable libcaca video-caca) \
+ $(use_enable opengl video-opengl) \
+ $(use_enable ps3 video-ps3) \
+ $(use_enable tslib input-tslib) \
+ $(use_with X x) \
+ $(use_enable static-libs static) \
+ --disable-video-x11-xme \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ use static-libs || rm -f "${D}"/usr/$(get_libdir)/lib*.la
+ dodoc BUGS CREDITS README README-SDL.txt README.CVS TODO WhatsNew
+ dohtml -r ./
+}
diff --git a/media-libs/libsdl/metadata.xml b/media-libs/libsdl/metadata.xml
new file mode 100644
index 0000000..0ee2113
--- /dev/null
+++ b/media-libs/libsdl/metadata.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <longdescription>
+Simple DirectMedia Layer is a cross-platform multimedia library designed
+to provide low level access to audio, keyboard, mouse, joystick, 3D
+hardware via OpenGL, and 2D video framebuffer. It is used by MPEG
+playback software, emulators, and many popular games, including the
+award winning Linux port of "Civilization: Call To Power."
+
+Simple DirectMedia Layer supports Linux, Windows, BeOS, MacOS Classic,
+MacOS X, FreeBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX. There is also
+code, but no official support, for Windows CE, AmigaOS, Dreamcast,
+Atari, NetBSD, AIX, OSF/Tru64, RISC OS, and SymbianOS.
+
+SDL is written in C, but works with C++ natively, and has bindings to
+several other languages, including Ada, Eiffel, Java, Lua, ML, Perl,
+PHP, Pike, Python, and Ruby.
+</longdescription>
+ <use>
+ <flag name="audio">Control audio support (disable at your own risk)</flag>
+ <flag name="joystick">Control joystick support (disable at your own risk)</flag>
+ <flag name="ps3">Build the PS3 video driver</flag>
+ <flag name="tslib">Build with tslib support for touchscreen devices</flag>
+ <flag name="video">Control video support (disable at your own risk)</flag>
+ </use>
+</pkgmetadata>