diff --git a/media-libs/allegro/allegro-4.3.10-haiku-5.diff b/media-libs/allegro/allegro-4.3.10-haiku-5.diff new file mode 100644 index 000000000..5b3a25a4f --- /dev/null +++ b/media-libs/allegro/allegro-4.3.10-haiku-5.diff @@ -0,0 +1,792 @@ +diff -urN allegro-4.3.10/addons/allegrogl/fix.sh allegro-4.3.10-haiku/addons/allegrogl/fix.sh +--- allegro-4.3.10/addons/allegrogl/fix.sh 2008-10-04 20:41:29.000000000 +0000 ++++ allegro-4.3.10-haiku/addons/allegrogl/fix.sh 2008-10-04 21:07:34.000000000 +0000 +@@ -26,7 +26,7 @@ + echo "Compilation target adjustment." + echo " Usage: fix [--dtou|--utod|--quick]" + echo "" +- echo " is one of: djgpp, mingw32, unix, macosx," ++ echo " is one of: djgpp, haiku, mingw32, unix, macosx," + echo " macosx-universal" + echo "" + echo " --dtou converts from DOS/Win32 format to Unix" +@@ -81,6 +81,7 @@ + + case "$1" in + djgpp ) proc_fix "DJGPP" "makefile.dj";; ++ haiku ) proc_fix "Haiku" "makefile.gen";; + mingw ) proc_fix "Mingw32" "makefile.mgw";; + mingw32 ) proc_fix "Mingw32" "makefile.mgw";; + # used only by allegro's zipup.sh in packaging process +diff -urN allegro-4.3.10/addons/jpgalleg/fix.sh allegro-4.3.10-haiku/addons/jpgalleg/fix.sh +--- allegro-4.3.10/addons/jpgalleg/fix.sh 2008-10-04 20:41:12.000000000 +0000 ++++ allegro-4.3.10-haiku/addons/jpgalleg/fix.sh 2008-10-04 21:01:19.000000000 +0000 +@@ -85,6 +85,7 @@ + "mingw" ) proc_fix "MinGW32" "makefile.mgw";; + "msvc" ) proc_fix "MSVC" "makefile.vc";; + "beos" ) proc_fix "BeOS" "makefile.be";; ++ "haiku" ) proc_fix "Haiku" "makefile.be";; + "unix" ) proc_fix "Unix" "makefile.uni";; + "macosx" ) proc_fix "MacOS X" "makefile.osx";; + "macosx-universal" ) proc_fix_osx_ub ;; +diff -urN allegro-4.3.10/addons/loadpng/fix.sh allegro-4.3.10-haiku/addons/loadpng/fix.sh +--- allegro-4.3.10/addons/loadpng/fix.sh 2008-10-04 20:41:10.000000000 +0000 ++++ allegro-4.3.10-haiku/addons/loadpng/fix.sh 2008-10-04 21:08:47.000000000 +0000 +@@ -8,7 +8,7 @@ + echo + echo "Usage: $0 [--quick|--dtou|--utod]" + echo +- echo "Where platform is one of: djgpp, mingw32, unix, macosx, macosx-universal" ++ echo "Where platform is one of: djgpp, haiku, mingw32, unix, macosx, macosx-universal" + echo "The --quick parameter turns off text file conversion, --dtou converts from" + echo "DOS/Win32 format to Unix, --utod converts from Unix to DOS/Win32 format." + echo "If no parameter is specified --quick is assumed." +@@ -88,7 +88,9 @@ + fi + + case "$1" in ++ "beos" ) proc_fix "BeOS" "Makefile.be";; + "djgpp" ) proc_fix "DOS (djgpp)" "Makefile.dj";; ++ "haiku" ) proc_fix "Haiku" "Makefile.be";; + "mingw" ) proc_fix "Windows (MinGW)" "Makefile.mgw";; + "mingw32" ) proc_fix "Windows (MinGW)" "Makefile.mgw";; + "unix" ) proc_fix "Unix" "Makefile.unx";; +diff -urN allegro-4.3.10/addons/logg/fix.sh allegro-4.3.10-haiku/addons/logg/fix.sh +--- allegro-4.3.10/addons/logg/fix.sh 2008-10-04 20:41:29.000000000 +0000 ++++ allegro-4.3.10-haiku/addons/logg/fix.sh 2008-10-04 21:12:47.000000000 +0000 +@@ -8,7 +8,7 @@ + echo + echo "Usage: $0 [--quick|--dtou|--utod]" + echo +- echo "Where platform is one of: mingw32, unix, macosx, macosx-universal" ++ echo "Where platform is one of: beos, haiku, mingw32, unix, macosx, macosx-universal" + echo "The --quick parameter turns off text file conversion, --dtou converts from" + echo "DOS/Win32 format to Unix, --utod converts from Unix to DOS/Win32 format." + echo "If no parameter is specified --quick is assumed." +@@ -80,6 +80,8 @@ + fi + + case "$1" in ++ "beos" ) proc_fix "BeOS" "Makefile.be";; ++ "haiku" ) proc_fix "Haiku" "Makefile.be";; + "mingw" ) proc_fix "Windows (MinGW)" "Makefile.migw";; + "mingw32" ) proc_fix "Windows (MinGW)" "Makefile.migw";; + "unix" ) proc_fix "Unix" "Makefile.unix";; +diff -urN allegro-4.3.10/fix.sh allegro-4.3.10-haiku/fix.sh +--- allegro-4.3.10/fix.sh 2008-10-04 20:41:32.000000000 +0000 ++++ allegro-4.3.10-haiku/fix.sh 2008-10-04 21:01:20.000000000 +0000 +@@ -9,7 +9,7 @@ + echo + echo "Usage: $0 [--quick|--dtou|--utod]" + echo +- echo "Where platform is one of: bcc32, beos, djgpp, mingw, qnx, unix" ++ echo "Where platform is one of: bcc32, beos, djgpp, haiku, mingw, qnx, unix" + echo "mac, macosx, macosx-universal and watcom." + echo "The --quick parameter turns off text file conversion, --dtou converts from" + echo "DOS/Win32 format to Unix, --utod converts from Unix to DOS/Win32 format." +@@ -90,6 +90,7 @@ + "bcc32" ) proc_fix "Windows (BCC32)" "makefile.bcc" "ALLEGRO_BCC32";; + "beos" ) proc_fix "BeOS" "makefile.be" "ALLEGRO_BEOS";; + "djgpp" ) proc_fix "DOS (djgpp)" "makefile.dj" "ALLEGRO_DJGPP";; ++ "haiku" ) proc_fix "Haiku" "makefile.be" "ALLEGRO_HAIKU";; + "mingw" ) proc_fix "Windows (MinGW)" "makefile.mgw" "ALLEGRO_MINGW32";; + "mingw32" ) proc_fix "Windows (MinGW)" "makefile.mgw" "ALLEGRO_MINGW32";; + # The 'msvc' target is undocumented in the help message, but is used +diff -urN allegro-4.3.10/include/allegro/internal/aintern.h allegro-4.3.10-haiku/include/allegro/internal/aintern.h +--- allegro-4.3.10/include/allegro/internal/aintern.h 2008-10-04 20:41:30.000000000 +0000 ++++ allegro-4.3.10-haiku/include/allegro/internal/aintern.h 2008-10-04 21:01:20.000000000 +0000 +@@ -190,7 +190,7 @@ + + + #if (defined ALLEGRO_DOS) || (defined ALLEGRO_DJGPP) || (defined ALLEGRO_WATCOM) || \ +- (defined ALLEGRO_QNX) || (defined ALLEGRO_BEOS) ++ (defined ALLEGRO_QNX) || (defined ALLEGRO_BEOS) || (defined ALLEGRO_HAIKU) + + AL_ARRAY(char *, _pckeys_names); + +diff -urN allegro-4.3.10/include/allegro/internal/alconfig.h allegro-4.3.10-haiku/include/allegro/internal/alconfig.h +--- allegro-4.3.10/include/allegro/internal/alconfig.h 2008-10-04 20:41:30.000000000 +0000 ++++ allegro-4.3.10-haiku/include/allegro/internal/alconfig.h 2008-10-04 21:01:20.000000000 +0000 +@@ -48,6 +48,8 @@ + #include "allegro/platform/albcc32.h" + #elif defined ALLEGRO_MSVC + #include "allegro/platform/almsvc.h" ++ #elif defined ALLEGRO_HAIKU ++ #include "allegro/platform/albecfg.h" + #elif defined ALLEGRO_BEOS + #include "allegro/platform/albecfg.h" + #elif defined ALLEGRO_MPW +diff -urN allegro-4.3.10/include/allegro/platform/albecfg.h allegro-4.3.10-haiku/include/allegro/platform/albecfg.h +--- allegro-4.3.10/include/allegro/platform/albecfg.h 2008-10-04 20:41:30.000000000 +0000 ++++ allegro-4.3.10-haiku/include/allegro/platform/albecfg.h 2008-10-04 21:01:20.000000000 +0000 +@@ -31,7 +31,13 @@ + #define ALLEGRO_HAVE_SYS_TIME_H 1 + + /* describe this platform */ +-#define ALLEGRO_PLATFORM_STR "BeOS" ++#if defined __BEOS__ && !defined __HAIKU__ ++ #define ALLEGRO_PLATFORM_STR "BeOS" ++#endif ++#if defined __HAIKU__ ++ #define ALLEGRO_PLATFORM_STR "Haiku" ++ #define ALLEGRO_HAVE_LIBPTHREAD 1 ++#endif + #define ALLEGRO_LITTLE_ENDIAN + #define ALLEGRO_CONSOLE_OK + #define ALLEGRO_USE_CONSTRUCTOR +diff -urN allegro-4.3.10/include/allegro/platform/albeos.h allegro-4.3.10-haiku/include/allegro/platform/albeos.h +--- allegro-4.3.10/include/allegro/platform/albeos.h 2008-10-04 20:41:30.000000000 +0000 ++++ allegro-4.3.10-haiku/include/allegro/platform/albeos.h 2008-10-04 21:01:20.000000000 +0000 +@@ -74,3 +74,7 @@ + #define JOYSTICK_DRIVER_BEOS \ + { JOYSTICK_BEOS, &joystick_beos, TRUE }, + ++#if defined __HAIKU__ ++#define TIMERDRV_UNIX_PTHREADS AL_ID('P','T','H','R') ++#endif ++ +diff -urN allegro-4.3.10/include/allegro/platform/alunixac.hin allegro-4.3.10-haiku/include/allegro/platform/alunixac.hin +--- allegro-4.3.10/include/allegro/platform/alunixac.hin 2008-10-04 20:41:30.000000000 +0000 ++++ allegro-4.3.10-haiku/include/allegro/platform/alunixac.hin 2008-10-04 21:01:20.000000000 +0000 +@@ -68,7 +68,7 @@ + #undef ALLEGRO_DARWIN + + /* Define if you have the pthread library. */ +-#undef ALLEGRO_HAVE_LIBPTHREAD ++/* #undef ALLEGRO_HAVE_LIBPTHREAD */ + + /* Define if constructor attribute is supported. */ + #undef ALLEGRO_USE_CONSTRUCTOR +@@ -159,7 +159,7 @@ + + /* Define as the return type of signal handlers (`int' or `void'). */ + /* TODO: rename this */ +-#undef RETSIGTYPE ++/* #undef RETSIGTYPE */ + + /* Define to empty if `const' does not conform to ANSI C. */ + #undef const +diff -urN allegro-4.3.10/include/allegro/system.h allegro-4.3.10-haiku/include/allegro/system.h +--- allegro-4.3.10/include/allegro/system.h 2008-10-04 20:41:30.000000000 +0000 ++++ allegro-4.3.10-haiku/include/allegro/system.h 2008-10-04 21:01:20.000000000 +0000 +@@ -61,6 +61,7 @@ + #define OSTYPE_QNX AL_ID('Q','N','X',' ') + #define OSTYPE_UNIX AL_ID('U','N','I','X') + #define OSTYPE_BEOS AL_ID('B','E','O','S') ++#define OSTYPE_HAIKU AL_ID('H','A','I','K') + #define OSTYPE_MACOS AL_ID('M','A','C',' ') + #define OSTYPE_MACOSX AL_ID('M','A','C','X') + +diff -urN allegro-4.3.10/makefile.all allegro-4.3.10-haiku/makefile.all +--- allegro-4.3.10/makefile.all 2008-10-04 20:41:32.000000000 +0000 ++++ allegro-4.3.10-haiku/makefile.all 2008-10-04 21:01:20.000000000 +0000 +@@ -8,7 +8,7 @@ + # DEBUGMODE=2 selects a build intended to debug Allegro itself. + # PROFILEMODE=1 selects a profiling build. + # WARNMODE=1 selects strict compiler warnings. +-# STATICLINK=1 use static linking (MinGW32, MSVC, BeOS). ++# STATICLINK=1 use static linking (MinGW32, MSVC, BeOS, Haiku). + # STATICRUNTIME=1 link to a static C runtime library (/MT) (MSVC) + # TARGET_ARCH_COMPAT optimize for the given processor while preserving backwards + # compatibility with older processors (GCC-based platforms). +@@ -132,7 +132,7 @@ + # XXX this is duplicated in makefile.in + DOCBASEFILES = ahack changes faq mistakes help thanks allegro const abi api packfile \ + readme makedoc datafile grabber dat dat2c dat2s license addons targets +-DOCBUILDFILES = bcc32 beos darwin djgpp dmc linux macosx mingw32 msvc qnx unix watcom ++DOCBUILDFILES = bcc32 beos darwin djgpp dmc haiku linux macosx mingw32 msvc qnx unix watcom + DOCTXTBUILDFILES = $(addprefix docs/build/,$(addsuffix .txt,$(DOCBUILDFILES))) + + DOCS = $(addprefix docs/txt/,$(addsuffix .txt,$(filter-out changes thanks readme, $(DOCBASEFILES)))) +diff -urN allegro-4.3.10/makefile.be allegro-4.3.10-haiku/makefile.be +--- allegro-4.3.10/makefile.be 2008-10-04 20:41:32.000000000 +0000 ++++ allegro-4.3.10-haiku/makefile.be 2008-10-04 21:01:20.000000000 +0000 +@@ -10,7 +10,15 @@ + + # -------- define some variables that the primary makefile will use -------- + ++ ++ifeq ($(OS),BeOS) + PLATFORM = BeOS ++endif ++ ++ifeq ($(OS),Haiku) ++PLATFORM = Haiku ++endif ++ + CC = gcc + EXE = + OBJ = .o +@@ -123,7 +131,13 @@ + + OBJECT_LIST = $(COMMON_OBJECTS) $(MY_OBJECTS) $(basename $(notdir $(ALLEGRO_SRC_BEOS_FILES))) + ++ifeq ($(OS),BeOS) + LIBRARIES = -lbe -lgame -ldevice -lmidi -lmedia -lnet ++endif ++ ++ifeq ($(OS),Haiku) ++LIBRARIES = -lbe -lgame -ldevice -lmidi -lmedia -lnetwork ++endif + + PROGRAMS = bfixicon + +@@ -167,7 +181,14 @@ + sed -e "s/@LIBS@/$(LIBRARIES)/" temp2 > temp + sed -e "s/include/headers/" temp >temp2 + sed -e "s/ -l\$${lib_type}_unsharable//" temp2 >temp ++ ++ifeq ($(OS),BeOS) + sed -e "s/libdirs=-L\$${exec_prefix}\/lib/libdirs=\"-L\$${exec_prefix}\/lib\/x86 -L\/boot\/home\/config\/lib\"/" temp >/bin/allegro-config ++endif ++ifeq ($(OS),Haiku) ++ sed -e "s/libdirs=-L\$${exec_prefix}\/lib/libdirs=\"-L\$${exec_prefix}\/lib\/x86 -L\/boot\/common\/lib\"/" temp >/bin/allegro-config ++endif ++ + rm -f temp temp2 + chmod a+x /bin/allegro-config + +diff -urN allegro-4.3.10/misc/mkunixdists.sh allegro-4.3.10-haiku/misc/mkunixdists.sh +--- allegro-4.3.10/misc/mkunixdists.sh 2008-10-04 20:41:30.000000000 +0000 ++++ allegro-4.3.10-haiku/misc/mkunixdists.sh 2008-10-04 21:01:20.000000000 +0000 +@@ -73,9 +73,9 @@ + # Hack'n'slash + echo "Stripping to form end-user distribution" + (cd $dir/$basename && { +- (cd src && rm -rf beos qnx dos mac ppc win) +- (cd obj && rm -rf bcc32 beos qnx djgpp mingw32 msvc watcom) +- (cd lib && rm -rf bcc32 beos qnx djgpp mingw32 msvc watcom) ++ (cd src && rm -rf beos haiku qnx dos mac ppc win) ++ (cd obj && rm -rf bcc32 beos haiku qnx djgpp mingw32 msvc watcom) ++ (cd lib && rm -rf bcc32 beos haiku qnx djgpp mingw32 msvc watcom) + (cd include && rm -f bealleg.h qnxalleg.h macalleg.h winalleg.h) + (cd misc && rm -f cmplog.pl dllsyms.lst findtext.sh fixpatch.sh fixver.sh) + (cd misc && rm -f allegro-config-qnx.sh zipup.sh zipwin.sh *.bat *.c) +@@ -94,8 +94,8 @@ + (cd addons/jpgalleg && rm -f makefile.be makefile.mgw makefile.dj) + (cd addons/jpgalleg && rm -f makefile.osx makefile.vc fix.bat readme.txt) + (cd addons/jpgalleg/misc && rm -f fixver.sh runner.c) +- (cd addons/jpgalleg/lib && rm -rf beos djgpp macosx mingw32 msvc) +- (cd addons/jpgalleg/obj && rm -rf beos djgpp macosx mingw32 msvc) ++ (cd addons/jpgalleg/lib && rm -rf beos djgpp haiku macosx mingw32 msvc) ++ (cd addons/jpgalleg/obj && rm -rf beos djgpp haiku macosx mingw32 msvc) + + # logg addon + (cd addons/logg && rm -f Makefile.mingw play_ogg.c stream_ogg.c fix.bat) +diff -urN allegro-4.3.10/misc/zipup.sh allegro-4.3.10-haiku/misc/zipup.sh +--- allegro-4.3.10/misc/zipup.sh 2008-10-04 20:41:30.000000000 +0000 ++++ allegro-4.3.10-haiku/misc/zipup.sh 2008-10-04 21:01:20.000000000 +0000 +@@ -125,6 +125,12 @@ + + make depend UNIX_TOOLS=1 CC=gcc + ++# generate dependencies for Haiku ++echo "Generating Haiku dependencies..." ++ ++./fix.sh haiku --quick ++ ++make depend UNIX_TOOLS=1 CC=gcc + + # generate dependencies for QNX + echo "Generating QNX dependencies..." +@@ -164,7 +170,7 @@ + for base in abi ahack allegro const faq help mistakes; do + ./_makedoc.exe -ascii docs/txt/$base.txt docs/src/$base._tx + done +-for base in bcc32 beos darwin djgpp linux macosx mingw32 msvc qnx unix watcom; do ++for base in bcc32 beos darwin djgpp haiku linux macosx mingw32 msvc qnx unix watcom; do + ./_makedoc.exe -ascii docs/build/$base.txt docs/src/build/$base._tx + done + +diff -urN allegro-4.3.10/setup/keyconf.c allegro-4.3.10-haiku/setup/keyconf.c +--- allegro-4.3.10/setup/keyconf.c 2008-10-04 20:41:31.000000000 +0000 ++++ allegro-4.3.10-haiku/setup/keyconf.c 2008-10-04 21:01:20.000000000 +0000 +@@ -25,8 +25,8 @@ + + + /* The code can't link on platforms that don't use src/misc/pckeys.c (everything +- * but DOS, QNX, BEOS). */ +-#if (defined ALLEGRO_DOS) || (defined ALLEGRO_QNX) || (defined ALLEGRO_BEOS) ++ * but DOS, QNX, BEOS, HAIKU). */ ++#if (defined ALLEGRO_DOS) || (defined ALLEGRO_QNX) || (defined ALLEGRO_BEOS) || (defined ALLEGRO_HAIKU) + + + char *ascii_name[32] = +diff -urN allegro-4.3.10/src/beos/baccel.cpp allegro-4.3.10-haiku/src/beos/baccel.cpp +--- allegro-4.3.10/src/beos/baccel.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/baccel.cpp 2008-10-04 21:01:20.000000000 +0000 +@@ -20,7 +20,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/beos/bdispsw.cpp allegro-4.3.10-haiku/src/beos/bdispsw.cpp +--- allegro-4.3.10/src/beos/bdispsw.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bdispsw.cpp 2008-10-04 21:01:20.000000000 +0000 +@@ -19,7 +19,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/beos/bdwindow.cpp allegro-4.3.10-haiku/src/beos/bdwindow.cpp +--- allegro-4.3.10/src/beos/bdwindow.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bdwindow.cpp 2008-10-04 21:01:20.000000000 +0000 +@@ -21,7 +21,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/beos/bgfx.c allegro-4.3.10-haiku/src/beos/bgfx.c +--- allegro-4.3.10/src/beos/bgfx.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bgfx.c 2008-10-04 21:01:20.000000000 +0000 +@@ -19,9 +19,9 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + + +diff -urN allegro-4.3.10/src/beos/bgfxapi.cpp allegro-4.3.10-haiku/src/beos/bgfxapi.cpp +--- allegro-4.3.10/src/beos/bgfxapi.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bgfxapi.cpp 2008-10-04 21:01:20.000000000 +0000 +@@ -19,7 +19,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/beos/bgfxdrv.c allegro-4.3.10-haiku/src/beos/bgfxdrv.c +--- allegro-4.3.10/src/beos/bgfxdrv.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bgfxdrv.c 2008-10-04 21:01:20.000000000 +0000 +@@ -18,9 +18,9 @@ + #include "allegro.h" + #include "allegro/internal/aintern.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + BEGIN_GFX_DRIVER_LIST + GFX_DRIVER_BEOS +diff -urN allegro-4.3.10/src/beos/bjoy.c allegro-4.3.10-haiku/src/beos/bjoy.c +--- allegro-4.3.10/src/beos/bjoy.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bjoy.c 2008-10-04 21:01:20.000000000 +0000 +@@ -19,7 +19,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/beos/bjoyapi.cpp allegro-4.3.10-haiku/src/beos/bjoyapi.cpp +--- allegro-4.3.10/src/beos/bjoyapi.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bjoyapi.cpp 2008-10-04 21:01:20.000000000 +0000 +@@ -19,9 +19,9 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + static BJoystick *be_joy = NULL; + static int32 num_devices, num_axes, num_hats, num_buttons; +diff -urN allegro-4.3.10/src/beos/bjoydrv.c allegro-4.3.10-haiku/src/beos/bjoydrv.c +--- allegro-4.3.10/src/beos/bjoydrv.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bjoydrv.c 2008-10-04 21:01:20.000000000 +0000 +@@ -18,9 +18,9 @@ + #include "allegro.h" + #include "allegro/internal/aintern.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + BEGIN_JOYSTICK_DRIVER_LIST + JOYSTICK_DRIVER_BEOS +diff -urN allegro-4.3.10/src/beos/bkey.c allegro-4.3.10-haiku/src/beos/bkey.c +--- allegro-4.3.10/src/beos/bkey.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bkey.c 2008-10-04 21:01:20.000000000 +0000 +@@ -19,9 +19,9 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + + +diff -urN allegro-4.3.10/src/beos/bkeyapi.cpp allegro-4.3.10-haiku/src/beos/bkeyapi.cpp +--- allegro-4.3.10/src/beos/bkeyapi.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bkeyapi.cpp 2008-10-04 21:01:20.000000000 +0000 +@@ -22,9 +22,9 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + #define KEY_ID_PC101 0 // the docs say it should be 0x83ab, but they lie + +diff -urN allegro-4.3.10/src/beos/bkeydrv.c allegro-4.3.10-haiku/src/beos/bkeydrv.c +--- allegro-4.3.10/src/beos/bkeydrv.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bkeydrv.c 2008-10-04 21:01:20.000000000 +0000 +@@ -18,9 +18,9 @@ + #include "allegro.h" + #include "allegro/internal/aintern.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + _DRIVER_INFO _keyboard_driver_list[] = + { +diff -urN allegro-4.3.10/src/beos/bmidi.c allegro-4.3.10-haiku/src/beos/bmidi.c +--- allegro-4.3.10/src/beos/bmidi.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bmidi.c 2008-10-04 21:01:20.000000000 +0000 +@@ -19,9 +19,9 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + MIDI_DRIVER midi_beos = + { +diff -urN allegro-4.3.10/src/beos/bmidiapi.cpp allegro-4.3.10-haiku/src/beos/bmidiapi.cpp +--- allegro-4.3.10/src/beos/bmidiapi.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bmidiapi.cpp 2008-10-04 21:01:20.000000000 +0000 +@@ -19,9 +19,9 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + + BMidiSynth *_be_midisynth = NULL; +diff -urN allegro-4.3.10/src/beos/bmididrv.c allegro-4.3.10-haiku/src/beos/bmididrv.c +--- allegro-4.3.10/src/beos/bmididrv.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bmididrv.c 2008-10-04 21:01:20.000000000 +0000 +@@ -18,9 +18,9 @@ + #include "allegro.h" + #include "allegro/internal/aintern.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + BEGIN_MIDI_DRIVER_LIST + MIDI_DRIVER_BEOS +diff -urN allegro-4.3.10/src/beos/bmousapi.cpp allegro-4.3.10-haiku/src/beos/bmousapi.cpp +--- allegro-4.3.10/src/beos/bmousapi.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bmousapi.cpp 2008-10-04 21:01:20.000000000 +0000 +@@ -23,9 +23,9 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + #define MOUSE_THREAD_NAME "mouse driver" + #define MOUSE_THREAD_PRIORITY 60 +diff -urN allegro-4.3.10/src/beos/bmousdrv.c allegro-4.3.10-haiku/src/beos/bmousdrv.c +--- allegro-4.3.10/src/beos/bmousdrv.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bmousdrv.c 2008-10-04 21:01:20.000000000 +0000 +@@ -18,9 +18,9 @@ + #include "allegro.h" + #include "allegro/internal/aintern.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + + +diff -urN allegro-4.3.10/src/beos/bmouse.c allegro-4.3.10-haiku/src/beos/bmouse.c +--- allegro-4.3.10/src/beos/bmouse.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bmouse.c 2008-10-04 21:01:20.000000000 +0000 +@@ -19,9 +19,9 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + + +diff -urN allegro-4.3.10/src/beos/boverlay.cpp allegro-4.3.10-haiku/src/beos/boverlay.cpp +--- allegro-4.3.10/src/beos/boverlay.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/boverlay.cpp 2008-10-04 21:01:20.000000000 +0000 +@@ -19,7 +19,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/beos/bsnd.c allegro-4.3.10-haiku/src/beos/bsnd.c +--- allegro-4.3.10/src/beos/bsnd.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bsnd.c 2008-10-04 21:01:21.000000000 +0000 +@@ -19,9 +19,9 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + DIGI_DRIVER digi_beos = + { +diff -urN allegro-4.3.10/src/beos/bsndapi.cpp allegro-4.3.10-haiku/src/beos/bsndapi.cpp +--- allegro-4.3.10/src/beos/bsndapi.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bsndapi.cpp 2008-10-04 21:01:21.000000000 +0000 +@@ -20,7 +20,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/beos/bsnddrv.c allegro-4.3.10-haiku/src/beos/bsnddrv.c +--- allegro-4.3.10/src/beos/bsnddrv.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bsnddrv.c 2008-10-04 21:01:21.000000000 +0000 +@@ -19,9 +19,9 @@ + #include "allegro/internal/aintern.h" + + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + BEGIN_DIGI_DRIVER_LIST + DIGI_DRIVER_BEOS +diff -urN allegro-4.3.10/src/beos/bsysapi.cpp allegro-4.3.10-haiku/src/beos/bsysapi.cpp +--- allegro-4.3.10/src/beos/bsysapi.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bsysapi.cpp 2008-10-04 21:01:21.000000000 +0000 +@@ -27,9 +27,9 @@ + #include + #endif + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + #define SYS_THREAD_PRIORITY B_NORMAL_PRIORITY + #define SYS_THREAD_NAME "system driver" +diff -urN allegro-4.3.10/src/beos/bsysdrv.c allegro-4.3.10-haiku/src/beos/bsysdrv.c +--- allegro-4.3.10/src/beos/bsysdrv.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bsysdrv.c 2008-10-04 21:01:21.000000000 +0000 +@@ -18,9 +18,9 @@ + #include "allegro.h" + #include "allegro/internal/aintern.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + _DRIVER_INFO _system_driver_list[] = + { +diff -urN allegro-4.3.10/src/beos/bsystem.c allegro-4.3.10-haiku/src/beos/bsystem.c +--- allegro-4.3.10/src/beos/bsystem.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bsystem.c 2008-10-04 21:01:21.000000000 +0000 +@@ -19,11 +19,9 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif +- +- ++#endif + + SYSTEM_DRIVER system_beos = { + SYSTEM_BEOS, +diff -urN allegro-4.3.10/src/beos/btimeapi.cpp allegro-4.3.10-haiku/src/beos/btimeapi.cpp +--- allegro-4.3.10/src/beos/btimeapi.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/btimeapi.cpp 2008-10-04 21:01:21.000000000 +0000 +@@ -19,7 +19,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/beos/btimedrv.c allegro-4.3.10-haiku/src/beos/btimedrv.c +--- allegro-4.3.10/src/beos/btimedrv.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/btimedrv.c 2008-10-04 21:01:21.000000000 +0000 +@@ -18,9 +18,9 @@ + #include "allegro.h" + #include "allegro/internal/aintern.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile +-#endif ++#endif + + _DRIVER_INFO _timer_driver_list[] = { + {TIMER_BEOS, &timer_beos, TRUE}, +diff -urN allegro-4.3.10/src/beos/btimer.c allegro-4.3.10-haiku/src/beos/btimer.c +--- allegro-4.3.10/src/beos/btimer.c 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/btimer.c 2008-10-04 21:01:21.000000000 +0000 +@@ -19,7 +19,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/beos/bwindow.cpp allegro-4.3.10-haiku/src/beos/bwindow.cpp +--- allegro-4.3.10/src/beos/bwindow.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bwindow.cpp 2008-10-04 21:01:21.000000000 +0000 +@@ -19,7 +19,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/beos/bwscreen.cpp allegro-4.3.10-haiku/src/beos/bwscreen.cpp +--- allegro-4.3.10/src/beos/bwscreen.cpp 2008-10-04 20:40:55.000000000 +0000 ++++ allegro-4.3.10-haiku/src/beos/bwscreen.cpp 2008-10-04 21:01:21.000000000 +0000 +@@ -19,7 +19,7 @@ + #include "allegro/internal/aintern.h" + #include "allegro/platform/aintbeos.h" + +-#ifndef ALLEGRO_BEOS ++#if !defined ALLEGRO_BEOS && !defined ALLEGRO_HAIKU + #error something is wrong with the makefile + #endif + +diff -urN allegro-4.3.10/src/i386/asmdefs.inc allegro-4.3.10-haiku/src/i386/asmdefs.inc +--- allegro-4.3.10/src/i386/asmdefs.inc 2008-10-04 20:40:57.000000000 +0000 ++++ allegro-4.3.10-haiku/src/i386/asmdefs.inc 2008-10-04 21:01:21.000000000 +0000 +@@ -31,6 +31,8 @@ + #include "obj/msvc/asmdef.inc" + #elif defined ALLEGRO_WATCOM + #include "obj/watcom/asmdef.inc" ++#elif defined ALLEGRO_HAIKU ++ #include "obj/beos/asmdef.inc" + #elif defined ALLEGRO_BEOS + #include "obj/beos/asmdef.inc" + #elif defined ALLEGRO_QNX +diff -urN allegro-4.3.10/src/midi.c allegro-4.3.10-haiku/src/midi.c +--- allegro-4.3.10/src/midi.c 2008-10-04 20:41:01.000000000 +0000 ++++ allegro-4.3.10-haiku/src/midi.c 2008-10-04 21:01:21.000000000 +0000 +@@ -1122,7 +1122,7 @@ + running_status = 0; + + while (p < end) { /* work through data stream */ +-#ifdef ALLEGRO_BEOS ++#if defined ALLEGRO_BEOS || defined ALLEGRO_HAIKU + /* Is there a bug in this routine, or in gcc under BeOS/x86? --PW */ + { int i; for (i=1; i; i--); } + #endif +diff -urN allegro-4.3.10/tools/dat2c.c allegro-4.3.10-haiku/tools/dat2c.c +--- allegro-4.3.10/tools/dat2c.c 2008-10-04 20:41:07.000000000 +0000 ++++ allegro-4.3.10-haiku/tools/dat2c.c 2008-10-04 21:01:21.000000000 +0000 +@@ -342,7 +342,7 @@ + } + + if (dat2c->lformat == lineformat_default) +-#if (defined ALLEGRO_UNIX || defined ALLEGRO_QNX || defined ALLEGRO_BEOS || defined ALLEGRO_MACOSX) ++#if (defined ALLEGRO_UNIX || defined ALLEGRO_QNX || defined ALLEGRO_BEOS || defined ALLEGRO_HAIKU || defined ALLEGRO_MACOSX) + dat2c->lformat = lineformat_unix; + #elif (defined ALLEGRO_WINDOWS || defined ALLEGRO_DOS) + dat2c->lformat = lineformat_dos; +diff -urN allegro-4.3.10/tools/datedit.c allegro-4.3.10-haiku/tools/datedit.c +--- allegro-4.3.10/tools/datedit.c 2008-10-04 20:41:07.000000000 +0000 ++++ allegro-4.3.10-haiku/tools/datedit.c 2008-10-04 21:01:21.000000000 +0000 +@@ -121,6 +121,8 @@ + #include "obj/dmc/plugins.h" + #elif defined ALLEGRO_BEOS + #include "obj/beos/plugins.h" ++ #elif defined ALLEGRO_HAIKU ++ #include "obj/beos/plugins.h" + #elif defined ALLEGRO_BCC32 + #include "obj/bcc32/plugins.h" + #elif defined ALLEGRO_MPW +diff -urN allegro-4.3.10/tools/grabber.c allegro-4.3.10-haiku/tools/grabber.c +--- allegro-4.3.10/tools/grabber.c 2008-10-04 20:41:07.000000000 +0000 ++++ allegro-4.3.10-haiku/tools/grabber.c 2008-10-04 21:01:21.000000000 +0000 +@@ -3132,6 +3132,7 @@ + case OSTYPE_QNX: s = "QNX"; break; + case OSTYPE_UNIX: s = "Unix"; break; + case OSTYPE_BEOS: s = "BeOS"; break; ++ case OSTYPE_HAIKU: s = "Haiku"; break; + case OSTYPE_MACOS: s = "MacOS"; break; + case OSTYPE_MACOSX: s = "MacOS X"; break; + default: s = "Unknown"; break;