diff -up gettext-0.18.1.1/gettext-runtime/libasprintf/configure.ac.orig gettext-0.18.1.1/gettext-runtime/libasprintf/configure.ac
--- gettext-0.18.1.1/gettext-runtime/libasprintf/configure.ac.orig	2010-06-06 06:49:57.058720256 -0600
+++ gettext-0.18.1.1/gettext-runtime/libasprintf/configure.ac	2012-05-04 20:40:00.847511552 -0600
@@ -44,7 +44,7 @@ LT_INIT([win32-dll])
 case "$host_os" in
   # On Cygwin, without -no-undefined, a warning is emitted and only a static
   # library is built.
-  beos* | mingw* | cygwin*) LTNOUNDEF='-no-undefined' ;;
+  beos* | haiku* | mingw* | cygwin*) LTNOUNDEF='-no-undefined' ;;
   *) LTNOUNDEF='' ;;
 esac
 AC_SUBST([LTNOUNDEF])
diff -up gettext-0.18.1.1/gettext-tools/configure.ac.orig gettext-0.18.1.1/gettext-tools/configure.ac
--- gettext-0.18.1.1/gettext-tools/configure.ac.orig	2010-06-06 14:04:04.007602176 -0600
+++ gettext-0.18.1.1/gettext-tools/configure.ac	2012-05-04 20:40:00.860880896 -0600
@@ -100,7 +100,7 @@ LT_LANG([Windows Resource])
 case "$host_os" in
   # On Cygwin, without -no-undefined, a warning is emitted and only a static
   # library is built.
-  beos* | mingw* | cygwin*) LTNOUNDEF='-no-undefined' ;;
+  beos* | haiku* | mingw* | cygwin*) LTNOUNDEF='-no-undefined' ;;
   *) LTNOUNDEF='' ;;
 esac
 AC_SUBST([LTNOUNDEF])
diff -up gettext-0.18.1.1/gettext-tools/gnulib-lib/binary-io.h.orig gettext-0.18.1.1/gettext-tools/gnulib-lib/binary-io.h
--- gettext-0.18.1.1/gettext-tools/gnulib-lib/binary-io.h.orig	2012-05-04 21:23:18.533200896 -0600
+++ gettext-0.18.1.1/gettext-tools/gnulib-lib/binary-io.h	2012-05-04 21:23:54.882900992 -0600
@@ -31,11 +31,6 @@
 # define O_BINARY _O_BINARY
 # define O_TEXT _O_TEXT
 #endif
-#if defined __BEOS__ || defined __HAIKU__
-  /* BeOS 5 and Haiku have O_BINARY and O_TEXT, but they have no effect.  */
-# undef O_BINARY
-# undef O_TEXT
-#endif
 
 /* SET_BINARY (fd);
    changes the file descriptor fd to perform binary I/O.  */
diff -up gettext-0.18.1.1/gettext-tools/gnulib-lib/pipe2.c.orig gettext-0.18.1.1/gettext-tools/gnulib-lib/pipe2.c
