diff --git a/3rdp/build/js-haiku.patch b/3rdp/build/js-haiku.patch new file mode 100644 index 0000000000000000000000000000000000000000..c3c289f82769e958cac96a23a5ea671f9be221e4 --- /dev/null +++ b/3rdp/build/js-haiku.patch @@ -0,0 +1,68 @@ +From 6810ba3a550c5559ccbdbdda846ea7cbfa04bcca Mon Sep 17 00:00:00 2001 +From: Jerome Duval <jerome.duval@gmail.com> +Date: Fri, 6 Jun 2014 08:40:44 +0000 +Subject: Haiku patch + + +diff --git a/js/src/Makefile.in b/js/src/Makefile.in +index a85e055..a994d00 100644 +--- a/js/src/Makefile.in ++++ b/js/src/Makefile.in +@@ -659,7 +659,7 @@ LIBS += C:/Program\ Files/Intel/VTune/Analyzer/Lib/VtuneApi.lib + endif + + # BeOS and HP-UX do not require the extra linking of "-lm" +-ifeq (,$(filter BeOS HP-UX WINNT WINCE OpenVMS OS2,$(OS_ARCH))) ++ifeq (,$(filter BeOS HP-UX WINNT WINCE OpenVMS OS2 Haiku,$(OS_ARCH))) + EXTRA_LIBS += -lm + endif + +diff --git a/js/src/jsnativestack.cpp b/js/src/jsnativestack.cpp +index 0366d25..590e5d0 100644 +--- a/js/src/jsnativestack.cpp ++++ b/js/src/jsnativestack.cpp +@@ -184,6 +184,18 @@ GetNativeStackBaseImpl() + return static_cast<char*>(st.ss_sp) + st.ss_size; + } + ++#elif defined(__HAIKU__) ++ ++#include <OS.h> ++ ++void * ++GetNativeStackBaseImpl() ++{ ++ thread_info info; ++ get_thread_info(find_thread(NULL), &info); ++ return info.stack_base; ++} ++ + #else /* XP_UNIX */ + + void * +-- +1.8.3.4 + + +From 97379beb600f8eca868e0c9e605085e1264097a2 Mon Sep 17 00:00:00 2001 +From: Jerome Duval <jerome.duval@gmail.com> +Date: Fri, 6 Jun 2014 11:48:10 +0000 +Subject: nsinstall patch + + +diff --git a/js/src/config/nsinstall.c b/js/src/config/nsinstall.c +index 355a092..008b0f1 100644 +--- a/js/src/config/nsinstall.c ++++ b/js/src/config/nsinstall.c +@@ -114,7 +114,7 @@ mkdirs(char *path, mode_t mode) + for (cp = strrchr(path, '/'); cp && cp != path && *(cp - 1) == '/'; cp--); + if (cp && cp != path) { + *cp = '\0'; +- if ((lstat(path, &sb) < 0 || !S_ISDIR(sb.st_mode)) && ++ if ((stat(path, &sb) < 0 || !S_ISDIR(sb.st_mode)) && + mkdirs(path, mode) < 0) { + return -1; + } +-- +1.8.3.4 +