libsdl-directfb r1: Add SDL DirectFB Version
authorShane Volpe <shanevolpe@gmail.com>
Thu, 1 Mar 2007 12:34:46 +0000 (12:34 +0000)
committerShane Volpe <shanevolpe@gmail.com>
Thu, 1 Mar 2007 12:34:46 +0000 (12:34 +0000)
packages/libsdl/files/directfb_obsolete_calls.patch [new file with mode: 0644]
packages/libsdl/libsdl-directfb_1.2.9.bb [new file with mode: 0644]

diff --git a/packages/libsdl/files/directfb_obsolete_calls.patch b/packages/libsdl/files/directfb_obsolete_calls.patch
new file mode 100644 (file)
index 0000000..f3f422c
--- /dev/null
@@ -0,0 +1,33 @@
+--- tmp/work/armv5te-angstrom-linux-gnueabi/libsdl-directfb-1.2.9-r1/SDL-1.2.9/src/video/directfb/SDL_DirectFB_video.c 2007-02-18 11:40:38.000000000 -0500
++++ SDL/src/video/directfb/SDL_DirectFB_video.c        2007-02-18 11:00:07.000000000 -0500
+@@ -376,7 +376,7 @@
+ {
+   int                      i;
+   DFBResult                ret;
+-  DFBCardCapabilities      caps;
++  DFBGraphicsDeviceDescription      caps;
+   DFBDisplayLayerConfig    dlc;
+   struct DirectFBEnumRect *rect;
+   IDirectFB               *dfb    = NULL;
+@@ -448,7 +448,7 @@
+   /* Query card capabilities to get the video memory size */
+-  dfb->GetCardCapabilities (dfb, &caps);
++  dfb->GetDeviceDescription (dfb, &caps);
+   this->info.wm_available = 1;
+   this->info.hw_available = 1;
+diff -u'rNF^function' tmp/work/armv5te-angstrom-linux-gnueabi/libsdl-directfb-1.2.9-r1/SDL-1.2.9/src/video/directfb/SDL_Direct
+/SDL_DirectFB_events.c
+--- tmp/work/armv5te-angstrom-linux-gnueabi/libsdl-directfb-1.2.9-r1/SDL-1.2.9/src/video/directfb/SDL_DirectFB_events.c 2004-0
++++ SDL/src/video/directfb/SDL_DirectFB_events.c        2007-02-18 11:00:07.000000000 -0500
+@@ -161,7 +161,7 @@
+   keymap[DIKI_SHIFT_L - DIKI_UNKNOWN] = SDLK_LSHIFT;
+   keymap[DIKI_SHIFT_R - DIKI_UNKNOWN] = SDLK_RSHIFT;
+   keymap[DIKI_ALT_L - DIKI_UNKNOWN] = SDLK_LALT;
+-  keymap[DIKI_ALTGR - DIKI_UNKNOWN] = SDLK_RALT;
++  keymap[DIKI_ALT_R - DIKI_UNKNOWN] = SDLK_RALT;
+   keymap[DIKI_TAB - DIKI_UNKNOWN] = SDLK_TAB;
+   keymap[DIKI_ENTER - DIKI_UNKNOWN] = SDLK_RETURN;
+   keymap[DIKI_SPACE - DIKI_UNKNOWN] = SDLK_SPACE;
diff --git a/packages/libsdl/libsdl-directfb_1.2.9.bb b/packages/libsdl/libsdl-directfb_1.2.9.bb
new file mode 100644 (file)
index 0000000..9145f5a
--- /dev/null
@@ -0,0 +1,59 @@
+DESCRIPTION = "Simple DirectMedia Layer - DirectFB Edition"
+SECTION = "libs"
+PRIORITY = "optional"
+DEPENDS = "alsa-lib directfb"
+PROVIDES = "virtual/libsdl"
+LICENSE = "LGPL"
+
+PR = "r1"
+
+SRC_URI = "http://www.libsdl.org/release/SDL-${PV}.tar.gz \
+          file://extra-keys.patch;patch=1 \
+          file://directfb_obsolete_calls.patch;patch=1 \
+          file://acinclude.m4"
+S = "${WORKDIR}/SDL-${PV}"
+
+inherit autotools binconfig
+
+EXTRA_OECONF = "--disable-static --disable-debug --enable-cdrom --enable-threads --enable-timers --enable-endian \
+                --enable-file --enable-oss --enable-alsa --disable-esd --disable-arts \
+                --disable-diskaudio --disable-nas --disable-esd-shared --disable-esdtest \
+                --disable-mintaudio --disable-nasm --disable-video-x11 --disable-video-dga \
+                --disable-video-fbcon --enable-video-directfb --disable-video-ps2gs \
+                --disable-video-xbios --disable-video-gem --disable-video-dummy \
+                --disable-video-opengl --enable-input-events --enable-pthreads \
+                --disable-video-picogui --disable-video-qtopia --enable-dlopen"
+
+FILES_${PN} = "${libdir}/lib*.so.*"
+FILES_${PN}-dev += "${bindir}/*config"
+
+do_configure_prepend() {
+       rm -f ${S}/acinclude.m4
+       cp ${WORKDIR}/acinclude.m4 ${S}/
+}
+
+do_configure_append () {
+       cd ${S}
+
+       # prevent libtool from linking libs against libstdc++, libgcc, ...
+       cat ${TARGET_PREFIX}libtool | sed -e 's/postdeps=".*"/postdeps=""/' > ${TARGET_PREFIX}libtool.tmp
+       mv ${TARGET_PREFIX}libtool.tmp ${TARGET_PREFIX}libtool
+       find ${S} -type f | xargs sed -i 's:I/usr/include:I${STAGING_INCDIR}:g'
+
+}
+
+do_stage() {
+       oe_libinstall -so -C src libSDL ${STAGING_LIBDIR}
+       rm ${STAGING_LIBDIR}/libSDL.la
+       ln -sf libSDL.so ${STAGING_LIBDIR}/libSDL-1.2.so
+       #oe_libinstall -a -C src/main libSDLmain ${STAGING_LIBDIR}
+       install -m 0644 src/main/libSDLmain.a ${STAGING_LIBDIR}
+
+       install -d ${STAGING_INCDIR}/SDL
+       for f in include/*.h
+       do
+               install -m 0644 $f ${STAGING_INCDIR}/SDL/
+       done
+
+       install -m 0644 *.m4 ${STAGING_DATADIR}/aclocal/
+}