Files
haikuports/dev-libs/glib/patches/glib-2.38.1.patch

90 lines
2.4 KiB
Diff

diff --git a/configure.ac b/configure.ac
index f0840d5..856fac7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -122,6 +122,10 @@ case $host in
*-*-beos*)
glib_native_beos="yes"
;;
+ *-*-haiku*)
+ glib_native_beos="yes"
+ LIBS="-lnetwork $LIBS"
+ ;;
*)
glib_native_beos="no"
;;
@@ -2062,8 +2066,8 @@ AS_IF([ test x"$have_threads" = xposix], [
# One of them does for most gcc versions and some other platforms/compilers
# too and could be considered as the canonical way to go.
case $host in
- *-*-cygwin*|*-*-darwin*)
- # skip cygwin and darwin -pthread or -pthreads test
+ *-*-cygwin*|*-*-darwin*|*-*-haiku*)
+ # skip cygwin, darwin and haiku -pthread or -pthreads test
;;
*-solaris*)
# These compiler/linker flags work with both Sun Studio and gcc
@@ -2232,7 +2236,7 @@ if test "x$G_THREAD_LIBS" = xerror; then
fi
case $host in
- *-*-beos*)
+ *-*-beos*|*-*-haiku*)
G_THREAD_LIBS="-lbe -lroot -lglib-2.0 "
G_THREAD_LIBS_EXTRA="-L\$(top_builddir_full)/.libs"
;;
@@ -3574,6 +3578,9 @@ case $host in
*-*-beos*)
glib_os="#define G_OS_BEOS"
;;
+ *-*-haiku*)
+ glib_os="#define G_OS_HAIKU"
+ ;;
*-*-cygwin*)
glib_os="#define G_OS_UNIX
#define G_PLATFORM_WIN32
diff --git a/glib/gmain.c b/glib/gmain.c
index 738e69c..564c6cf 100644
--- a/glib/gmain.c
+++ b/glib/gmain.c
@@ -73,10 +73,11 @@
#include <windows.h>
#endif /* G_OS_WIN32 */
-#ifdef G_OS_BEOS
+#if defined G_OS_BEOS || defined G_OS_HAIKU
#include <sys/socket.h>
#include <sys/wait.h>
-#endif /* G_OS_BEOS */
+#include <fcntl.h>
+#endif /* G_OS_BEOS || G_OS_HAIKU */
#include "gmain.h"
diff --git a/glib/gstdio.c b/glib/gstdio.c
index cca4ff5..6f4ae9c 100644
--- a/glib/gstdio.c
+++ b/glib/gstdio.c
@@ -46,7 +46,7 @@
#include "gstdio.h"
-#if !defined (G_OS_UNIX) && !defined (G_OS_WIN32) && !defined (G_OS_BEOS)
+#if !defined (G_OS_UNIX) && !defined (G_OS_WIN32) && !defined (G_OS_BEOS) && !defined (G_OS_HAIKU)
#error Please port this to your operating system
#endif
diff --git a/glib/gutils.c b/glib/gutils.c
index 2620cb6..0b4ec6b 100644
--- a/glib/gutils.c
+++ b/glib/gutils.c
@@ -421,7 +421,7 @@ g_find_program_in_path (const gchar *program)
}
path = g_getenv ("PATH");
-#if defined(G_OS_UNIX) || defined(G_OS_BEOS)
+#if defined(G_OS_UNIX) || defined(G_OS_BEOS) || defined(G_OS_HAIKU)
if (path == NULL)
{
/* There is no 'PATH' in the environment. The default