diff --git a/nspr-4.7.1-sparc64.patch b/nspr-4.7.1-sparc64.patch new file mode 100644 index 0000000..26223dd --- /dev/null +++ b/nspr-4.7.1-sparc64.patch @@ -0,0 +1,72 @@ +diff -up nspr-4.7.1/mozilla/nsprpub/pr/include/md/_linux.cfg.spot nspr-4.7.1/mozilla/nsprpub/pr/include/md/_linux.cfg +--- nspr-4.7.1/mozilla/nsprpub/pr/include/md/_linux.cfg.spot 2008-10-09 13:04:52.000000000 -0400 ++++ nspr-4.7.1/mozilla/nsprpub/pr/include/md/_linux.cfg 2008-10-09 13:56:25.000000000 -0400 +@@ -331,10 +331,55 @@ + #define PR_BYTES_PER_WORD_LOG2 2 + #define PR_BYTES_PER_DWORD_LOG2 3 + +-#elif defined(__sparc__) ++#elif defined(__sparc__) && defined (__arch64__) + + #undef IS_LITTLE_ENDIAN + #define IS_BIG_ENDIAN 1 ++#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_INT64 8 ++#define PR_ALIGN_OF_LONG 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 2 ++#define PR_BYTES_PER_DWORD_LOG2 3 ++ ++#elif defined(__sparc__) ++ ++#undef IS_LITTLE_ENDIAN ++#define IS_BIG_ENDIAN 1 + + #define PR_BYTES_PER_BYTE 1 + #define PR_BYTES_PER_SHORT 2 +diff -up nspr-4.7.1/mozilla/nsprpub/pr/include/md/_linux.h.spot nspr-4.7.1/mozilla/nsprpub/pr/include/md/_linux.h +--- nspr-4.7.1/mozilla/nsprpub/pr/include/md/_linux.h.spot 2008-10-09 13:13:24.000000000 -0400 ++++ nspr-4.7.1/mozilla/nsprpub/pr/include/md/_linux.h 2008-10-09 13:14:43.000000000 -0400 +@@ -63,6 +63,8 @@ + #define _PR_SI_ARCHITECTURE "x86-64" + #elif defined(__mc68000__) + #define _PR_SI_ARCHITECTURE "m68k" ++#elif defined(__sparc__) && defined(__arch64__) ++#define _PR_SI_ARCHITECTURE "sparc64" + #elif defined(__sparc__) + #define _PR_SI_ARCHITECTURE "sparc" + #elif defined(__i386__) diff --git a/nspr.spec b/nspr.spec index da10415..6e5008a 100644 --- a/nspr.spec +++ b/nspr.spec @@ -1,7 +1,7 @@ Summary: Netscape Portable Runtime Name: nspr Version: 4.7.1 -Release: 0.9.2%{?dist} +Release: 0.9.3%{?dist} License: MPLv1.1 or GPLv2+ or LGPLv2+ URL: http://www.mozilla.org/projects/nspr/ Group: System Environment/Libraries @@ -15,6 +15,9 @@ Source1: nspr.pc.in Source2: nspr-config-vars.in Patch1: nspr-config-pc.patch +# Sent upstream: +# https://bugzilla.mozilla.org/show_bug.cgi?id=459304 +Patch2: nspr-4.7.1-sparc64.patch %description NSPR provides platform independence for non-GUI operating system @@ -44,6 +47,7 @@ Header files for doing development with the Netscape Portable Runtime. cp ./mozilla/nsprpub/config/nspr-config.in ./mozilla/nsprpub/config/nspr-config-pc.in %patch1 -p0 +%patch2 -p1 cp %{SOURCE2} ./mozilla/nsprpub/config/ @@ -131,6 +135,9 @@ done %{_bindir}/nspr-config %changelog +* Thu Oct 9 2008 Tom "spot" Callaway - 4.7.1-0.9.3 +- enable support for sparc64 + * Tue Sep 30 2008 Dennis Gilmore - 4.7.1-0.9.2 - sparc64 is a 64 bit arch