summaryrefslogtreecommitdiffstats
path: root/meta/recipes-support/nspr/nspr
diff options
context:
space:
mode:
authorSaul Wold <sgw@linux.intel.com>2013-11-04 14:39:14 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-11-08 17:24:52 +0000
commit7227ce313586503c0939d0c916464e623ad9c238 (patch)
tree48baf33d5589a7f4b6c666ba4bfd3b8b41cd229f /meta/recipes-support/nspr/nspr
parente1dc714593d3773f27973b4c9cc09495fa00e013 (diff)
downloadopenembedded-core-7227ce313586503c0939d0c916464e623ad9c238.tar.gz
nspr: Update to 4.10.1
Move patch directory files to nspr Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/recipes-support/nspr/nspr')
-rw-r--r--meta/recipes-support/nspr/nspr/fix-build-on-aarch64.patch101
-rw-r--r--meta/recipes-support/nspr/nspr/fix-build-on-x86_64.patch51
-rw-r--r--meta/recipes-support/nspr/nspr/nspr.pc.in11
-rw-r--r--meta/recipes-support/nspr/nspr/remove-rpath-from-tests.patch26
-rw-r--r--meta/recipes-support/nspr/nspr/trickly-fix-build-on-x86_64.patch62
5 files changed, 251 insertions, 0 deletions
diff --git a/meta/recipes-support/nspr/nspr/fix-build-on-aarch64.patch b/meta/recipes-support/nspr/nspr/fix-build-on-aarch64.patch
new file mode 100644
index 0000000000..ccad0a1a14
--- /dev/null
+++ b/meta/recipes-support/nspr/nspr/fix-build-on-aarch64.patch
@@ -0,0 +1,101 @@
+Add Aarch64 support
+
+Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
+
+Upstream-Status: Submitted https://bugzilla.mozilla.org/show_bug.cgi?id=827271
+---
+ configure.in | 12 ++++++------
+ 1 files changed, 6 insertions(+), 6 deletions(-)
+--- a/pr/include/md/_linux.cfg
++++ b/pr/include/md/_linux.cfg
+@@ -861,6 +861,59 @@
+ #define PR_BYTES_PER_WORD_LOG2 2
+ #define PR_BYTES_PER_DWORD_LOG2 3
+
++#elif defined(__aarch64__)
++
++#ifdef __AARCH64EB__
++#undef IS_LITTLE_ENDIAN
++#define IS_BIG_ENDIAN 1
++#elif defined(__AARCH64EL__)
++#define IS_LITTLE_ENDIAN 1
++#undef IS_BIG_ENDIAN
++#else
++#error "Unknown Aarch64 endianness."
++#endif
++#define IS_64
++
++#define PR_BYTES_PER_BYTE 1
++#define PR_BYTES_PER_SHORT 2
++#define PR_BYTES_PER_INT 4
++#define PR_BYTES_PER_INT64 8
++#define PR_BYTES_PER_LONG 8
++#define PR_BYTES_PER_FLOAT 4
++#define PR_BYTES_PER_DOUBLE 8
++#define PR_BYTES_PER_WORD 8
++#define PR_BYTES_PER_DWORD 8
++
++#define PR_BITS_PER_BYTE 8
++#define PR_BITS_PER_SHORT 16
++#define PR_BITS_PER_INT 32
++#define PR_BITS_PER_INT64 64
++#define PR_BITS_PER_LONG 64
++#define PR_BITS_PER_FLOAT 32
++#define PR_BITS_PER_DOUBLE 64
++#define PR_BITS_PER_WORD 64
++
++#define PR_BITS_PER_BYTE_LOG2 3
++#define PR_BITS_PER_SHORT_LOG2 4
++#define PR_BITS_PER_INT_LOG2 5
++#define PR_BITS_PER_INT64_LOG2 6
++#define PR_BITS_PER_LONG_LOG2 6
++#define PR_BITS_PER_FLOAT_LOG2 5
++#define PR_BITS_PER_DOUBLE_LOG2 6
++#define PR_BITS_PER_WORD_LOG2 6
++
++#define PR_ALIGN_OF_SHORT 2
++#define PR_ALIGN_OF_INT 4
++#define PR_ALIGN_OF_LONG 8
++#define PR_ALIGN_OF_INT64 8
++#define PR_ALIGN_OF_FLOAT 4
++#define PR_ALIGN_OF_DOUBLE 8
++#define PR_ALIGN_OF_POINTER 8
++#define PR_ALIGN_OF_WORD 8
++
++#define PR_BYTES_PER_WORD_LOG2 3
++#define PR_BYTES_PER_DWORD_LOG2 3
++
+ #else
+
+ #error "Unknown CPU architecture"
+--- a/pr/include/md/_linux.h
++++ b/pr/include/md/_linux.h
+@@ -53,6 +53,8 @@
+ #define _PR_SI_ARCHITECTURE "avr32"
+ #elif defined(__m32r__)
+ #define _PR_SI_ARCHITECTURE "m32r"
++#elif defined(__aarch64__)
++#define _PR_SI_ARCHITECTURE "aarch64"
+ #else
+ #error "Unknown CPU architecture"
+ #endif
+@@ -186,7 +188,7 @@
+ })
+ #endif
+
+-#if defined(__arm__)
++#if defined(__arm__) || defined(__aarch64__)
+ #if defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
+ /* Use GCC built-in functions */
+ #define _PR_HAVE_ATOMIC_OPS
+@@ -242,6 +244,10 @@
+ #endif
+ #endif /* __arm__ */
+
++#if defined(__aarch64__)
++#define _MD_MINIMUM_STACK_SIZE 0x20000
++#endif
++
+ #define USE_SETJMP
+ #if (defined(__GLIBC__) && __GLIBC__ >= 2) || defined(ANDROID)
+ #define _PR_POLL_AVAILABLE
diff --git a/meta/recipes-support/nspr/nspr/fix-build-on-x86_64.patch b/meta/recipes-support/nspr/nspr/fix-build-on-x86_64.patch
new file mode 100644
index 0000000000..a6fa1ea607
--- /dev/null
+++ b/meta/recipes-support/nspr/nspr/fix-build-on-x86_64.patch
@@ -0,0 +1,51 @@
+Fix build failure on x86_64
+
+When the target_cpu is x86_64, we should assume that the pkg uses 64bit,
+only if USE_N32 is set, we can assume that the pkg uses 32bit. It used a
+opposite logic before.
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+
+Upstream-Status: Pending
+---
+ configure.in | 12 ++++++------
+ 1 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 39c96a3..99a03ac 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1778,24 +1778,24 @@ tools are selected during the Xcode/Developer Tools installation.])
+ PR_MD_ASFILES=os_Linux_ia64.s
+ ;;
+ x86_64)
+- if test -n "$USE_64"; then
+- PR_MD_ASFILES=os_Linux_x86_64.s
+- else
++ if test -n "$USE_N32"; then
+ AC_DEFINE(i386)
+ PR_MD_ASFILES=os_Linux_x86.s
+ CC="$CC -m32"
+ CXX="$CXX -m32"
++ else
++ PR_MD_ASFILES=os_Linux_x86_64.s
+ fi
+ ;;
+ ppc|powerpc)
+ PR_MD_ASFILES=os_Linux_ppc.s
+ ;;
+ powerpc64)
+- if test -n "$USE_64"; then
++ if test -n "$USE_N32"; then
++ PR_MD_ASFILES=os_Linux_ppc.s
++ else
+ CC="$CC -m64"
+ CXX="$CXX -m64"
+- else
+- PR_MD_ASFILES=os_Linux_ppc.s
+ fi
+ ;;
+ m68k)
+--
+1.7.1
+
diff --git a/meta/recipes-support/nspr/nspr/nspr.pc.in b/meta/recipes-support/nspr/nspr/nspr.pc.in
new file mode 100644
index 0000000000..c37d0bcbd7
--- /dev/null
+++ b/meta/recipes-support/nspr/nspr/nspr.pc.in
@@ -0,0 +1,11 @@
+os_libs=-lpthread -ldl
+prefix=OEPREFIX
+exec_prefix=OEEXECPREFIX
+libdir=OELIBDIR
+includedir=OEINCDIR
+
+Name: NSPR
+Description: The Netscape Portable Runtime
+Version: 4.9.5
+Libs: -L${libdir} -lplds4 -lplc4 -lnspr4 -lpthread -ldl
+Cflags:
diff --git a/meta/recipes-support/nspr/nspr/remove-rpath-from-tests.patch b/meta/recipes-support/nspr/nspr/remove-rpath-from-tests.patch
new file mode 100644
index 0000000000..a7e7853de1
--- /dev/null
+++ b/meta/recipes-support/nspr/nspr/remove-rpath-from-tests.patch
@@ -0,0 +1,26 @@
+Author: Andrei Gherzan <andrei@gherzan.ro>
+Date: Thu Feb 9 00:03:38 2012 +0200
+
+Avoid QA warnings by removing hardcoded rpath from binaries.
+
+[...]
+WARNING: QA Issue: package nspr contains bad RPATH {builddir}/tmp/work/armv5te-poky-linux-gnueabi/nspr-4.8.9-r1/nspr-4.8.9/mozilla/nsprpub/pr/tests/../../dist/lib
+in file {builddir}/tmp/work/armv5te-poky-linux-gnueabi/nspr-4.8.9-r1/packages-split/nspr/usr/lib/nspr/tests/multiwait
+[...]
+
+Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
+Upstream-Status: Pending
+
+Index: nspr-4.8.9/mozilla/nsprpub/pr/tests/Makefile.in
+===================================================================
+--- nsprpub.orig/pr/tests/Makefile.in 2012-02-11 00:01:10.476220505 +0200
++++ nsprpub/pr/tests/Makefile.in 2012-02-10 23:57:40.000000000 +0200
+@@ -379,7 +379,7 @@
+ endif
+
+ ifeq (,$(filter-out Linux GNU GNU_%,$(OS_ARCH)))
+- LDOPTS += -Xlinker -rpath $(ABSOLUTE_LIB_DIR)
++ LDOPTS += -Xlinker
+ ifeq ($(USE_PTHREADS),1)
+ EXTRA_LIBS = -lpthread
+ endif
diff --git a/meta/recipes-support/nspr/nspr/trickly-fix-build-on-x86_64.patch b/meta/recipes-support/nspr/nspr/trickly-fix-build-on-x86_64.patch
new file mode 100644
index 0000000000..8ca51e4d1f
--- /dev/null
+++ b/meta/recipes-support/nspr/nspr/trickly-fix-build-on-x86_64.patch
@@ -0,0 +1,62 @@
+trickily fix build failure on x86_64
+
+It seems that we can not run the 'autoreconf -f -i' for the nspr, I met
+several strange problems while trying to do that, and the previous
+author seemed had noticed this, so he wrote:
+
+do_configure() {
+ oe_runconf
+}
+
+to avoid running the "autoreconf". But we must modify configure.in to
+fix the build failure on x86_64, so both modify configure and
+configure.in, once the "autoreconf" can work correctly, we can remove
+this patch.
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+
+Upstream-Status: Inappropriate [configuration]
+---
+ configure | 12 ++++++------
+ 1 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/configure b/configure
+--- a/configure
++++ b/configure
+@@ -4366,9 +4366,7 @@ EOF
+ PR_MD_ASFILES=os_Linux_ia64.s
+ ;;
+ x86_64)
+- if test -n "$USE_64"; then
+- PR_MD_ASFILES=os_Linux_x86_64.s
+- else
++ if test -n "$USE_N32"; then
+ cat >> confdefs.h <<\EOF
+ #define i386 1
+ EOF
+@@ -4376,17 +4374,19 @@ EOF
+ PR_MD_ASFILES=os_Linux_x86.s
+ CC="$CC -m32"
+ CXX="$CXX -m32"
++ else
++ PR_MD_ASFILES=os_Linux_x86_64.s
+ fi
+ ;;
+ ppc|powerpc)
+ PR_MD_ASFILES=os_Linux_ppc.s
+ ;;
+ powerpc64)
+- if test -n "$USE_64"; then
++ if test -n "$USE_N32"; then
++ PR_MD_ASFILES=os_Linux_ppc.s
++ else
+ CC="$CC -m64"
+ CXX="$CXX -m64"
+- else
+- PR_MD_ASFILES=os_Linux_ppc.s
+ fi
+ ;;
+ m68k)
+--
+1.7.1
+