summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJory Pratt <anarchy@gentoo.org>2006-01-30 17:36:32 +0000
committerJory Pratt <anarchy@gentoo.org>2006-01-30 17:36:32 +0000
commit79f911fad680c0044f43c9294b62b70f583a2339 (patch)
tree367d2170389fc5ab9f4a990297efe4bbd7ac4a05 /dev-libs
parentfull changes for nspr-config, revision bump (diff)
downloadhistorical-79f911fad680c0044f43c9294b62b70f583a2339.tar.gz
historical-79f911fad680c0044f43c9294b62b70f583a2339.tar.bz2
historical-79f911fad680c0044f43c9294b62b70f583a2339.zip
revision bump, with proper modification for nss-config
Package-Manager: portage-2.1_pre4-r1
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/nspr/Manifest12
-rw-r--r--dev-libs/nss/ChangeLog9
-rw-r--r--dev-libs/nss/files/digest-nss-3.101
-rw-r--r--dev-libs/nss/files/digest-nss-3.113
-rw-r--r--dev-libs/nss/files/nss-3.11-config.patch91
-rw-r--r--dev-libs/nss/files/nss-3.11-zdefs.patch16
-rw-r--r--dev-libs/nss/files/nss-config.in137
-rw-r--r--dev-libs/nss/files/nss.pc.in18
-rw-r--r--dev-libs/nss/nss-3.10.ebuild93
-rw-r--r--dev-libs/nss/nss-3.11.ebuild101
10 files changed, 371 insertions, 110 deletions
diff --git a/dev-libs/nspr/Manifest b/dev-libs/nspr/Manifest
index c07294e8d5bc..4f911409ec1c 100644
--- a/dev-libs/nspr/Manifest
+++ b/dev-libs/nspr/Manifest
@@ -13,9 +13,9 @@ SHA256 7639d67da355e49a73e9da46a2e777855cf772783bc881e188c3ab2d178bbcad files/di
MD5 0a10b7414a160ead09dbd743e3128364 files/digest-nspr-4.4.1-r2 63
RMD160 4a2aaaa9d4c3e6fd3751a7434ab0343740246a57 files/digest-nspr-4.4.1-r2 63
SHA256 7639d67da355e49a73e9da46a2e777855cf772783bc881e188c3ab2d178bbcad files/digest-nspr-4.4.1-r2 63
-MD5 1e20cce753e48be8b2954bfb6169c097 files/digest-nspr-4.6.1-r1 235
-RMD160 e7633c996ab8a550204eb7306a35917c53a0eff9 files/digest-nspr-4.6.1-r1 235
-SHA256 7e0f76c1cca61e4239e0818ee0f97c9bc774a01878545c79b62713901fadf0ca files/digest-nspr-4.6.1-r1 235
+MD5 fb58705dbbaf7c7f4b07bffeebd05eca files/digest-nspr-4.6.1-r1 521
+RMD160 af32f7cce9bc9f9f01298df4e58704cf199eb693 files/digest-nspr-4.6.1-r1 521
+SHA256 b805dd573493dd35dd96a8a19953a5e24ce9ef084e0b852ec971b660a7d26879 files/digest-nspr-4.6.1-r1 521
MD5 b12990968c289b9e7f8fbb2174ec827c files/nspr-4.3-amd64.patch 7713
RMD160 33bc221a8f59c5b7175784b777693aa19e027e4a files/nspr-4.3-amd64.patch 7713
SHA256 da682b4d50a6093750f621afecf91f04380e0379207b82dfd6f283f714db8fde files/nspr-4.3-amd64.patch 7713
@@ -49,6 +49,6 @@ SHA256 6cbfbd40c1f38704379b6318690624d02ceb4c99ceb8c90dffe058f92e2061c3 nspr-4.4
MD5 c3e6bf1670e6e6f79920efb95aff7fd5 nspr-4.4.1.ebuild 1144
RMD160 e780fa2219e694a9e995df0513affbcf803ff016 nspr-4.4.1.ebuild 1144
SHA256 e035ac48cae2fd39df495fa69dfbfb7372892371c3ba9ed48427d11b3fac72fd nspr-4.4.1.ebuild 1144
-MD5 97d39fc94b75acd7e9de78ee03d3142e nspr-4.6.1-r1.ebuild 2343
-RMD160 340e45961d406563cf1d60bd91b7197b2ad3e703 nspr-4.6.1-r1.ebuild 2343
-SHA256 15a5a9b91a0939c29eca5a45a29154da122bced068182fa69e0ae1d8c82a518d nspr-4.6.1-r1.ebuild 2343
+MD5 a18364fd901cbfbc81b1e7889948f811 nspr-4.6.1-r1.ebuild 2463
+RMD160 bdd1c12a496d13bb75b925210853b3327be81264 nspr-4.6.1-r1.ebuild 2463
+SHA256 9ba34d01f7c5b1353c8aa3eb5d19446704839c1a884087b726757b3a115e9ad9 nspr-4.6.1-r1.ebuild 2463
diff --git a/dev-libs/nss/ChangeLog b/dev-libs/nss/ChangeLog
index a1e415932589..05f0a1a36ad8 100644
--- a/dev-libs/nss/ChangeLog
+++ b/dev-libs/nss/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-libs/nss
# Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/ChangeLog,v 1.46 2006/01/26 21:42:47 vanquirius Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/ChangeLog,v 1.47 2006/01/30 17:36:32 anarchy Exp $
+
+*nss-3.11 (30 Jan 2006)
+
+ 30 Jan 2006; <anarchy@gentoo.org> +files/nss-3.11-config.patch,
+ +files/nss-3.11-zdefs.patch, files/nss.pc.in, +files/nss-config.in,
+ -nss-3.10.ebuild, +nss-3.11.ebuild:
+ revision bump, with proper modification for nss-config
*nss-3.10 (26 Jan 2006)
diff --git a/dev-libs/nss/files/digest-nss-3.10 b/dev-libs/nss/files/digest-nss-3.10
deleted file mode 100644
index 09ec1b0b9833..000000000000
--- a/dev-libs/nss/files/digest-nss-3.10
+++ /dev/null
@@ -1 +0,0 @@
-MD5 f0d75d52aff21f88d9c055bdb78f54f8 nss-3.10.tar.gz 3622858
diff --git a/dev-libs/nss/files/digest-nss-3.11 b/dev-libs/nss/files/digest-nss-3.11
new file mode 100644
index 000000000000..802d7b71a488
--- /dev/null
+++ b/dev-libs/nss/files/digest-nss-3.11
@@ -0,0 +1,3 @@
+MD5 9be73bd73e361e5e36edf77f456fa20a nss-3.11.tar.gz 5002908
+RMD160 90be4b42e490084c23451ce8abcf089150357d1e nss-3.11.tar.gz 5002908
+SHA256 35b65a672c699f1e5fc082fccc29bcc65102ef8d31cff106f2ec68beace96809 nss-3.11.tar.gz 5002908
diff --git a/dev-libs/nss/files/nss-3.11-config.patch b/dev-libs/nss/files/nss-3.11-config.patch
new file mode 100644
index 000000000000..ac579c890875
--- /dev/null
+++ b/dev-libs/nss/files/nss-3.11-config.patch
@@ -0,0 +1,91 @@
+--- mozilla/security/nss/lib/ckfw/builtins/config.mk.orig 2005-01-20 02:25:46.000000000 +0000
++++ mozilla/security/nss/lib/ckfw/builtins/config.mk 2006-01-15 05:13:08.000000000 +0000
+@@ -69,3 +69,9 @@
+ MKSHLIB += -R '$$ORIGIN'
+ endif
+
++ifeq ($(OS_TARGET),Linux)
++# The -R '$ORIGIN' linker option instructs this library to search for its
++# dependencies in the same directory where it resides.
++DSO_LDOPTS += -Wl,-R,'$$ORIGIN'
++endif
++
+--- mozilla/security/nss/lib/ckfw/capi/config.mk.orig 2005-11-04 02:05:04.000000000 +0000
++++ mozilla/security/nss/lib/ckfw/capi/config.mk 2006-01-15 05:13:52.000000000 +0000
+@@ -69,3 +69,9 @@
+ MKSHLIB += -R '$$ORIGIN'
+ endif
+
++ifeq ($(OS_TARGET),Linux)
++# The -R '$ORIGIN' linker option instructs this library to search for its
++# dependencies in the same directory where it resides.
++DSO_LDOPTS += -Wl,-R,'$$ORIGIN'
++endif
++
+--- mozilla/security/nss/lib/freebl/Makefile.orig 2005-11-22 07:13:32.000000000 +0000
++++ mozilla/security/nss/lib/freebl/Makefile 2006-01-15 05:16:05.000000000 +0000
+@@ -132,6 +132,7 @@
+ endif
+
+ ifeq ($(OS_TARGET),Linux)
++DSO_LDOPTS += -Wl,-R,'$$ORIGIN'
+ ifeq ($(CPU_ARCH),x86_64)
+ ASFILES = arcfour-amd64-gas.s mpi_amd64_gas.s
+ ASFLAGS += -march=opteron -m64 -fPIC
+--- mozilla/security/nss/lib/nss/config.mk.orig 2005-07-21 23:48:28.000000000 +0000
++++ mozilla/security/nss/lib/nss/config.mk 2006-01-15 05:11:58.000000000 +0000
+@@ -122,6 +122,11 @@
+ endif
+ endif
+
++ifeq ($(OS_TARGET),Linux)
++# The -R '$ORIGIN' linker option instructs this library to search for its
++# dependencies in the same directory where it resides.
++DSO_LDOPTS += -Wl,-R,'$$ORIGIN'
++endif
+
+ ifeq (,$(filter-out WINNT WIN95,$(OS_TARGET)))
+ ifndef NS_USE_GCC
+--- mozilla/security/nss/lib/smime/config.mk.orig 2005-09-02 01:24:57.000000000 +0000
++++ mozilla/security/nss/lib/smime/config.mk 2006-01-15 05:05:53.000000000 +0000
+@@ -97,3 +97,10 @@
+ # dependencies in the same directory where it resides.
+ MKSHLIB += -R '$$ORIGIN'
+ endif
++
++ifeq ($(OS_TARGET),Linux)
++# The -R '$ORIGIN' linker option instructs this library to search for its
++# dependencies in the same directory where it resides.
++DSO_LDOPTS += -Wl,-R,'$$ORIGIN'
++endif
++
+--- mozilla/security/nss/lib/softoken/config.mk.orig 2005-10-19 01:03:31.000000000 +0000
++++ mozilla/security/nss/lib/softoken/config.mk 2006-01-15 05:07:15.000000000 +0000
+@@ -93,6 +93,12 @@
+ MKSHLIB += -R '$$ORIGIN'
+ endif
+
++ifeq ($(OS_TARGET),Linux)
++# The -R '$ORIGIN' linker option instructs this library to search for its
++# dependencies in the same directory where it resides.
++DSO_LDOPTS += -Wl,-R,'$$ORIGIN'
++endif
++
+ ifeq ($(OS_TARGET),WINCE)
+ DEFINES += -DDBM_USING_NSPR
+ endif
+--- mozilla/security/nss/lib/ssl/config.mk.orig 2005-10-19 01:04:16.000000000 +0000
++++ mozilla/security/nss/lib/ssl/config.mk 2006-01-15 05:10:38.000000000 +0000
+@@ -119,6 +119,12 @@
+ #EXTRA_SHARED_LIBS += -ldl -lrt -lc -z defs
+ endif
+
++ifeq ($(OS_TARGET),Linux)
++# The -R '$ORIGIN' linker option instructs this library to search for its
++# dependencies in the same directory where it resides.
++DSO_LDOPTS += -Wl,-R,'$$ORIGIN'
++endif
++
+ endif
+
+ # indicates dependency on freebl static lib
diff --git a/dev-libs/nss/files/nss-3.11-zdefs.patch b/dev-libs/nss/files/nss-3.11-zdefs.patch
new file mode 100644
index 000000000000..0e8128cbcaf1
--- /dev/null
+++ b/dev-libs/nss/files/nss-3.11-zdefs.patch
@@ -0,0 +1,16 @@
+Index: mozilla/security/coreconf/Linux.mk
+===================================================================
+RCS file: /cvsroot/mozilla/security/coreconf/Linux.mk,v
+retrieving revision 1.27
+diff -u -r1.27 Linux.mk
+--- mozilla/security/coreconf/Linux.mk 16 Sep 2005 17:09:23 -0000 1.27
++++ mozilla/security/coreconf/Linux.mk 15 Dec 2005 21:25:00 -0000
+@@ -165,7 +165,7 @@
+ ARCH = linux
+
+ DSO_CFLAGS = -fPIC
+-DSO_LDOPTS = -shared $(ARCHFLAG) -z defs
++DSO_LDOPTS = -shared $(ARCHFLAG) -Wl,-z,defs
+ DSO_LDFLAGS =
+ LDFLAGS += $(ARCHFLAG)
+
diff --git a/dev-libs/nss/files/nss-config.in b/dev-libs/nss/files/nss-config.in
new file mode 100644
index 000000000000..664fafeed06e
--- /dev/null
+++ b/dev-libs/nss/files/nss-config.in
@@ -0,0 +1,137 @@
+#!/bin/sh
+
+prefix=@prefix@
+
+major_version=@MOD_MAJOR_VERSION@
+minor_version=@MOD_MINOR_VERSION@
+patch_version=@MOD_PATCH_VERSION@
+
+usage()
+{
+ cat <<EOF
+Usage: nss-config [OPTIONS] [LIBRARIES]
+Options:
+ [--prefix[=DIR]]
+ [--exec-prefix[=DIR]]
+ [--includedir[=DIR]]
+ [--libdir[=DIR]]
+ [--version]
+ [--libs]
+ [--cflags]
+Dynamic Libraries:
+ nss
+ ssl
+ smime
+EOF
+ exit $1
+}
+
+if test $# -eq 0; then
+ usage 1 1>&2
+fi
+
+lib_ssl=yes
+lib_smime=yes
+lib_nss=yes
+
+while test $# -gt 0; do
+ case "$1" in
+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+ *) optarg= ;;
+ esac
+
+ case $1 in
+ --prefix=*)
+ prefix=$optarg
+ ;;
+ --prefix)
+ echo_prefix=yes
+ ;;
+ --exec-prefix=*)
+ exec_prefix=$optarg
+ ;;
+ --exec-prefix)
+ echo_exec_prefix=yes
+ ;;
+ --includedir=*)
+ includedir=$optarg
+ ;;
+ --includedir)
+ echo_includedir=yes
+ ;;
+ --libdir=*)
+ libdir=$optarg
+ ;;
+ --libdir)
+ echo_libdir=yes
+ ;;
+ --version)
+ echo ${major_version}.${minor_version}.${patch_version}
+ ;;
+ --cflags)
+ echo_cflags=yes
+ ;;
+ --libs)
+ echo_libs=yes
+ ;;
+ ssl)
+ lib_ssl=yes
+ ;;
+ smime)
+ lib_smime=yes
+ ;;
+ nss)
+ lib_nss=yes
+ ;;
+ *)
+ usage 1 1>&2
+ ;;
+ esac
+ shift
+done
+
+# Set variables that may be dependent upon other variables
+if test -z "$exec_prefix"; then
+ exec_prefix=@exec_prefix@
+fi
+if test -z "$includedir"; then
+ includedir=@includedir@
+fi
+if test -z "$libdir"; then
+ libdir=@libdir@
+fi
+
+if test "$echo_prefix" = "yes"; then
+ echo $prefix
+fi
+
+if test "$echo_exec_prefix" = "yes"; then
+ echo $exec_prefix
+fi
+
+if test "$echo_includedir" = "yes"; then
+ echo $includedir
+fi
+
+if test "$echo_libdir" = "yes"; then
+ echo $libdir
+fi
+
+if test "$echo_cflags" = "yes"; then
+ echo -I$includedir
+fi
+
+if test "$echo_libs" = "yes"; then
+ libdirs="-Wl,-R$libdir -L$libdir"
+ if test -n "$lib_ssl"; then
+ libdirs="$libdirs -lssl${major_version}"
+ fi
+ if test -n "$lib_smime"; then
+ libdirs="$libdirs -lsmime${major_version}"
+ fi
+ if test -n "$lib_nss"; then
+ libdirs="$libdirs -lnss${major_version}"
+ fi
+ echo $libdirs
+fi
+
diff --git a/dev-libs/nss/files/nss.pc.in b/dev-libs/nss/files/nss.pc.in
index c8e9ada7c36b..1c5ac9626409 100644
--- a/dev-libs/nss/files/nss.pc.in
+++ b/dev-libs/nss/files/nss.pc.in
@@ -1,11 +1,11 @@
-prefix=/usr
-exec_prefix=/usr
-libdir=/usr/lib/nss
-includedir=/usr/include
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
Name: NSS
-Description: Mozilla Network Security Services
-Version: @NSS_VER@
-Requires: nspr >= @NSPR_VER@
-Libs: -L${libdir} -lnss3 -lsmime3 -lssl3 -lsoftokn3 -Wl,-R${libdir}
-Cflags: -I${includedir}/nss
+Description: Network Security Services
+Version: @NSS_VERSION@
+Requires: nspr >= @NSPR_VERSION@
+Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -Wl,-R${libdir}
+Cflags: -I${includedir}
diff --git a/dev-libs/nss/nss-3.10.ebuild b/dev-libs/nss/nss-3.10.ebuild
deleted file mode 100644
index f836a9e3ec7c..000000000000
--- a/dev-libs/nss/nss-3.10.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 1999-2006 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/nss-3.10.ebuild,v 1.1 2006/01/26 21:42:47 vanquirius Exp $
-
-inherit eutils
-
-NSPR_VER="4.6.1"
-RTM_NAME="NSS_${PV//./_}_RTM"
-DESCRIPTION="Mozilla's Netscape Security Services Library that implements PKI support"
-HOMEPAGE="http://www.mozilla.org/projects/security/pki/nss/"
-SRC_URI="ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/${RTM_NAME}/src/${P}.tar.gz"
-
-LICENSE="MPL-1.1"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-DEPEND="virtual/libc
- app-arch/zip
- >=dev-libs/nspr-${NSPR_VER}"
-
-src_unpack() {
- unpack ${A}
-
- # hack nspr paths
- echo 'INCLUDES += -I${ROOT}usr/include/nspr -I$(DIST)/include/dbm' \
- >> ${S}/mozilla/security/coreconf/headers.mk || die "failed to append include"
-
- sed -e 's:$(DIST)/lib/$(LIB_PREFIX)plc4:${ROOT}usr/'"$(get_libdir)"'/nspr/$(LIB_PREFIX)plc4:' \
- -e 's:$(DIST)/lib/$(LIB_PREFIX)plds4:${ROOT}usr/'"$(get_libdir)"'/nspr/$(LIB_PREFIX)plds4:' \
- -i ${S}/mozilla/security/nss/lib/ckfw/builtins/Makefile
- sed -e 's:$(DIST)/lib/$(LIB_PREFIX)plc4:${ROOT}usr/'"$(get_libdir)"'/nspr/$(LIB_PREFIX)plc4:' \
- -e 's:$(DIST)/lib/$(LIB_PREFIX)plds4:${ROOT}usr/'"$(get_libdir)"'/nspr/$(LIB_PREFIX)plds4:' \
- -i ${S}/mozilla/security/nss/lib/fortcrypt/swfort/pkcs11/Makefile
-
- # cope with nspr being in /usr/$(get_libdir)/nspr
- sed -e 's:-L$(DIST)/lib.:-L$(DIST)/lib/ -L/usr/'"$(get_libdir)"'/nspr/ :g' \
- -i ${S}/mozilla/security/nss/lib/ckfw/builtins/Makefile \
- -i ${S}/mozilla/security/nss/lib/ckfw/builtins/manifest.mn \
- -i ${S}/mozilla/security/nss/lib/ckfw/dbm/manifest.mn \
- -i ${S}/mozilla/security/nss/cmd/platlibs.mk \
- -i ${S}/mozilla/security/nss/cmd/pkiutil/platlibs.mk \
- -i ${S}/mozilla/security/nss/lib/fortcrypt/swfort/pkcs11/Makefile \
- -i ${S}/mozilla/security/nss/lib/freebl/config.mk \
- -i ${S}/mozilla/security/nss/lib/nss/config.mk \
- -i ${S}/mozilla/security/nss/lib/smime/config.mk \
- -i ${S}/mozilla/security/nss/lib/softoken/config.mk \
- -i ${S}/mozilla/security/nss/lib/ssl/config.mk
-
- # modify install path
- sed -e 's:SOURCE_PREFIX = $(CORE_DEPTH)/\.\./dist:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' \
- -i ${S}/mozilla/security/coreconf/source.mk
-}
-
-src_compile() {
- cd ${S}/mozilla/security/coreconf
-
- emake -j1 BUILD_OPT=1 || die "coreconf make failed"
- cd ${S}/mozilla/security/dbm
- emake -j1 BUILD_OPT=1 || die "dbm make failed"
- cd ${S}/mozilla/security/nss
- emake -j1 BUILD_OPT=1 || die "nss make failed"
-}
-
-src_install () {
- cd ${S}/mozilla/security/dist
-
- # put all *.a files in /usr/lib/nss (because some have conflicting names
- # with existing libraries)
- dodir /usr/$(get_libdir)/nss
- cp -L */lib/*.a ${D}/usr/$(get_libdir)/nss || die "copying libs failed"
- cp -L */lib/*.so ${D}/usr/$(get_libdir)/nss || die "copying shared libs failed"
-
- # all the include files
- insinto /usr/include/nss
- doins private/nss/*.h
- doins public/nss/*.h
-
- # coping with nss being in a different path
- dodir /etc/env.d
- echo "LDPATH=/usr/$(get_libdir)/nss" > ${D}/etc/env.d/50nss
-
- # NOTE: we ignore the binary files
-
- # create pkg-config file
- mkdir -p ${D}/usr/$(get_libdir)/pkgconfig/
- sed -e "s:@NSS_VER@:${PV}:g" \
- -e "s:@NSPR_VER@:${NSPR_VER}:g" \
- -e "s:libdir=/usr/lib/nss:libdir=/usr/$(get_libdir)/nss:g" \
- < ${FILESDIR}/${PN}.pc.in \
- > ${D}/usr/$(get_libdir)/pkgconfig/${PN}.pc \
- || die "pkg-config file creation failed!"
-}
diff --git a/dev-libs/nss/nss-3.11.ebuild b/dev-libs/nss/nss-3.11.ebuild
new file mode 100644
index 000000000000..144a5d6ec9e9
--- /dev/null
+++ b/dev-libs/nss/nss-3.11.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/nss-3.11.ebuild,v 1.1 2006/01/30 17:36:32 anarchy Exp $
+
+inherit eutils
+
+NSPR_VER="4.6.1"
+RTM_NAME="NSS_${PV//./_}_RTM"
+DESCRIPTION="Mozilla's Netscape Security Services Library that implements PKI support"
+HOMEPAGE="http://www.mozilla.org/projects/security/pki/nss/"
+SRC_URI="ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/${RTM_NAME}/src/${P}.tar.gz"
+
+LICENSE="MPL-1.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+DEPEND="virtual/libc
+ app-arch/zip
+ >=dev-libs/nspr-${NSPR_VER}"
+
+src_unpack() {
+ unpack ${A}
+
+ # hack nspr paths
+ echo 'INCLUDES += -I${ROOT}/usr/include/nspr -I$(DIST)/include/dbm' \
+ >> ${S}/mozilla/security/coreconf/headers.mk || die "failed to append include"
+
+ # cope with nspr being in /usr/$(get_libdir)/nspr
+ sed -e 's:$(DIST)/lib:${ROOT}/usr/'"$(get_libdir)"/nspr':' \
+ -i ${S}/mozilla/security/coreconf/location.mk
+
+ # modify install path
+ sed -e 's:SOURCE_PREFIX = $(CORE_DEPTH)/\.\./dist:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' \
+ -i ${S}/mozilla/security/coreconf/source.mk
+
+ cd ${S}
+ epatch ${FILESDIR}/${PN}-${PV}-zdefs.patch
+ epatch ${FILESDIR}/${PN}-${PV}-config.patch
+}
+
+src_compile() {
+ if use amd64 || use ppc64 || use ia64 || use s390; then
+ export USE_64=1
+ fi
+
+ cd ${S}/mozilla/security/coreconf
+ emake -j1 BUILD_OPT=1 || die "coreconf make failed"
+ cd ${S}/mozilla/security/dbm
+ emake -j1 BUILD_OPT=1 || die "dbm make failed"
+ cd ${S}/mozilla/security/nss
+ emake -j1 BUILD_OPT=1 || die "nss make failed"
+}
+
+src_install () {
+ cd ${S}/mozilla/security/dist
+
+ # put all *.a files in /usr/lib/nss (because some have conflicting names
+ # with existing libraries)
+ dodir /usr/$(get_libdir)/nss
+ cp -L */lib/*.so ${D}/usr/$(get_libdir)/nss || die "copying shared libs failed"
+ cp -L */lib/*.chk ${D}/usr/$(get_libdir)/nss || die "copying chk files failed"
+ cp -L */lib/*.a ${D}/usr/$(get_libdir)/nss || die "copying libs failed"
+
+ # all the include files
+ insinto /usr/include/nss
+ doins private/nss/*.h
+ doins public/nss/*.h
+
+ # coping with nss being in a different path. We move up priority to
+ # ensure that nss/nspr are used specifically before searching elsewhere.
+ dodir /etc/env.d
+ echo "LDPATH=/usr/$(get_libdir)/nss" > ${D}/etc/env.d/08nss
+
+ dodir /usr/bin
+ dodir /usr/$(get_libdir)/pkgconfig
+ cp ${FILESDIR}/nss-config.in ${D}/usr/bin/nss-config
+ cp ${FILESDIR}/nss.pc.in ${D}/usr/$(get_libdir)/pkgconfig/nss.pc
+ NSS_VMAJOR=`cat ${S}/mozilla/security/nss/lib/nss/nss.h | grep "#define.*NSS_VMAJOR" | awk '{print $3}'`
+ NSS_VMINOR=`cat ${S}/mozilla/security/nss/lib/nss/nss.h | grep "#define.*NSS_VMINOR" | awk '{print $3}'`
+ NSS_VPATCH=`cat ${S}/mozilla/security/nss/lib/nss/nss.h | grep "#define.*NSS_VPATCH" | awk '{print $3}'`
+
+ sed -e "s,@libdir@,/usr/"$(get_libdir)"/nss,g" \
+ -e "s,@prefix@,/usr,g" \
+ -e "s,@exec_prefix@,\$\{prefix},g" \
+ -e "s,@includedir@,\$\{prefix}/include/nss,g" \
+ -e "s,@MOD_MAJOR_VERSION@,$NSS_VMAJOR,g" \
+ -e "s,@MOD_MINOR_VERSION@,$NSS_VMINOR,g" \
+ -e "s,@MOD_PATCH_VERSION@,$NSS_VPATCH,g" \
+ -i ${D}/usr/bin/nss-config
+ chmod 755 ${D}/usr/bin/nss-config
+
+ sed -e "s,@libdir@,/usr/"$(get_libdir)"/nss,g" \
+ -e "s,@prefix@,/usr,g" \
+ -e "s,@exec_prefix@,\$\{prefix},g" \
+ -e "s,@includedir@,\$\{prefix}/include/nss," \
+ -e "s,@NSPR_VERSION@,`nspr-config --version`,g" \
+ -e "s,@NSS_VERSION@,$NSS_VMAJOR.$NSS_VMINOR.$NSS_VPATCH,g" \
+ -i ${D}/usr/$(get_libdir)/pkgconfig/nss.pc
+ chmod 644 ${D}/usr/$(get_libdir)/pkgconfig/nss.pc
+}