diff -urN php-5.3.1/configure.in php-5.3.1-haiku/configure.in
--- php-5.3.1/configure.in	2009-11-18 19:43:33.000000000 +0000
+++ php-5.3.1-haiku/configure.in	2009-11-28 07:39:12.000000000 +0000
@@ -392,6 +392,11 @@
 PHP_CHECK_FUNC(gethostbyaddr, nsl)
 PHP_CHECK_FUNC(yp_get_default_domain, nsl)
 
+PHP_CHECK_FUNC(socket, network)
+PHP_CHECK_FUNC(socketpair, network)
+PHP_CHECK_FUNC(gethostname, network)
+PHP_CHECK_FUNC(gethostbyaddr, network)
+
 PHP_CHECK_FUNC(dlopen, dl)
 if test "$ac_cv_func_dlopen" = "yes"; then
   AC_DEFINE(HAVE_LIBDL, 1, [ ])
diff -urN php-5.3.1/ext/standard/microtime.c php-5.3.1-haiku/ext/standard/microtime.c
--- php-5.3.1/ext/standard/microtime.c	2009-05-21 14:21:40.000000000 +0000
+++ php-5.3.1-haiku/ext/standard/microtime.c	2009-11-28 07:39:20.000000000 +0000
@@ -131,7 +131,7 @@
 	array_init(return_value);
 #define PHP_RUSAGE_PARA(a) \
 		add_assoc_long(return_value, #a, usg.a)
-#if !defined( _OSD_POSIX) && !defined(__BEOS__) /* BS2000 has only a few fields in the rusage struct */
+#if !defined( _OSD_POSIX) && !defined(__BEOS__) && !defined(__HAIKU__)/* BS2000 has only a few fields in the rusage struct */
 	PHP_RUSAGE_PARA(ru_oublock);
 	PHP_RUSAGE_PARA(ru_inblock);
 	PHP_RUSAGE_PARA(ru_msgsnd);
