diff options
-rw-r--r-- | dev-libs/nss/ChangeLog | 9 | ||||
-rw-r--r-- | dev-libs/nss/files/nss-3.12.6-gentoo-fixup-warnings.patch | 10 | ||||
-rw-r--r-- | dev-libs/nss/nss-3.12.6.ebuild | 118 |
3 files changed, 136 insertions, 1 deletions
diff --git a/dev-libs/nss/ChangeLog b/dev-libs/nss/ChangeLog index 728bb86e90d0..d5923fa0bf4e 100644 --- a/dev-libs/nss/ChangeLog +++ b/dev-libs/nss/ChangeLog @@ -1,6 +1,13 @@ # 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.172 2010/02/12 14:04:57 anarchy Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/ChangeLog,v 1.173 2010/03/24 22:31:07 nirbheek Exp $ + +*nss-3.12.6 (24 Mar 2010) + + 24 Mar 2010; Nirbheek Chauhan <nirbheek@gentoo.org> +nss-3.12.6.ebuild, + +files/nss-3.12.6-gentoo-fixup-warnings.patch: + Bump to 3.12.6; no upstream release, so we have our own little tarball + extracted from the firefox-3.6.2 sources. 12 Feb 2010; <anarchy@gentoo.org> nss-3.12.5-r1.ebuild: Fix bugs #304687, #304571 diff --git a/dev-libs/nss/files/nss-3.12.6-gentoo-fixup-warnings.patch b/dev-libs/nss/files/nss-3.12.6-gentoo-fixup-warnings.patch new file mode 100644 index 000000000000..bf2a86583080 --- /dev/null +++ b/dev-libs/nss/files/nss-3.12.6-gentoo-fixup-warnings.patch @@ -0,0 +1,10 @@ +--- nss-3.12.6b/mozilla/security/coreconf/Linux.mk-old 2010-02-11 12:43:26.000000000 -0600 ++++ nss-3.12.6b/mozilla/security/coreconf/Linux.mk 2010-02-14 09:13:53.962449644 -0600 +@@ -120,6 +120,7 @@ + ifdef MOZ_DEBUG_SYMBOLS + OPTIMIZER += -gstabs+ + endif ++OPTIMIZER += -fno-strict-aliasing + endif + + diff --git a/dev-libs/nss/nss-3.12.6.ebuild b/dev-libs/nss/nss-3.12.6.ebuild new file mode 100644 index 000000000000..fbb526cac4a3 --- /dev/null +++ b/dev-libs/nss/nss-3.12.6.ebuild @@ -0,0 +1,118 @@ +# 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.ebuild,v 1.1 2010/03/24 22:31:07 nirbheek Exp $ + +inherit eutils flag-o-matic multilib toolchain-funcs + +NSPR_VER="4.8.3-r2" +RTM_NAME="NSS_${PV//./_}_RTM" +DESCRIPTION="Mozilla's Network 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" +#SRC_URI="http://dev.gentoo.org/~armin76/dist/${P}.tar.bz2 +SRC_URI="mirror://gentoo/${P}-gentoo.tar.bz2" + +LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="utils" + +DEPEND="dev-util/pkgconfig" +RDEPEND=">=dev-libs/nspr-${NSPR_VER} + >=dev-db/sqlite-3.5" + +src_unpack() { + unpack ${A} + + cd "${S}" + + # 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 + + # modify install path + sed -e 's:SOURCE_PREFIX = $(CORE_DEPTH)/\.\./dist:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' \ + -i source.mk + + # Respect LDFLAGS + sed -i -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/g' rules.mk + + # 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" +} + +src_compile() { + strip-flags + + echo > "${T}"/test.c + $(tc-getCC) -c "${T}"/test.c -o "${T}"/test.o + case $(file "${T}"/test.o) in + *64-bit*) export USE_64=1;; + *32-bit*) ;; + *) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";; + esac + + export PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 + export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 + export NSPR_INCLUDE_DIR=`pkg-config --cflags-only-I nspr | sed 's/-I//'` + export NSPR_LIB_DIR=`pkg-config --libs-only-L nspr | sed 's/-L//'` + export BUILD_OPT=1 + export NSS_USE_SYSTEM_SQLITE=1 + export NSDISTMODE=copy + export NSS_ENABLE_ECC=1 + export XCFLAGS="${CFLAGS}" + export FREEBL_NO_DEPEND=1 + + cd "${S}"/mozilla/security/coreconf + emake -j1 CC="$(tc-getCC)" || die "coreconf make failed" + cd "${S}"/mozilla/security/dbm + emake -j1 CC="$(tc-getCC)" || die "dbm make failed" + cd "${S}"/mozilla/security/nss + emake -j1 CC="$(tc-getCC)" || die "nss make failed" +} + +src_install () { + MINOR_VERSION=12 + 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/*.chk "${D}"/usr/$(get_libdir) || die "copying chk files failed" + cp -L */lib/libcrmf.a "${D}"/usr/$(get_libdir) || die "copying libs failed" + + # Install nspr-config and pkgconfig file + dodir /usr/bin + cp -L */bin/nss-config "${D}"/usr/bin + dodir /usr/$(get_libdir)/pkgconfig + cp -L */lib/pkgconfig/nss.pc "${D}"/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} + done + + if use utils; then + local nssutils + nssutils="certutil crlutil cmsutil modutil pk12util signtool signver ssltap addbuiltin" + + cd "${S}"/mozilla/security/dist/*/bin/ + for f in $nssutils; do + dobin ${f} + done + fi +} + +pkg_postinst() { + elog "We have reverted back to using upstreams soname." + elog "Please run revdep-rebuild --library libnss3.so.12 , this" + elog "will correct most issues. If you find a binary that does" + elog "not run please re-emerge package to ensure it properly" + elog " links after upgrade." + elog +} |