diff -ur graphviz-2.24.0/config.h.in graphviz-2.24.0-haiku/config.h.in
--- graphviz-2.24.0/config.h.in	2009-06-16 17:24:58.000000000 -0600
+++ graphviz-2.24.0-haiku/config.h.in	2009-11-19 00:21:13.000000000 -0700
@@ -54,6 +54,9 @@
 /* Define to 1 if you have the <crt_externs.h> header file. */
 #undef HAVE_CRT_EXTERNS_H
 
+/* Define to 1 if you have the <sysexits.h> header file. */
+#undef HAVE_SYSEXITS_H
+
 /* Define to 1 if you have the `deflateBound' function. */
 #undef HAVE_DEFLATEBOUND
 
diff -ur graphviz-2.24.0/configure.ac graphviz-2.24.0-haiku/configure.ac
--- graphviz-2.24.0/configure.ac	2009-06-16 17:24:18.000000000 -0600
+++ graphviz-2.24.0-haiku/configure.ac	2009-11-19 00:21:20.000000000 -0700
@@ -111,6 +111,7 @@
 CYGWIN=no
 MINGW32=no
 DARWIN9=no
+HAIKU=no
 case "${host_os}" in
   *uwin* )
 	UWIN=yes
@@ -160,6 +161,16 @@
 	BROWSER="open"
 	AC_DEFINE_UNQUOTED(DARWIN_DYLIB,"$DARWIN_DYLIB",[Define for Darwin-style shared library names.])
 	;;
+  *haiku* )
+	HAIKU=yes
+	HAIKU_SYSTEM_FONTPATH=`finddir B_SYSTEM_FONTS_DIRECTORY`
+	HAIKU_COMMON_FONTPATH=`finddir B_COMMON_FONTS_DIRECTORY`
+	HAIKU_USER_FONTPATH=`finddir B_USER_FONTS_DIRECTORY`
+	DEFAULT_FONTPATH="$HAIKU_SYSTEM_FONTPATH:$HAIKU_SYSTEM_FONTPATH/ttfonts:$HAIKU_SYSTEM_FONTPATH/psfonts:$HAIKU_COMMON_FONTPATH:$HAIKU_COMMON_FONTPATH/ttfonts:$HAIKU_COMMON_FONTPATH/psfonts:$HAIKU_USER_FONTPATH:$HAIKU_USER_FONTPATH/ttfonts:$HAIKU_USER_FONTPATH/psfonts"
+	PATHSEPARATOR=":"
+        NO_POSTSCRIPT_ALIAS=1
+	BROWSER="open"
+	;;
   * ) # This sucks!  Whatever happened to standards for file system layout?
 	DEFAULT_FONTPATH="/usr/share/fonts/default/Type1:/usr/X11R6/lib/X11/fonts/TrueType:/usr/X11R6/lib/X11/fonts/truetype:/usr/X11R6/lib/X11/fonts/TTF:/usr/share/fonts/TrueType:/usr/share/fonts/truetype:/usr/openwin/lib/X11/fonts/TrueType:/usr/X11R6/lib/X11/fonts/Type1:/usr/common/share/fonts/ttf";
 	PATHSEPARATOR=":"
@@ -364,7 +375,7 @@
 	errno.h time.h unistd.h fenv.h string.h strings.h inttypes.h setjmp.h \
 	sys/time.h sys/times.h sys/types.h sys/select.h fpu_control.h \
 	sys/fpu.h sys/socket.h sys/stat.h sys/mman.h \
-	sys/ioctl.h sys/inotify.h langinfo.h libintl.h crt_externs.h)
+	sys/ioctl.h sys/inotify.h langinfo.h libintl.h crt_externs.h sysexits.h)
 AC_HEADER_TIME
 AC_HEADER_DIRENT
 AC_HEADER_STDBOOL
diff -ur graphviz-2.24.0/contrib/diffimg/diffimg.c graphviz-2.24.0-haiku/contrib/diffimg/diffimg.c
--- graphviz-2.24.0/contrib/diffimg/diffimg.c	2009-06-02 19:10:49.000000000 -0600
+++ graphviz-2.24.0-haiku/contrib/diffimg/diffimg.c	2009-11-19 00:21:13.000000000 -0700
@@ -47,7 +47,14 @@
 #define bool int
 #define false 0
 #else
+#if defined HAVE_SYSEXITS_H
 #include <sysexits.h>
+#else
+#define EX_USAGE 64
+#define EX_DATAERR 65
+#define EX_NOINPUT 66
+#define EX_UNAVAILABLE 69
+#endif
 #endif
 #include <gd.h>
 #if defined HAVE_STDBOOL_H && ! defined __cplusplus
