summaryrefslogtreecommitdiffstats
path: root/package/nodejs/nodejs-v8-gregs-fix.patch
diff options
context:
space:
mode:
authorDaniel Price <daniel.price@gmail.com>2013-03-07 15:31:16 +0000
committerPeter Korsgaard <jacmet@sunsite.dk>2013-03-18 09:42:46 +0100
commitb31bc7d4387095091a109eb879464d54d37a5eab (patch)
tree87a2ae6a5c1cac951eaf5cd14a313c560c6dce6f /package/nodejs/nodejs-v8-gregs-fix.patch
parenta42e10c61b19a6054d10fc809460c7e23c46fde7 (diff)
downloadbuildroot-novena-b31bc7d4387095091a109eb879464d54d37a5eab.tar.gz
buildroot-novena-b31bc7d4387095091a109eb879464d54d37a5eab.zip
nodejs: new package
Based off of patches posted by (and Signed-off-by:) Jonathan Liu <net147@gmail.com> [Peter: fix Config.in whitespace] Signed-off-by: Daniel Price <daniel.price@gmail.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'package/nodejs/nodejs-v8-gregs-fix.patch')
-rw-r--r--package/nodejs/nodejs-v8-gregs-fix.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/package/nodejs/nodejs-v8-gregs-fix.patch b/package/nodejs/nodejs-v8-gregs-fix.patch
new file mode 100644
index 000000000..4af33bc42
--- /dev/null
+++ b/package/nodejs/nodejs-v8-gregs-fix.patch
@@ -0,0 +1,29 @@
+Fix compilation for ARM/uClibc
+Patch from Remi Duraffort <remi.duraffort@st.com>, taken from
+https://code.google.com/p/v8/source/detail?r=12094
+
+Signed-off-by: Daniel Price <daniel.price@gmail.com>
+
+--- a/deps/v8/src/platform-linux.cc
++++ b/deps/v8/src/platform-linux.cc
+@@ -1025,7 +1025,8 @@ static void ProfilerSignalHandler(int signal, siginfo_t* info, void* context) {
+ sample->fp = reinterpret_cast<Address>(mcontext.gregs[REG_RBP]);
+ #elif V8_HOST_ARCH_ARM
+ // An undefined macro evaluates to 0, so this applies to Android's Bionic also.
+-#if (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3))
++#if (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3) && \
++ !defined(__UCLIBC__))
+ sample->pc = reinterpret_cast<Address>(mcontext.gregs[R15]);
+ sample->sp = reinterpret_cast<Address>(mcontext.gregs[R13]);
+ sample->fp = reinterpret_cast<Address>(mcontext.gregs[R11]);
+@@ -1033,7 +1034,8 @@ static void ProfilerSignalHandler(int signal, siginfo_t* info, void* context) {
+ sample->pc = reinterpret_cast<Address>(mcontext.arm_pc);
+ sample->sp = reinterpret_cast<Address>(mcontext.arm_sp);
+ sample->fp = reinterpret_cast<Address>(mcontext.arm_fp);
+-#endif // (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3))
++#endif // (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3) &&
++ // !defined(__UCLIBC__))
+ #elif V8_HOST_ARCH_MIPS
+ sample->pc = reinterpret_cast<Address>(mcontext.pc);
+ sample->sp = reinterpret_cast<Address>(mcontext.gregs[29]);
+