I think I've successfully converted the current unstable package so that libsdl1.2debian-all includes DirectFB support. Patch attached. Please excuse me if I've made any mistakes; I'm not very familiar with package rolling. This should also still build if and when the libdirectfb packages get upgraded to 0.9.24.
FWIW I wanted DirectFB support so I could use the existing pygame package for a HTPC application I'm writing. This may also be useful for Freevo. -- TH * http://www.realh.co.uk
diff -Nru ../orig/libsdl1.2-1.2.9/debian/changelog libsdl1.2-1.2.9/debian/changelog --- ../orig/libsdl1.2-1.2.9/debian/changelog 2006-02-22 00:00:46.000000000 +0000 +++ libsdl1.2-1.2.9/debian/changelog 2006-02-22 00:01:28.000000000 +0000 @@ -1,3 +1,9 @@ +libsdl1.2 (1.2.9-1.0) unstable; urgency=low + + * Added directfb support to "all" package. + + -- Tony Houghton <[EMAIL PROTECTED]> Tue, 21 Feb 2006 21:38:00 +0000 + libsdl1.2 (1.2.9-0.1) unstable; urgency=low * Non-maintainer upload. diff -Nru ../orig/libsdl1.2-1.2.9/debian/control libsdl1.2-1.2.9/debian/control --- ../orig/libsdl1.2-1.2.9/debian/control 2006-02-22 00:00:46.000000000 +0000 +++ libsdl1.2-1.2.9/debian/control 2006-02-22 00:01:28.000000000 +0000 @@ -4,7 +4,7 @@ Maintainer: Debian SDL maintainers <[EMAIL PROTECTED]> Uploaders: Matthew Danish <[EMAIL PROTECTED]>, Zephaniah E. Hull <[EMAIL PROTECTED]>, Lawrence Williams <[EMAIL PROTECTED]> Standards-Version: 3.6.1 -Build-Depends: dpkg (>= 1.13.2), debhelper (>= 4.0), dbs, libaa1-dev, libx11-dev, libxext-dev, libxt-dev, libxv-dev, x-dev, libaudiofile-dev, libesd0-dev, xlibmesa-gl-dev | libgl-dev, libsvga1-dev [i386], libarts1-dev, libartsc0-dev, libasound2-dev [ ppc64], type-handling (>= 0.2.1), libaudio-dev, automake1.7 +Build-Depends: dpkg (>= 1.13.2), debhelper (>= 4.0), dbs, libaa1-dev, libx11-dev, libxext-dev, libxt-dev, libxv-dev, x-dev, libaudiofile-dev, libesd0-dev, xlibmesa-gl-dev | libgl-dev, libsvga1-dev [i386], libarts1-dev, libartsc0-dev, libasound2-dev [i386 ia64 alpha amd64 armeb arm hppa m32r m68k mips mipsel powerpc ppc64 s390 s390x sh3 sh3eb sh4 sh4eb sparc ppc64], type-handling (>= 0.2.1), libaudio-dev, automake1.7, libdirectfb-dev (>= 0.9.22) Package: libsdl1.2debian Architecture: any diff -Nru ../orig/libsdl1.2-1.2.9/debian/control.in libsdl1.2-1.2.9/debian/control.in --- ../orig/libsdl1.2-1.2.9/debian/control.in 2006-02-22 00:00:46.000000000 +0000 +++ libsdl1.2-1.2.9/debian/control.in 2006-02-22 00:01:28.000000000 +0000 @@ -4,7 +4,7 @@ Maintainer: Debian SDL maintainers <[EMAIL PROTECTED]> Uploaders: Matthew Danish <[EMAIL PROTECTED]>, Zephaniah E. Hull <[EMAIL PROTECTED]>, Lawrence Williams <[EMAIL PROTECTED]> Standards-Version: 3.6.1 -Build-Depends: dpkg (>= 1.13.2), debhelper (>= 4.0), dbs, libaa1-dev, libx11-dev, libxext-dev, libxt-dev, libxv-dev, x-dev, libaudiofile-dev, libesd0-dev, xlibmesa-gl-dev | libgl-dev, libsvga1-dev [i386], libarts1-dev, libartsc0-dev, libasound2-dev [EMAIL PROTECTED]@ ppc64], type-handling (>= 0.2.1), libaudio-dev, automake1.7 +Build-Depends: dpkg (>= 1.13.2), debhelper (>= 4.0), dbs, libaa1-dev, libx11-dev, libxext-dev, libxt-dev, libxv-dev, x-dev, libaudiofile-dev, libesd0-dev, xlibmesa-gl-dev | libgl-dev, libsvga1-dev [i386], libarts1-dev, libartsc0-dev, libasound2-dev [EMAIL PROTECTED]@ ppc64], type-handling (>= 0.2.1), libaudio-dev, automake1.7, libdirectfb-dev (>= 0.9.22) Package: libsdl1.2debian Architecture: any diff -Nru ../orig/libsdl1.2-1.2.9/debian/patches/007_directfb_924_fix.diff libsdl1.2-1.2.9/debian/patches/007_directfb_924_fix.diff --- ../orig/libsdl1.2-1.2.9/debian/patches/007_directfb_924_fix.diff 1970-01-01 01:00:00.000000000 +0100 +++ libsdl1.2-1.2.9/debian/patches/007_directfb_924_fix.diff 2006-02-22 00:01:28.000000000 +0000 @@ -0,0 +1,59 @@ +--- SDL-1.2.9/src/video/directfb/SDL_DirectFB_video.c.orig 2006-02-21 22:37:59.000000000 +0000 ++++ SDL-1.2.9/src/video/directfb/SDL_DirectFB_video.c 2006-02-21 22:38:18.000000000 +0000 +@@ -40,6 +40,7 @@ + #include <sys/mman.h> + + #include <directfb.h> ++#include <directfb_version.h> + + #include "SDL.h" + #include "SDL_error.h" +@@ -52,6 +53,12 @@ + #include "SDL_DirectFB_events.h" + #include "SDL_DirectFB_yuv.h" + ++#if DIRECTFB_MAJOR_VERSION > 0 || DIRECTFB_MINOR_VERSION > 9 || DIRECTFB_MICRO_VERSION > 23 ++#define SDL_DFB_API_STYLE 24 ++#else ++#define SDL_DFB_API_STYLE 22 ++#endif ++ + /* The implementation dependent data for the window manager cursor */ + struct WMcursor { + int unused; +@@ -376,7 +383,11 @@ + { + int i; + DFBResult ret; ++#if SDL_DFB_API_STYLE == 24 ++ DFBGraphicsDeviceDescription desc; ++#else + DFBCardCapabilities caps; ++#endif + DFBDisplayLayerConfig dlc; + struct DirectFBEnumRect *rect; + IDirectFB *dfb = NULL; +@@ -448,7 +459,11 @@ + + + /* Query card capabilities to get the video memory size */ ++#if SDL_DFB_API_STYLE == 24 ++ dfb->GetDeviceDescription (dfb, &desc); ++#else + dfb->GetCardCapabilities (dfb, &caps); ++#endif + + this->info.wm_available = 1; + this->info.hw_available = 1; +@@ -456,7 +471,11 @@ + this->info.blit_hw_CC = 1; + this->info.blit_hw_A = 1; + this->info.blit_fill = 1; ++#if SDL_DFB_API_STYLE == 24 ++ this->info.video_mem = desc.video_memory / 1024; ++#else + this->info.video_mem = caps.video_memory / 1024; ++#endif + + HIDDEN->initialized = 1; + HIDDEN->dfb = dfb; diff -Nru ../orig/libsdl1.2-1.2.9/debian/rules libsdl1.2-1.2.9/debian/rules --- ../orig/libsdl1.2-1.2.9/debian/rules 2006-02-22 00:00:46.000000000 +0000 +++ libsdl1.2-1.2.9/debian/rules 2006-02-22 00:01:28.000000000 +0000 @@ -64,7 +64,7 @@ for sound in all $(SOUNDS); do \ if ( [ "$$sound" = "all" ] ); then \ - SWITCHES="--disable-video-ggi --enable-video-svga --enable-video-aalib"; \ + SWITCHES="--disable-video-ggi --enable-video-svga --enable-video-aalib --enable-video-directfb"; \ else \ SWITCHES=""; \ for switch in $(SOUNDS); do \