summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad House <brad_mssw@gentoo.org>2003-11-14 03:13:12 +0000
committerBrad House <brad_mssw@gentoo.org>2003-11-14 03:13:12 +0000
commit1d6d571a3b72cd0334716eba04d22700d160e496 (patch)
tree0c9faf0d60cba92973912cd47c76a46c1737ce07 /dev-libs
parentadding metadata (diff)
downloadgentoo-2-1d6d571a3b72cd0334716eba04d22700d160e496.tar.gz
gentoo-2-1d6d571a3b72cd0334716eba04d22700d160e496.tar.bz2
gentoo-2-1d6d571a3b72cd0334716eba04d22700d160e496.zip
amd64
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/nss/ChangeLog6
-rw-r--r--dev-libs/nss/Manifest5
-rw-r--r--dev-libs/nss/files/nss-3.8-amd64.patch246
-rw-r--r--dev-libs/nss/nss-3.8.ebuild9
4 files changed, 261 insertions, 5 deletions
diff --git a/dev-libs/nss/ChangeLog b/dev-libs/nss/ChangeLog
index 605762960425..154ded38db38 100644
--- a/dev-libs/nss/ChangeLog
+++ b/dev-libs/nss/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for dev-libs/nss
# Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/ChangeLog,v 1.12 2003/09/05 11:21:50 weeve Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/ChangeLog,v 1.13 2003/11/14 03:13:10 brad_mssw Exp $
+
+ 13 Nov 2003; Brad House <brad_mssw@gentoo.org> nss-3.8.ebuild,
+ files/nss-3.8-amd64.patch:
+ amd64 patch from caleb@webninja.com
05 Sep 2003; Jason Wever <weeve@gentoo.org> nss-3.8.ebuild:
Marked stable for sparc.
diff --git a/dev-libs/nss/Manifest b/dev-libs/nss/Manifest
index 938669889399..6dc38acb120a 100644
--- a/dev-libs/nss/Manifest
+++ b/dev-libs/nss/Manifest
@@ -1,4 +1,5 @@
-MD5 f9fcc7ba525a11b734493f35aedffd2e nss-3.8.ebuild 2248
-MD5 d57e2b0087a4b57201ca9ad3807215ae ChangeLog 1637
+MD5 bcacf44546563aad8ea540989178cdff ChangeLog 1774
MD5 8f906ffe0aa837e5e26fe03af3043461 metadata.xml 219
+MD5 f6aaa41fed298f65cb5539e583f8dbff nss-3.8.ebuild 2349
MD5 80da1f67cfbd587017f411109c5ca57b files/digest-nss-3.8 60
+MD5 d5948dfd93b61198742855ec3d2a254d files/nss-3.8-amd64.patch 8306
diff --git a/dev-libs/nss/files/nss-3.8-amd64.patch b/dev-libs/nss/files/nss-3.8-amd64.patch
new file mode 100644
index 000000000000..27d262e65690
--- /dev/null
+++ b/dev-libs/nss/files/nss-3.8-amd64.patch
@@ -0,0 +1,246 @@
+diff -ruN mozilla.old/nsprpub/configure mozilla/nsprpub/configure
+--- mozilla.old/nsprpub/configure 2003-05-19 15:05:42.000000000 -0400
++++ mozilla/nsprpub/configure 2003-09-27 16:20:55.085325144 -0400
+@@ -3729,6 +3729,9 @@
+ ia64)
+ PR_MD_ASFILES=os_Linux_ia64.s
+ ;;
++ x86_64)
++ PR_MD_ASFILES=os_Linux_x86_64.s
++ ;;
+ m68k)
+ CFLAGS="$CFLAGS -m68020-60"
+ CXXFLAGS="$CXXFLAGS -m68020-60"
+diff -ruN mozilla.old/nsprpub/configure.in mozilla/nsprpub/configure.in
+--- mozilla.old/nsprpub/configure.in 2003-05-19 15:05:48.000000000 -0400
++++ mozilla/nsprpub/configure.in 2003-09-27 16:20:55.077326360 -0400
+@@ -1218,6 +1218,9 @@
+ ia64)
+ PR_MD_ASFILES=os_Linux_ia64.s
+ ;;
++ x86_64)
++ PR_MD_ASFILES=os_Linux_x86_64.s
++ ;;
+ m68k)
+ CFLAGS="$CFLAGS -m68020-60"
+ CXXFLAGS="$CXXFLAGS -m68020-60"
+diff -ruN mozilla.old/nsprpub/pr/include/md/_linux.cfg mozilla/nsprpub/pr/include/md/_linux.cfg
+--- mozilla.old/nsprpub/pr/include/md/_linux.cfg 2003-02-26 18:53:38.000000000 -0500
++++ mozilla/nsprpub/pr/include/md/_linux.cfg 2003-09-27 16:20:55.053330008 -0400
+@@ -182,6 +182,52 @@
+ #define PR_BYTES_PER_WORD_LOG2 3
+ #define PR_BYTES_PER_DWORD_LOG2 3
+
++#elif defined(__x86_64__)
++
++#define IS_LITTLE_ENDIAN 1
++#undef IS_BIG_ENDIAN
++#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
++
+ #elif defined(__mc68000__)
+
+ #undef IS_LITTLE_ENDIAN
+diff -ruN mozilla.old/nsprpub/pr/include/md/_linux.h mozilla/nsprpub/pr/include/md/_linux.h
+--- mozilla.old/nsprpub/pr/include/md/_linux.h 2003-02-26 18:53:39.000000000 -0500
++++ mozilla/nsprpub/pr/include/md/_linux.h 2003-09-27 16:20:55.053330008 -0400
+@@ -49,6 +49,8 @@
+ #define _PR_SI_ARCHITECTURE "alpha"
+ #elif defined(__ia64__)
+ #define _PR_SI_ARCHITECTURE "ia64"
++#elif defined(__x86_64__)
++#define _PR_SI_ARCHITECTURE "x86-64"
+ #elif defined(__mc68000__)
+ #define _PR_SI_ARCHITECTURE "m68k"
+ #elif defined(__sparc__)
+@@ -107,6 +109,19 @@
+ #define _MD_ATOMIC_SET _PR_ia64_AtomicSet
+ #endif
+
++#if defined(__x86_64__)
++#define _PR_HAVE_ATOMIC_OPS
++#define _MD_INIT_ATOMIC()
++extern PRInt32 _PR_x86_64_AtomicIncrement(PRInt32 *val);
++#define _MD_ATOMIC_INCREMENT _PR_x86_64_AtomicIncrement
++extern PRInt32 _PR_x86_64_AtomicDecrement(PRInt32 *val);
++#define _MD_ATOMIC_DECREMENT _PR_x86_64_AtomicDecrement
++extern PRInt32 _PR_x86_64_AtomicAdd(PRInt32 *ptr, PRInt32 val);
++#define _MD_ATOMIC_ADD _PR_x86_64_AtomicAdd
++extern PRInt32 _PR_x86_64_AtomicSet(PRInt32 *val, PRInt32 newval);
++#define _MD_ATOMIC_SET _PR_x86_64_AtomicSet
++#endif
++
+ #define USE_SETJMP
+ #if defined(__GLIBC__) && __GLIBC__ >= 2
+ #define _PR_POLL_AVAILABLE
+diff -ruN mozilla.old/nsprpub/pr/src/io/prprf.c mozilla/nsprpub/pr/src/io/prprf.c
+--- mozilla.old/nsprpub/pr/src/io/prprf.c 2003-02-26 18:53:42.000000000 -0500
++++ mozilla/nsprpub/pr/src/io/prprf.c 2003-09-27 16:20:55.068327728 -0400
+@@ -51,7 +51,10 @@
+ ** Note: on some platforms va_list is defined as an array,
+ ** and requires array notation.
+ */
+-#if (defined(LINUX) && defined(__powerpc__)) || \
++#if (defined(LINUX) && defined(__x86_64__))
++#include <stdarg.h>
++#define VARARGS_ASSIGN(foo, bar) __va_copy((foo), (bar))
++#elif (defined(LINUX) && defined(__powerpc__)) || \
+ (defined(LINUX) && defined(__s390__)) || \
+ (defined(LINUX) && defined(__s390x__)) || \
+ defined(WIN16) || defined(QNX) || \
+diff -ruN mozilla.old/nsprpub/pr/src/md/unix/os_Linux_x86_64.s mozilla/nsprpub/pr/src/md/unix/os_Linux_x86_64.s
+--- mozilla.old/nsprpub/pr/src/md/unix/os_Linux_x86_64.s 1969-12-31 19:00:00.000000000 -0500
++++ mozilla/nsprpub/pr/src/md/unix/os_Linux_x86_64.s 2003-09-27 16:20:55.068327728 -0400
+@@ -0,0 +1,91 @@
++/ -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
++/
++/ The contents of this file are subject to the Mozilla Public
++/ License Version 1.1 (the "License"); you may not use this file
++/ except in compliance with the License. You may obtain a copy of
++/ the License at http://www.mozilla.org/MPL/
++/
++/ Software distributed under the License is distributed on an "AS
++/ IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
++/ implied. See the License for the specific language governing
++/ rights and limitations under the License.
++/
++/ The Original Code is the Netscape Portable Runtime (NSPR).
++/
++/ The Initial Developer of the Original Code is Netscape
++/ Communications Corporation. Portions created by Netscape are
++/ Copyright (C) 2000 Netscape Communications Corporation. All
++/ Rights Reserved.
++/
++/ Contributor(s):
++/
++/ Alternatively, the contents of this file may be used under the
++/ terms of the GNU General Public License Version 2 or later (the
++/ "GPL"), in which case the provisions of the GPL are applicable
++/ instead of those above. If you wish to allow use of your
++/ version of this file only under the terms of the GPL and not to
++/ allow others to use your version of this file under the MPL,
++/ indicate your decision by deleting the provisions above and
++/ replace them with the notice and other provisions required by
++/ the GPL. If you do not delete the provisions above, a recipient
++/ may use your version of this file under either the MPL or the
++/ GPL.
++/
++
++/ PRInt32 _PR_x86_64_AtomicIncrement(PRInt32 *val)
++/
++/ Atomically increment the integer pointed to by 'val' and return
++/ the result of the increment.
++/
++ .text
++ .globl _PR_x86_64_AtomicIncrement
++ .align 4
++_PR_x86_64_AtomicIncrement:
++ movl $1, %eax
++ lock
++ xaddl %eax, (%rdi)
++ incl %eax
++ ret
++
++/ PRInt32 _PR_x86_64_AtomicDecrement(PRInt32 *val)
++/
++/ Atomically decrement the integer pointed to by 'val' and return
++/ the result of the decrement.
++/
++ .text
++ .globl _PR_x86_64_AtomicDecrement
++ .align 4
++_PR_x86_64_AtomicDecrement:
++ movl $-1, %eax
++ lock
++ xaddl %eax, (%rdi)
++ decl %eax
++ ret
++
++/ PRInt32 _PR_x86_64_AtomicSet(PRInt32 *val, PRInt32 newval)
++/
++/ Atomically set the integer pointed to by 'val' to the new
++/ value 'newval' and return the old value.
++ .text
++ .globl _PR_x86_64_AtomicSet
++ .align 4
++_PR_x86_64_AtomicSet:
++ movl %esi, %eax
++ lock
++ xchgl %eax, (%rdi)
++ ret
++
++/ PRInt32 _PR_x86_64_AtomicAdd(PRInt32 *ptr, PRInt32 val)
++/
++/ Atomically add 'val' to the integer pointed to by 'ptr'
++/ and return the result of the addition.
++/
++ .text
++ .globl _PR_x86_64_AtomicAdd
++ .align 4
++_PR_x86_64_AtomicAdd:
++ movl %esi, %eax
++ lock
++ xaddl %eax, (%rdi)
++ addl %esi, %eax
++ ret
+diff -ruN mozilla.old/security/coreconf/Linux.mk mozilla/security/coreconf/Linux.mk
+--- mozilla.old/security/coreconf/Linux.mk 2003-04-30 20:31:20.000000000 -0400
++++ mozilla/security/coreconf/Linux.mk 2003-09-27 16:20:55.093323928 -0400
+@@ -66,6 +66,10 @@
+ OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+ CPU_ARCH = ia64
+ else
++ifeq ($(OS_TEST),x86_64)
++ OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
++ CPU_ARCH = x86_64
++else
+ ifeq ($(OS_TEST),sparc)
+ OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+ CPU_ARCH = sparc
+@@ -107,6 +111,7 @@
+ endif
+ endif
+ endif
++endif
+
+
+ LIBC_TAG = _glibc
diff --git a/dev-libs/nss/nss-3.8.ebuild b/dev-libs/nss/nss-3.8.ebuild
index 82f66f0b33d6..e20c2f998990 100644
--- a/dev-libs/nss/nss-3.8.ebuild
+++ b/dev-libs/nss/nss-3.8.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/nss-3.8.ebuild,v 1.14 2003/09/11 16:06:14 drobbins Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/nss-3.8.ebuild,v 1.15 2003/11/14 03:13:10 brad_mssw Exp $
S=${WORKDIR}/${P}
@@ -11,7 +11,7 @@ HOMEPAGE="http://www.mozilla.org/projects/security/pki/nss/"
SLOT="0"
LICENSE="MPL-1.1"
-KEYWORDS="x86 ppc sparc ~alpha"
+KEYWORDS="x86 ppc sparc ~alpha ~amd64"
DEPEND="virtual/glibc
app-arch/zip
@@ -39,6 +39,11 @@ src_unpack() {
# workaround to satisfy linux-2.6* (#24626)
cp ${S}/mozilla/security/coreconf/Linux2.5.mk ${S}/mozilla/security/coreconf/Linux2.6.mk
+
+ if [ "${ARCH}" = "amd64" ]
+ then
+ cd ${S}; epatch ${FILESDIR}/${PN}-${PV}-amd64.patch
+ fi
}
src_compile() {