summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Olexa <darkside@gentoo.org>2010-07-21 14:21:02 +0000
committerJeremy Olexa <darkside@gentoo.org>2010-07-21 14:21:02 +0000
commitf16b044ccd918fc8b1dddac1e4c7c43027e22bec (patch)
treed9a2f67b728aeea23984c0a837959dfa10f70a88 /dev-libs/nss
parentx86 stable wrt bug #329265 (diff)
downloadhistorical-f16b044ccd918fc8b1dddac1e4c7c43027e22bec.tar.gz
historical-f16b044ccd918fc8b1dddac1e4c7c43027e22bec.tar.bz2
historical-f16b044ccd918fc8b1dddac1e4c7c43027e22bec.zip
Migrate changes from Gentoo Prefix overlay. Convert to EAPI3, add patch, etc. Approved by mozilla team in IRC, reference bug 328127
Package-Manager: portage-2.1.8.3/cvs/Linux x86_64
Diffstat (limited to 'dev-libs/nss')
-rw-r--r--dev-libs/nss/ChangeLog7
-rw-r--r--dev-libs/nss/Manifest5
-rw-r--r--dev-libs/nss/files/nss-3.12.4-solaris-gcc.patch33
-rw-r--r--dev-libs/nss/nss-3.12.6-r2.ebuild59
4 files changed, 80 insertions, 24 deletions
diff --git a/dev-libs/nss/ChangeLog b/dev-libs/nss/ChangeLog
index 3f68516efbaa..b11471b8bdf9 100644
--- a/dev-libs/nss/ChangeLog
+++ b/dev-libs/nss/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for dev-libs/nss
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/ChangeLog,v 1.182 2010/07/02 09:15:31 gmsoft Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/ChangeLog,v 1.183 2010/07/21 14:21:02 darkside Exp $
+
+ 21 Jul 2010; Jeremy Olexa <darkside@gentoo.org>
+ +files/nss-3.12.4-solaris-gcc.patch, nss-3.12.6-r2.ebuild:
+ Migrate changes from Gentoo Prefix overlay. Convert to EAPI3, add patch,
+ etc. Approved by mozilla team in IRC, reference bug 328127
02 Jul 2010; Guy Martin <gmsoft@gentoo.org> nss-3.12.6-r1.ebuild:
hppa stable, #324735
diff --git a/dev-libs/nss/Manifest b/dev-libs/nss/Manifest
index 3c76715c4ea3..263973bab539 100644
--- a/dev-libs/nss/Manifest
+++ b/dev-libs/nss/Manifest
@@ -1,3 +1,4 @@
+AUX nss-3.12.4-solaris-gcc.patch 842 RMD160 83324ac0ecde97e1976bf5162e7ce01ab2ca07e6 SHA1 769562dc8fd7ecc85e4f06a88d568433f2f3f5e2 SHA256 cf2695f4d73ad9de267ffd2e47b2f8940bf56d94b51e66d1e36907b5d6368865
AUX nss-3.12.5-gentoo-fixups.diff 6669 RMD160 af35db729406c62d0e8582e7db18f2f80a71c776 SHA1 e50b55be77f62516f735acfb41a1e47509572cd8 SHA256 24593640e682cb7a831cd8a0888397b7b20880c9cfabed76bb647cc12385aef6
AUX nss-3.12.6-gentoo-fixup-warnings.patch 301 RMD160 9bd51d07ba7e568b6f29b7c347a71c1717912234 SHA1 620bec7adc3c36c94075bffead0ce73cd8d3d7df SHA256 e14b227f762bd21875208e241029966b1e3873edfdf0592ca69bd9714859d329
DIST nss-3.12.5.tar.gz 5397000 RMD160 2592c4cf107d5de907c74b2e7ae260650be3c446 SHA1 ec12c6eddba5fb4609a174b079095b374935d37c SHA256 2980c292b8cb2248e3f29111bef9991ea2cf83b11f26635618b413f422af16b3
@@ -5,6 +6,6 @@ DIST nss-3.12.6.tar.gz 5947630 RMD160 cb11e154730a12c72f684c6036fa6f27d10d2b60 S
EBUILD nss-3.12.5-r1.ebuild 3622 RMD160 07f36f9905c2114bf5a4c243131d7ded05b8f463 SHA1 a74cd74556ba145b0f596c52225eb8c47b2ab822 SHA256 289a533844552f8e3fc86fd8da60c20cef6b53cfc1bcf8c0ecc701c20a7e5a0e
EBUILD nss-3.12.5.ebuild 3904 RMD160 4a482069bf56b343cbf3d56d6189d7f8e25f3fff SHA1 c7f5cbdf09b52ce188e9a90bb39de6eee33b1fa5 SHA256 b395fde2231f7373e67c51c3cc87f2db4bac2ebf396b2c65dba42612233c4f9d
EBUILD nss-3.12.6-r1.ebuild 3477 RMD160 59ba3bc426d76f93427e8e27a0411f537f4f9f85 SHA1 e3fc31746107673bae6edc91072f0231e7d6d357 SHA256 293daeb5d63673777f7f9b5f93ce256a8eacc35f5bee42abae7084259088393a
-EBUILD nss-3.12.6-r2.ebuild 5753 RMD160 70484143742643c5daa5ebef6e8db9d9f2af3252 SHA1 10468c57c16eff4ee637a4e99e73d8ed75578dde SHA256 68d02a526c6e54adefe0b3d19fc198868b0b543a1831d2b78f831f156d164ffd
-MISC ChangeLog 23249 RMD160 5ad02957b7d35c404dafdef7c904c8ee66767a20 SHA1 bc9955566338dee3fafbf07b8fc4f29621d028b7 SHA256 9acfa8afa79dc5ce934874bb77f95c2981f39b97644e9a47390d78e8772ceeab
+EBUILD nss-3.12.6-r2.ebuild 6630 RMD160 ff672278096e5657548409aabe7bf8ed6cc70022 SHA1 d4f3821d967ac3e0a6f3d629199335d372982bd8 SHA256 5fbb6cea41d317bbf89dd7041000796e6b18750f18387074ac51d5d498476d3d
+MISC ChangeLog 23499 RMD160 0fe29f18856ff1b9ed118ece2dd7df1dbf3b766b SHA1 f0c209b8ce22c851a956c009c6f717bbc249b3b3 SHA256 4c49340dd772e75675c3df21554d7fe4cae5834f535c928568b2d01bc6fc5677
MISC metadata.xml 245 RMD160 f0c9fbd458bca39f235195807582f530797bcd27 SHA1 a2c000437e0149764d8aa0a4e58b8cf106685d83 SHA256 58443b11f9dff75b5d4391f03dbafd90305a0ec8f046f8f0068fb95777c01bd4
diff --git a/dev-libs/nss/files/nss-3.12.4-solaris-gcc.patch b/dev-libs/nss/files/nss-3.12.4-solaris-gcc.patch
new file mode 100644
index 000000000000..f0a3310c3c81
--- /dev/null
+++ b/dev-libs/nss/files/nss-3.12.4-solaris-gcc.patch
@@ -0,0 +1,33 @@
+--- mozilla/security/coreconf/SunOS5.mk.orig 2009-10-02 10:51:26.617090950 +0200
++++ mozilla/security/coreconf/SunOS5.mk 2009-10-02 10:53:39.756260510 +0200
+@@ -37,6 +37,9 @@
+
+ include $(CORE_DEPTH)/coreconf/UNIX.mk
+
++NS_USE_GCC = 1
++GCC_USE_GNU_LD = 1
++
+ #
+ # Temporary define for the Client; to be removed when binary release is used
+ #
+@@ -104,7 +107,7 @@
+ endif
+ endif
+
+-INCLUDES += -I/usr/dt/include -I/usr/openwin/include
++#INCLUDES += -I/usr/dt/include -I/usr/openwin/include
+
+ RANLIB = echo
+ CPU_ARCH = sparc
+@@ -114,11 +117,6 @@
+ NOMD_OS_CFLAGS += $(DSO_CFLAGS) $(OS_DEFINES) $(SOL_CFLAGS)
+
+ MKSHLIB = $(CC) $(DSO_LDOPTS) $(RPATH)
+-ifdef NS_USE_GCC
+-ifeq (GNU,$(findstring GNU,$(shell `$(CC) -print-prog-name=ld` -v 2>&1)))
+- GCC_USE_GNU_LD = 1
+-endif
+-endif
+ ifdef MAPFILE
+ ifdef NS_USE_GCC
+ ifdef GCC_USE_GNU_LD
diff --git a/dev-libs/nss/nss-3.12.6-r2.ebuild b/dev-libs/nss/nss-3.12.6-r2.ebuild
index 17619ce3a7ba..d9ac02cef6eb 100644
--- a/dev-libs/nss/nss-3.12.6-r2.ebuild
+++ b/dev-libs/nss/nss-3.12.6-r2.ebuild
@@ -1,7 +1,8 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/nss-3.12.6-r2.ebuild,v 1.3 2010/06/21 21:08:32 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/nss-3.12.6-r2.ebuild,v 1.4 2010/07/21 14:21:02 darkside Exp $
+EAPI=3
inherit eutils flag-o-matic multilib toolchain-funcs
NSPR_VER="4.8.3-r2"
@@ -12,23 +13,22 @@ SRC_URI="ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/${RTM_NAME}
LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="utils"
DEPEND="dev-util/pkgconfig"
RDEPEND=">=dev-libs/nspr-${NSPR_VER}
>=dev-db/sqlite-3.5"
-src_unpack() {
- unpack ${A}
-
- cd "${S}"
-
+src_prepare() {
# Custom changes for gentoo
epatch "${FILESDIR}/${PN}-3.12.5-gentoo-fixups.diff"
epatch "${FILESDIR}/${PN}-3.12.6-gentoo-fixup-warnings.patch"
cd "${S}"/mozilla/security/coreconf
+ # hack nspr paths
+ echo 'INCLUDES += -I'"${EPREFIX}"'/usr/include/nspr -I$(DIST)/include/dbm' \
+ >> headers.mk || die "failed to append include"
# modify install path
sed -e 's:SOURCE_PREFIX = $(CORE_DEPTH)/\.\./dist:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' \
@@ -39,6 +39,18 @@ src_unpack() {
# Ensure we stay multilib aware
sed -i -e "s:gentoo\/nss:$(get_libdir):" "${S}"/mozilla/security/nss/config/Makefile || die "Failed to fix for multilib"
+
+ # Fix pkgconfig file for Prefix
+ sed -i -e "/^PREFIX =/s:= /usr:= ${EPREFIX}/usr:" \
+ "${S}"/mozilla/security/nss/config/Makefile
+
+ epatch "${FILESDIR}"/${PN}-3.12.4-solaris-gcc.patch # breaks non-gnu tools
+ # dirty hack
+ cd "${S}"/mozilla/security/nss
+ sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../freebl/\$(OBJDIR):" \
+ lib/ssl/config.mk || die
+ sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../../lib/freebl/\$(OBJDIR):" \
+ cmd/platlibs.mk || die
}
src_compile() {
@@ -47,8 +59,8 @@ src_compile() {
echo > "${T}"/test.c
$(tc-getCC) ${CFLAGS} -c "${T}"/test.c -o "${T}"/test.o
case $(file "${T}"/test.o) in
- *64-bit*) export USE_64=1;;
- *32-bit*) ;;
+ *64-bit*|*ppc64*|*x86_64*) export USE_64=1;;
+ *32-bit*|*ppc*|*i386*) ;;
*) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";;
esac
@@ -119,24 +131,29 @@ src_install () {
cd "${S}"/mozilla/security/dist
dodir /usr/$(get_libdir)
- cp -L */lib/*.so "${D}"/usr/$(get_libdir) || die "copying shared libs failed"
+ cp -L */lib/*$(get_libname) "${ED}"/usr/$(get_libdir) || die "copying shared libs failed"
# We generate these after stripping the libraries, else they don't match.
- #cp -L */lib/*.chk "${D}"/usr/$(get_libdir) || die "copying chk files failed"
- cp -L */lib/libcrmf.a "${D}"/usr/$(get_libdir) || die "copying libs failed"
+ #cp -L */lib/*.chk "${ED}"/usr/$(get_libdir) || die "copying chk files failed"
+ cp -L */lib/libcrmf.a "${ED}"/usr/$(get_libdir) || die "copying libs failed"
# Install nss-config and pkgconfig file
dodir /usr/bin
- cp -L */bin/nss-config "${D}"/usr/bin
+ cp -L */bin/nss-config "${ED}"/usr/bin
dodir /usr/$(get_libdir)/pkgconfig
- cp -L */lib/pkgconfig/nss.pc "${D}"/usr/$(get_libdir)/pkgconfig
+ cp -L */lib/pkgconfig/nss.pc "${ED}"/usr/$(get_libdir)/pkgconfig
# all the include files
insinto /usr/include/nss
doins public/nss/*.h
- cd "${D}"/usr/$(get_libdir)
- for file in *.so; do
- mv ${file} ${file}.${MINOR_VERSION}
- ln -s ${file}.${MINOR_VERSION} ${file}
+ cd "${ED}"/usr/$(get_libdir)
+ local n=
+ for file in *$(get_libname); do
+ n=${file%$(get_libname)}$(get_libname ${MINOR_VERSION})
+ mv ${file} ${n}
+ ln -s ${n} ${file}
+ if [[ ${CHOST} == *-darwin* ]]; then
+ install_name_tool -id "${EPREFIX}/usr/$(get_libdir)/${n}" ${n} || die
+ fi
done
local nssutils
@@ -161,7 +178,7 @@ src_install () {
# shlibsign after prelink.
declare -a libs
for l in ${NSS_CHK_SIGN_LIBS} ; do
- libs+=("/usr/$(get_libdir)/lib${l}.so")
+ libs+=("${EPREFIX}/usr/$(get_libdir)/lib${l}.so")
done
OLD_IFS="${IFS}" IFS=":" ; liblist="${libs[*]}" ; IFS="${OLD_IFS}"
echo -e "PRELINK_PATH_MASK=${liblist}" >"${T}/90nss"
@@ -177,9 +194,9 @@ pkg_postinst() {
elog " links after upgrade."
elog
# We must re-sign the libraries AFTER they are stripped.
- generate_chk "${ROOT}"/usr/bin/shlibsign "${ROOT}"/usr/$(get_libdir)
+ generate_chk "${EROOT}"/usr/bin/shlibsign "${ROOT}"/usr/$(get_libdir)
}
pkg_postrm() {
- cleanup_chk "${ROOT}"/usr/$(get_libdir)
+ cleanup_chk "${EROOT}"/usr/$(get_libdir)
}