summaryrefslogtreecommitdiff
path: root/sdk/recipes/patches/spidermonkey
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2012-12-10 01:37:42 +0000
committerVincent Sanders <vince@kyllikki.org>2012-12-10 01:37:42 +0000
commit99bc3cfdd964685bb06a00a454db7276cf38baa3 (patch)
treeaa300107e8ad8333011277998125a56b39af2ae3 /sdk/recipes/patches/spidermonkey
parentd5454c6f9ca42956a8e0a20fa008b34fe4ed4506 (diff)
downloadtoolchains-99bc3cfdd964685bb06a00a454db7276cf38baa3.tar.gz
toolchains-99bc3cfdd964685bb06a00a454db7276cf38baa3.tar.bz2
add javascript library build to riscos sdk
Diffstat (limited to 'sdk/recipes/patches/spidermonkey')
-rw-r--r--sdk/recipes/patches/spidermonkey/arm-unknown-riscos/ExecutableAllocator.h.p11
-rw-r--r--sdk/recipes/patches/spidermonkey/arm-unknown-riscos/ExecutableAllocatorPosix.cpp.p11
-rw-r--r--sdk/recipes/patches/spidermonkey/arm-unknown-riscos/Platform.h.p32
-rw-r--r--sdk/recipes/patches/spidermonkey/arm-unknown-riscos/configure.p13
-rw-r--r--sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jscntxt.cpp.p11
-rw-r--r--sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jsgcchunk.cpp.p27
-rw-r--r--sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jsnativestack.cpp.p22
-rw-r--r--sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jstypedarray.cpp.p11
8 files changed, 138 insertions, 0 deletions
diff --git a/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/ExecutableAllocator.h.p b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/ExecutableAllocator.h.p
new file mode 100644
index 0000000..30b811f
--- /dev/null
+++ b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/ExecutableAllocator.h.p
@@ -0,0 +1,11 @@
+--- js/src/assembler/jit/ExecutableAllocator.h.orig 2012-11-08 14:37:17.000000000 +0000
++++ js/src/assembler/jit/ExecutableAllocator.h 2012-11-08 14:46:42.000000000 +0000
+@@ -370,7 +370,7 @@
+ }
+ #elif WTF_CPU_ARM_TRADITIONAL && WTF_PLATFORM_LINUX && WTF_COMPILER_RVCT
+ static __asm void cacheFlush(void* code, size_t size);
+-#elif WTF_CPU_ARM_TRADITIONAL && (WTF_PLATFORM_LINUX || WTF_PLATFORM_ANDROID) && WTF_COMPILER_GCC
++#elif WTF_CPU_ARM_TRADITIONAL && (WTF_PLATFORM_LINUX || WTF_PLATFORM_ANDROID || WTF_PLATFORM_RISCOS) && WTF_COMPILER_GCC
+ static void cacheFlush(void* code, size_t size)
+ {
+ asm volatile (
diff --git a/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/ExecutableAllocatorPosix.cpp.p b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/ExecutableAllocatorPosix.cpp.p
new file mode 100644
index 0000000..2f31400
--- /dev/null
+++ b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/ExecutableAllocatorPosix.cpp.p
@@ -0,0 +1,11 @@
+--- js/src/assembler/jit/ExecutableAllocatorPosix.cpp.orig 2012-11-08 16:02:56.000000000 +0000
++++ js/src/assembler/jit/ExecutableAllocatorPosix.cpp 2012-11-08 15:34:03.000000000 +0000
+@@ -25,7 +25,7 @@
+
+ #include "ExecutableAllocator.h"
+
+-#if ENABLE_ASSEMBLER && WTF_PLATFORM_UNIX && !WTF_PLATFORM_SYMBIAN
++#if ENABLE_ASSEMBLER && (WTF_PLATFORM_UNIX || WTF_PLATFORM_RISCOS) && !WTF_PLATFORM_SYMBIAN
+
+ #include <sys/mman.h>
+ #include <unistd.h>
diff --git a/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/Platform.h.p b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/Platform.h.p
new file mode 100644
index 0000000..9d91ac8
--- /dev/null
+++ b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/Platform.h.p
@@ -0,0 +1,32 @@
+--- js/src/assembler/wtf/Platform.h.orig 2011-03-31 20:08:36.000000000 +0100
++++ js/src/assembler/wtf/Platform.h 2012-11-08 14:48:57.000000000 +0000
+@@ -188,6 +188,7 @@
+ #elif !defined(__ARM_EABI__) \
+ && !defined(__EABI__) \
+ && !defined(__VFP_FP__) \
++ && !defined(__riscos__) \
+ && !defined(ANDROID)
+ #define WTF_CPU_MIDDLE_ENDIAN 1
+
+@@ -232,6 +233,7 @@
+
+ #endif
+
++#ifndef __riscos__
+ /* Set WTF_THUMB_ARCH_VERSION */
+ #if defined(__ARM_ARCH_4T__)
+ #define WTF_THUMB_ARCH_VERSION 1
+@@ -263,6 +265,13 @@
+ #define WTF_THUMB_ARCH_VERSION 0
+ #endif
+
++#else
++
++#define WTF_THUMB_ARCH_VERSION 0
++#define WTF_PLATFORM_RISCOS 1
++#define WTF_CPU_ARM_TRADITIONAL 1
++
++#endif
+
+ /* CPU(ARMV5_OR_LOWER) - ARM instruction set v5 or earlier */
+ /* On ARMv5 and below the natural alignment is required.
diff --git a/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/configure.p b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/configure.p
new file mode 100644
index 0000000..0dd914b
--- /dev/null
+++ b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/configure.p
@@ -0,0 +1,13 @@
+--- js/src/configure 2011-03-31 20:08:36.000000000 +0100
++++ js/src/configure 2012-12-10 00:34:27.312881924 +0000
+@@ -7779,6 +7785,10 @@
+ HOST_NSPR_MDCPUCFG='\"md/_os2.cfg\"'
+ ;;
+
++*-riscos*)
++ TARGET_NSPR_MDCPUCFG='\"md/_riscos.cfg\"'
++ ;;
++
+ *-android*)
+ cat >> confdefs.h <<\EOF
+ #define NO_PW_GECOS 1
diff --git a/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jscntxt.cpp.p b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jscntxt.cpp.p
new file mode 100644
index 0000000..d61d860
--- /dev/null
+++ b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jscntxt.cpp.p
@@ -0,0 +1,11 @@
+--- js/src/jscntxt.cpp.orig 2012-11-08 14:49:30.000000000 +0000
++++ js/src/jscntxt.cpp 2012-11-08 14:50:19.000000000 +0000
+@@ -179,7 +179,7 @@
+ #elif defined(XP_OS2)
+ DosFreeMem(base);
+ #else
+-#ifdef SOLARIS
++#if defined(SOLARIS) || defined(__riscos__)
+ munmap((caddr_t)base, CAPACITY_BYTES);
+ #else
+ munmap(base, CAPACITY_BYTES);
diff --git a/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jsgcchunk.cpp.p b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jsgcchunk.cpp.p
new file mode 100644
index 0000000..b8720e4
--- /dev/null
+++ b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jsgcchunk.cpp.p
@@ -0,0 +1,27 @@
+--- js/src/jsgcchunk.cpp 2012-12-10 00:50:18.369597597 +0000
++++ js/src/jsgcchunk.cpp 2012-12-10 00:51:36.317984488 +0000
+@@ -322,13 +322,13 @@
+ * We don't use MAP_FIXED here, because it can cause the *replacement*
+ * of existing mappings, and we only want to create new mappings.
+ */
+- void *p = mmap(addr, size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON,
++ void *p = mmap((caddr_t)addr, size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON,
+ -1, 0);
+ if (p == MAP_FAILED)
+ return NULL;
+ if (addr && p != addr) {
+ /* We succeeded in mapping memory, but not in the right place. */
+- JS_ALWAYS_TRUE(munmap(p, size) == 0);
++ JS_ALWAYS_TRUE(munmap((caddr_t)p, size) == 0);
+ return NULL;
+ }
+ return p;
+@@ -342,7 +342,7 @@
+ #ifdef SOLARIS
+ JS_ALWAYS_TRUE(munmap((caddr_t) addr, size) == 0);
+ #else
+- JS_ALWAYS_TRUE(munmap(addr, size) == 0);
++ JS_ALWAYS_TRUE(munmap((caddr_t)addr, size) == 0);
+ #endif
+ }
+
diff --git a/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jsnativestack.cpp.p b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jsnativestack.cpp.p
new file mode 100644
index 0000000..0e042a9
--- /dev/null
+++ b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jsnativestack.cpp.p
@@ -0,0 +1,22 @@
+--- js/src/jsnativestack.cpp.orig 2012-11-08 14:53:01.000000000 +0000
++++ js/src/jsnativestack.cpp 2012-11-08 14:53:58.000000000 +0000
+@@ -204,7 +204,9 @@
+ * FIXME: this function is non-portable;
+ * other POSIX systems may have different np alternatives
+ */
++#ifndef __riscos__
+ pthread_getattr_np(thread, &sattr);
++#endif
+ # endif
+
+ void *stackBase = 0;
+@@ -212,7 +214,9 @@
+ # ifdef DEBUG
+ int rc =
+ # endif
++#ifndef __riscos__
+ pthread_attr_getstack(&sattr, &stackBase, &stackSize);
++#endif
+ JS_ASSERT(!rc);
+ JS_ASSERT(stackBase);
+ pthread_attr_destroy(&sattr);
diff --git a/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jstypedarray.cpp.p b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jstypedarray.cpp.p
new file mode 100644
index 0000000..0f4cfa9
--- /dev/null
+++ b/sdk/recipes/patches/spidermonkey/arm-unknown-riscos/jstypedarray.cpp.p
@@ -0,0 +1,11 @@
+--- js/src/jstypedarray.cpp.orig 2012-11-08 16:22:50.000000000 +0000
++++ js/src/jstypedarray.cpp 2012-11-08 16:23:25.000000000 +0000
+@@ -454,7 +454,7 @@
+ inline operator uint8() const {
+ return val;
+ }
+-};
++} __attribute__((packed));
+
+ /* Make sure the compiler isn't doing some funky stuff */
+ JS_STATIC_ASSERT(sizeof(uint8_clamped) == 1);