diff options
Diffstat (limited to 'dev-libs')
-rw-r--r-- | dev-libs/nss/ChangeLog | 8 | ||||
-rw-r--r-- | dev-libs/nss/files/nss-3.12.4-gentoo-fixups-1.diff | 245 | ||||
-rw-r--r-- | dev-libs/nss/nss-3.12.4.ebuild | 112 |
3 files changed, 364 insertions, 1 deletions
diff --git a/dev-libs/nss/ChangeLog b/dev-libs/nss/ChangeLog index c32e2519c50d..a2054e43d6e2 100644 --- a/dev-libs/nss/ChangeLog +++ b/dev-libs/nss/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-libs/nss # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/ChangeLog,v 1.152 2009/09/05 20:39:37 keytoaster Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/ChangeLog,v 1.153 2009/09/15 03:22:22 anarchy Exp $ + +*nss-3.12.4 (15 Sep 2009) + + 15 Sep 2009; Jory A. Pratt <anarchy@gentoo.org> +nss-3.12.4.ebuild, + +files/nss-3.12.4-gentoo-fixups-1.diff: + add nss-3.12.4 revision bump, many many bug fixes 05 Sep 2009; Tobias Heinlein <keytoaster@gentoo.org> nss-3.12.3-r1.ebuild: amd64 stable wrt bug #280839 diff --git a/dev-libs/nss/files/nss-3.12.4-gentoo-fixups-1.diff b/dev-libs/nss/files/nss-3.12.4-gentoo-fixups-1.diff new file mode 100644 index 000000000000..b2563592305a --- /dev/null +++ b/dev-libs/nss/files/nss-3.12.4-gentoo-fixups-1.diff @@ -0,0 +1,245 @@ +diff -urN nss-3.12.4-orig/mozilla/security/nss/config/Makefile nss-3.12.4/mozilla/security/nss/config/Makefile +--- nss-3.12.4-orig/mozilla/security/nss/config/Makefile 1969-12-31 18:00:00.000000000 -0600 ++++ nss-3.12.4/mozilla/security/nss/config/Makefile 2009-09-14 21:45:45.619639265 -0500 +@@ -0,0 +1,40 @@ ++CORE_DEPTH = ../.. ++DEPTH = ../.. ++ ++include $(CORE_DEPTH)/coreconf/config.mk ++ ++NSS_MAJOR_VERSION = `grep "NSS_VMAJOR" ../lib/nss/nss.h | awk '{print $$3}'` ++NSS_MINOR_VERSION = `grep "NSS_VMINOR" ../lib/nss/nss.h | awk '{print $$3}'` ++NSS_PATCH_VERSION = `grep "NSS_VPATCH" ../lib/nss/nss.h | awk '{print $$3}'` ++PREFIX = /usr ++ ++all: export libs ++ ++export: ++ # Create the nss.pc file ++ mkdir -p $(DIST)/lib/pkgconfig ++ sed -e "s,@prefix@,$(PREFIX)," \ ++ -e "s,@exec_prefix@,\$${prefix}," \ ++ -e "s,@libdir@,\$${prefix}/gentoo/nss," \ ++ -e "s,@includedir@,\$${prefix}/include/nss," \ ++ -e "s,@NSS_MAJOR_VERSION@,$(NSS_MAJOR_VERSION),g" \ ++ -e "s,@NSS_MINOR_VERSION@,$(NSS_MINOR_VERSION)," \ ++ -e "s,@NSS_PATCH_VERSION@,$(NSS_PATCH_VERSION)," \ ++ nss.pc.in > nss.pc ++ chmod 0644 nss.pc ++ ln -sf ../../../../../security/nss/config/nss.pc $(DIST)/lib/pkgconfig ++ ++ # Create the nss-config script ++ mkdir -p $(DIST)/bin ++ sed -e "s,@prefix@,$(PREFIX)," \ ++ -e "s,@NSS_MAJOR_VERSION@,$(NSS_MAJOR_VERSION)," \ ++ -e "s,@NSS_MINOR_VERSION@,$(NSS_MINOR_VERSION)," \ ++ -e "s,@NSS_PATCH_VERSION@,$(NSS_PATCH_VERSION)," \ ++ nss-config.in > nss-config ++ chmod 0755 nss-config ++ ln -sf ../../../../security/nss/config/nss-config $(DIST)/bin ++ ++libs: ++ ++dummy: all export libs ++ +diff -urN nss-3.12.4-orig/mozilla/security/nss/config/nss-config.in nss-3.12.4/mozilla/security/nss/config/nss-config.in +--- nss-3.12.4-orig/mozilla/security/nss/config/nss-config.in 1969-12-31 18:00:00.000000000 -0600 ++++ nss-3.12.4/mozilla/security/nss/config/nss-config.in 2009-09-14 21:47:45.190638078 -0500 +@@ -0,0 +1,145 @@ ++#!/bin/sh ++ ++prefix=@prefix@ ++ ++major_version=@NSS_MAJOR_VERSION@ ++minor_version=@NSS_MINOR_VERSION@ ++patch_version=@NSS_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 ++ nssutil ++EOF ++ exit $1 ++} ++ ++if test $# -eq 0; then ++ usage 1 1>&2 ++fi ++ ++lib_ssl=yes ++lib_smime=yes ++lib_nss=yes ++lib_nssutil=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 ++ ;; ++ nssutil) ++ lib_nssutil=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=`pkg-config --variable=exec_prefix nss` ++fi ++if test -z "$includedir"; then ++ includedir=`pkg-config --variable=includedir nss` ++fi ++if test -z "$libdir"; then ++ libdir=`pkg-config --variable=libdir nss` ++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 ++ if test -n "$lib_nssutil"; then ++ libdirs="$libdirs -lnssutil${major_version}" ++ fi ++ echo $libdirs ++fi ++ +diff -urN nss-3.12.4-orig/mozilla/security/nss/config/nss.pc.in nss-3.12.4/mozilla/security/nss/config/nss.pc.in +--- nss-3.12.4-orig/mozilla/security/nss/config/nss.pc.in 1969-12-31 18:00:00.000000000 -0600 ++++ nss-3.12.4/mozilla/security/nss/config/nss.pc.in 2009-09-14 21:45:45.653637310 -0500 +@@ -0,0 +1,12 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: NSS ++Description: Network Security Services ++Version: @NSS_MAJOR_VERSION@.@NSS_MINOR_VERSION@.@NSS_PATCH_VERSION@ ++Requires: nspr >= 4.8 ++Libs: -L${libdir} -lssl3 -lsmime3 -lnssutil3 -lnss3 -Wl,-R${libdir} ++Cflags: -I${includedir} ++ +diff -urN nss-3.12.4-orig/mozilla/security/nss/Makefile nss-3.12.4/mozilla/security/nss/Makefile +--- nss-3.12.4-orig/mozilla/security/nss/Makefile 2008-12-02 17:24:39.000000000 -0600 ++++ nss-3.12.4/mozilla/security/nss/Makefile 2009-09-14 21:45:45.678657145 -0500 +@@ -78,7 +78,7 @@ + # (7) Execute "local" rules. (OPTIONAL). # + ####################################################################### + +-nss_build_all: build_coreconf build_nspr build_dbm all ++nss_build_all: build_coreconf build_dbm all + + nss_clean_all: clobber_coreconf clobber_nspr clobber_dbm clobber + +@@ -140,12 +140,6 @@ + --with-dist-prefix='$(NSPR_PREFIX)' \ + --with-dist-includedir='$(NSPR_PREFIX)/include' + +-build_nspr: $(NSPR_CONFIG_STATUS) +- cd $(CORE_DEPTH)/../nsprpub/$(OBJDIR_NAME) ; $(MAKE) +- +-clobber_nspr: $(NSPR_CONFIG_STATUS) +- cd $(CORE_DEPTH)/../nsprpub/$(OBJDIR_NAME) ; $(MAKE) clobber +- + build_dbm: + ifndef NSS_DISABLE_DBM + cd $(CORE_DEPTH)/dbm ; $(MAKE) export libs +diff -urN nss-3.12.4-orig/mozilla/security/nss/manifest.mn nss-3.12.4/mozilla/security/nss/manifest.mn +--- nss-3.12.4-orig/mozilla/security/nss/manifest.mn 2008-04-04 15:36:59.000000000 -0500 ++++ nss-3.12.4/mozilla/security/nss/manifest.mn 2009-09-14 21:45:45.703656167 -0500 +@@ -42,6 +42,6 @@ + + RELEASE = nss + +-DIRS = lib cmd ++DIRS = lib cmd config + + diff --git a/dev-libs/nss/nss-3.12.4.ebuild b/dev-libs/nss/nss-3.12.4.ebuild new file mode 100644 index 000000000000..e2ae0ed9c7e5 --- /dev/null +++ b/dev-libs/nss/nss-3.12.4.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/nss-3.12.4.ebuild,v 1.1 2009/09/15 03:22:22 anarchy Exp $ + +inherit eutils flag-o-matic multilib toolchain-funcs + +NSPR_VER="4.7.4" +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 +# mirror://gentoo/${P}.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-libs/nspr-${NSPR_VER} + >=dev-db/sqlite-3.5 + dev-util/pkgconfig" +RDEPEND="${DEPEND}" + +src_unpack() { + unpack ${A} + + # Custom changes for gentoo + epatch "${FILESDIR}"/"${P}"-gentoo-fixups-1.diff + + 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:$(get_libdir):" "${S}"/mozilla/security/nss/config/Makefile +} + +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 BUILD_OPT=1 + export NSS_USE_SYSTEM_SQLITE=1 + export NSPR_INCLUDE_DIR=`pkg-config --cflags-only-I nspr | sed 's/-I//'` + export NSPR_LIB_DIR=`/usr/bin/pkg-config --libs-only-L nspr | sed 's/-L//'` + export USE_SYSTEM_ZLIB=1 + export ZLIB_LIBS=-lz + 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 + + # 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" + + # 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 private/nss/*.h + doins public/nss/*.h + cd "${D}"/usr/$(get_libdir)/nss + for file in *.so; do + mv ${file} ${file}.${MINOR_VERSION} + ln -s ${file}.${MINOR_VERSION} ${file} + done + + # 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 + + if use utils; then + cd "${S}"/mozilla/security/dist/*/bin/ + for f in *; do + newbin ${f} nss${f} + done + fi +} |