From fe06f2398040e9b873bd43a44e73fab773303618 Mon Sep 17 00:00:00 2001 From: Matthew Luckie Date: Wed, 19 Jan 2005 22:41:10 +0000 Subject: [PATCH] nss is the netscape tls library that ships with mozilla, but packaged up by itself. nss is like gnutls and openssl. the motivation for this package is borne out of problems with gnutls and gaim. http://mail-index.netbsd.org/tech-pkg/2004/12/22/0001.html http://mail-index.netbsd.org/tech-pkg/2004/12/22/0004.html http://mail-index.netbsd.org/tech-pkg/2005/01/04/0004.html in addition, i know of someone else with gaim-encryption work in progress that requires nss to work. this package (like nspr) is heavily inspired by the freebsd port's construction, with help from pkgsrc/www/mozilla/ this package does not currently build. the error message is in TODO. i'm going to ask for help shortly. --- nss/DESCR | 5 ++ nss/Makefile | 52 +++++++++++++++ nss/PLIST | 148 ++++++++++++++++++++++++++++++++++++++++++ nss/TODO | 21 ++++++ nss/buildlink3.mk | 19 ++++++ nss/distinfo | 10 +++ nss/files/nss-install | 37 +++++++++++ nss/patches/patch-aa | 13 ++++ nss/patches/patch-ab | 13 ++++ nss/patches/patch-ac | 15 +++++ nss/patches/patch-ad | 15 +++++ nss/patches/patch-ae | 12 ++++ nss/patches/patch-af | 19 ++++++ 13 files changed, 379 insertions(+) create mode 100644 nss/DESCR create mode 100644 nss/Makefile create mode 100644 nss/PLIST create mode 100644 nss/TODO create mode 100644 nss/buildlink3.mk create mode 100644 nss/distinfo create mode 100755 nss/files/nss-install create mode 100644 nss/patches/patch-aa create mode 100644 nss/patches/patch-ab create mode 100644 nss/patches/patch-ac create mode 100644 nss/patches/patch-ad create mode 100644 nss/patches/patch-ae create mode 100644 nss/patches/patch-af diff --git a/nss/DESCR b/nss/DESCR new file mode 100644 index 0000000000..16d922d2ee --- /dev/null +++ b/nss/DESCR @@ -0,0 +1,5 @@ +Network Security Services (NSS) is a set of libraries designed to support +cross-platform development of security-enabled server applications. +Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5, PKCS #7, +PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other security +standards. diff --git a/nss/Makefile b/nss/Makefile new file mode 100644 index 0000000000..ff418ec30a --- /dev/null +++ b/nss/Makefile @@ -0,0 +1,52 @@ +# $NetBSD: Makefile,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ + +DISTNAME= nss-3.9.2 +CATEGORIES= security +MASTER_SITES?= ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_9_2_RTM/src/ + +MAINTAINER= mjl@luckie.org.nz +HOMEPAGE= http://www.mozilla.org/projects/security/pki/nss/ +COMMENT= Libraries to support development of security-enabled applications + +BUILD_DEPENDS+= zip>=2.3:../../archivers/zip + +WRKSRC= ${WRKDIR}/${DISTNAME}/mozilla/security/nss + +USE_BUILDLINK3= YES +USE_PERL5= build +USE_GNU_TOOLS+= make +CFLAGS+= -I${LOCALBASE}/include/nspr +DIST= ${WRKSRC}/../../dist +BUILD_TARGET= nss_build_all +MAKE_ENV= BSD_LDOPTS="-L${LOCALBASE}/lib" BUILD_OPT=1 + +.include "../../mk/bsd.prefs.mk" + +.if ${OBJECT_FMT} == "ELF" +SO_SUFFIX= so +SCRIPTS_ENV+= NSS_INSTALL_LIB="${INSTALL_PROGRAM}" +.elif ${OBJECT_FMT} == "Mach-O" +SO_SUFFIX= dylib +SCRIPTS_ENV+= NSS_INSTALL_LIB="${INSTALL_LIB}" +.else +SO_SUFFIX= so.1.0 +SCRIPTS_ENV+= NSS_INSTALL_LIB="${INSTALL_PROGRAM}" +.endif +PLIST_SUBST+= SO_SUFFIX=${SO_SUFFIX} + +SCRIPTS_ENV+= RM=${RM:Q} +SCRIPTS_ENV+= PLIST_SRC=${PLIST_SRC:Q} +SCRIPTS_ENV+= SED=${SED:Q} +SCRIPTS_ENV+= EGREP=${EGREP:Q} +SCRIPTS_ENV+= SO_SUFFIX=${SO_SUFFIX:Q} +SCRIPTS_ENV+= DIST=${DIST:Q} +SCRIPTS_ENV+= UNAME=${UNAME:Q} +SCRIPTS_ENV+= OS_VERSION=${OS_VERSION:Q} + +do-install: + ${SETENV} ${SCRIPTS_ENV} ${SH} ${FILESDIR}/nss-install + +.include "../../devel/nspr/buildlink3.mk" +.include "../../mk/pthread.buildlink3.mk" +.include "../../mk/bsd.pkg.mk" + diff --git a/nss/PLIST b/nss/PLIST new file mode 100644 index 0000000000..cfe71515f0 --- /dev/null +++ b/nss/PLIST @@ -0,0 +1,148 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ +bin/atob +bin/bltest +bin/btoa +bin/certcgi +bin/certutil +bin/checkcert +bin/client +bin/cmsutil +bin/crlutil +bin/dbtest +bin/derdump +bin/digest +bin/instinit +bin/makepqg +bin/mangle +bin/modutil +bin/newuser +bin/ocspclnt +bin/oidcalc +bin/p7content +bin/p7env +bin/p7sign +bin/p7verify +bin/pk12util +bin/pp +bin/rsaperf +bin/sdrtest +bin/selfserv +bin/server +bin/shlibsign +bin/signtool +bin/signver +bin/ssltap +bin/strsclnt +bin/symkeyutil +bin/tstclnt +bin/vfychain +bin/vfyserv +include/nss/dbm/cdefs.h +include/nss/dbm/mcom_db.h +include/nss/dbm/ncompat.h +include/nss/dbm/nsres.h +include/nss/dbm/winfile.h +include/nss/nss/base64.h +include/nss/nss/blapit.h +include/nss/nss/cert.h +include/nss/nss/certdb.h +include/nss/nss/certt.h +include/nss/nss/ciferfam.h +include/nss/nss/cmmf.h +include/nss/nss/cmmft.h +include/nss/nss/cms.h +include/nss/nss/cmsreclist.h +include/nss/nss/cmst.h +include/nss/nss/crmf.h +include/nss/nss/crmft.h +include/nss/nss/cryptohi.h +include/nss/nss/cryptoht.h +include/nss/nss/ecl-exp.h +include/nss/nss/hasht.h +include/nss/nss/jar-ds.h +include/nss/nss/jar.h +include/nss/nss/jarfile.h +include/nss/nss/key.h +include/nss/nss/keyhi.h +include/nss/nss/keyt.h +include/nss/nss/keythi.h +include/nss/nss/nss.h +include/nss/nss/nssb64.h +include/nss/nss/nssb64t.h +include/nss/nss/nssbase.h +include/nss/nss/nssbaset.h +include/nss/nss/nssck.api +include/nss/nss/nssckbi.h +include/nss/nss/nssckepv.h +include/nss/nss/nssckft.h +include/nss/nss/nssckfw.h +include/nss/nss/nssckfwc.h +include/nss/nss/nssckfwt.h +include/nss/nss/nssckg.h +include/nss/nss/nssckmdt.h +include/nss/nss/nssckt.h +include/nss/nss/nssilckt.h +include/nss/nss/nssilock.h +include/nss/nss/nsslocks.h +include/nss/nss/nssrwlk.h +include/nss/nss/nssrwlkt.h +include/nss/nss/ocsp.h +include/nss/nss/ocspt.h +include/nss/nss/p12.h +include/nss/nss/p12plcy.h +include/nss/nss/p12t.h +include/nss/nss/pk11func.h +include/nss/nss/pk11pqg.h +include/nss/nss/pk11sdr.h +include/nss/nss/pkcs11.h +include/nss/nss/pkcs11f.h +include/nss/nss/pkcs11n.h +include/nss/nss/pkcs11p.h +include/nss/nss/pkcs11t.h +include/nss/nss/pkcs11u.h +include/nss/nss/pkcs12.h +include/nss/nss/pkcs12t.h +include/nss/nss/pkcs7t.h +include/nss/nss/portreg.h +include/nss/nss/preenc.h +include/nss/nss/secasn1.h +include/nss/nss/secasn1t.h +include/nss/nss/seccomon.h +include/nss/nss/secder.h +include/nss/nss/secdert.h +include/nss/nss/secdig.h +include/nss/nss/secdigt.h +include/nss/nss/secerr.h +include/nss/nss/sechash.h +include/nss/nss/secitem.h +include/nss/nss/secmime.h +include/nss/nss/secmod.h +include/nss/nss/secmodt.h +include/nss/nss/secoid.h +include/nss/nss/secoidt.h +include/nss/nss/secpkcs5.h +include/nss/nss/secpkcs7.h +include/nss/nss/secport.h +include/nss/nss/shsign.h +include/nss/nss/smime.h +include/nss/nss/ssl.h +include/nss/nss/sslerr.h +include/nss/nss/sslproto.h +include/nss/nss/sslt.h +include/nss/nss/swfort.h +include/nss/nss/swfortt.h +include/nss/nss/watcomfx.h +include/nss/seccmd/secutil.h +include/nss/seccmd/zconf.h +include/nss/seccmd/zlib.h +lib/libfort.${SO_SUFFIX} +lib/libnss3.${SO_SUFFIX} +lib/libnssckbi.${SO_SUFFIX} +lib/libsmime3.${SO_SUFFIX} +lib/libsoftokn3.${SO_SUFFIX} +lib/libssl3.${SO_SUFFIX} +lib/libswft.${SO_SUFFIX} +@dirrm include/nss/seccmd +@dirrm include/nss/nss +@dirrm include/nss/dbm +@dirrm include/nss diff --git a/nss/TODO b/nss/TODO new file mode 100644 index 0000000000..1725db0ff1 --- /dev/null +++ b/nss/TODO @@ -0,0 +1,21 @@ +i don't know what i'm doing with the buildlink3.mk file. + +the compile currently stops with: + +gmake[3]: Leaving directory `/usr/pkgsrc/security/nss/work/nss-3.9.2/mozilla/security/nss/cmd/shlibsign/mangle' +NetBSD1.6.1_RC2_OPT.OBJ/shlibsign -v -i ../../../../dist/NetBSD1.6.1_RC2_OPT.OBJ/lib/libsoftokn3.so +Shared object "libplc4.so" not found +gmake[2]: *** [../../../../dist/NetBSD1.6.1_RC2_OPT.OBJ/lib/libsoftokn3.chk] Error 1 +gmake[2]: Leaving directory `/usr/pkgsrc/security/nss/work/nss-3.9.2/mozilla/security/nss/cmd/shlibsign' +gmake[1]: *** [libs] Error 2 +gmake[1]: Leaving directory `/usr/pkgsrc/security/nss/work/nss-3.9.2/mozilla/security/nss/cmd' +gmake: *** [libs] Error 2 +*** Error code 2 + +Stop. +make: stopped in /usr/pkgsrc/security/nss +*** Error code 1 + +Stop. +make: stopped in /usr/pkgsrc/security/nss + diff --git a/nss/buildlink3.mk b/nss/buildlink3.mk new file mode 100644 index 0000000000..bba1d87c7e --- /dev/null +++ b/nss/buildlink3.mk @@ -0,0 +1,19 @@ +# $NetBSD: buildlink3.mk,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ + +BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+ +NSS_BUILDLINK3_MK:= ${NSS_BUILDLINK3_MK}+ + +.if !empty(BUILDLINK_DEPTH:M+) +BUILDLINK_DEPENDS+= nss +.endif + +BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Nnss} +BUILDLINK_PACKAGES+= nss + +.if !empty(NSS_BUILDLINK3_MK:M+) +BUILDLINK_DEPENDS.nss+= nss>=3.9.2 +BUILDLINK_RECOMMENDED.nss+= nss>=3.9.2 +BUILDLINK_PKGSRCDIR.nss?= ../../security/nss +.endif # NSS_BUILDLINK3_MK + +BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//} diff --git a/nss/distinfo b/nss/distinfo new file mode 100644 index 0000000000..02cae2a06f --- /dev/null +++ b/nss/distinfo @@ -0,0 +1,10 @@ +$NetBSD: distinfo,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ + +SHA1 (nss-3.9.2.tar.gz) = 017b748d92c5f7376bda78915d1b78b260b44133 +Size (nss-3.9.2.tar.gz) = 4734817 bytes +SHA1 (patch-aa) = 3b0d0eb22b498d72514e4616b101d93fedc2f53d +SHA1 (patch-ab) = 21008be57eb73f4ddd36cf89d9ca56aa082a43ee +SHA1 (patch-ac) = f1857c2e7de7746e66602155cc3d10996a62fc6b +SHA1 (patch-ad) = 0fecd3fc1e5865525bcfce2fc6140622bc7a8f19 +SHA1 (patch-ae) = 89a316ddd87ac65c675beae33fabc5c0c12667f2 +SHA1 (patch-af) = 4c933d1cfb1ec4708b69dec18ea6b3acfbd91cfa diff --git a/nss/files/nss-install b/nss/files/nss-install new file mode 100755 index 0000000000..d8832c54a4 --- /dev/null +++ b/nss/files/nss-install @@ -0,0 +1,37 @@ +#!/bin/sh +# +# $NetBSD: nss-install,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ +# +# this script takes care of installing the nspr package, and is based on +# the moz-install script found in pkgsrc/www/mozilla/ +# + +# generate the PLIST that will be installed +# use a trap to ensure that the TMP_PLIST is removed if something goes wrong +# +TMP_PLIST=${WRKDIR}/TMP_PLIST.$$ +trap "${RM} -f ${TMP_PLIST}" 1 2 15 +${SED} -e "s/\${SO_SUFFIX}/${SO_SUFFIX}/" < ${PLIST_SRC} > ${TMP_PLIST} + +# make directories to install the includes +${BSD_INSTALL_DATA_DIR} ${PREFIX}/include/nss +for dir in dbm nss seccmd ; do + ${BSD_INSTALL_DATA_DIR} ${PREFIX}/include/nss/$dir +done + +# install the includes +for i in `${EGREP} ^include/nss ${TMP_PLIST}` ; do + ${BSD_INSTALL_DATA} ${DIST}/public/$i ${PREFIX}/$i +done + +# install the libraries +for i in `${EGREP} ^lib/ ${TMP_PLIST}` ; do + src=`echo $i | ${SED} -e "s@lib@${UNAME}${OS_VERSION}_OPT\.OBJ/lib@"`; + ${NSS_INSTALL_LIB} ${DIST}/${src} ${PREFIX}/$i +done + +# install the binaries +for i in `${EGREP} ^bin/ ${TMP_PLIST}` ; do + src=`echo $i | ${SED} -e "s@bin@${UNAME}${OS_VERSION}_OPT\.OBJ/bin@"`; + ${BSD_INSTALL_PROGRAM} ${DIST}/${src} ${PREFIX}/$i +done diff --git a/nss/patches/patch-aa b/nss/patches/patch-aa new file mode 100644 index 0000000000..5ecf81c10b --- /dev/null +++ b/nss/patches/patch-aa @@ -0,0 +1,13 @@ +$NetBSD: patch-aa,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ + +--- Makefile.orig Tue Jan 4 21:17:13 2005 ++++ Makefile Tue Jan 4 21:17:25 2005 +@@ -74,7 +74,7 @@ + # (7) Execute "local" rules. (OPTIONAL). # + ####################################################################### + +-nss_build_all: build_coreconf build_nspr build_dbm all ++nss_build_all: build_coreconf build_dbm all + + build_coreconf: + cd $(CORE_DEPTH)/coreconf ; $(MAKE) diff --git a/nss/patches/patch-ab b/nss/patches/patch-ab new file mode 100644 index 0000000000..93fe95563c --- /dev/null +++ b/nss/patches/patch-ab @@ -0,0 +1,13 @@ +$NetBSD: patch-ab,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ + +--- ../coreconf/command.mk 2002/08/08 17:20:41 1.1 ++++ ../coreconf/command.mk 2002/08/08 17:20:54 +@@ -42,7 +42,7 @@ + LINK_DLL = $(LINK) $(OS_DLLFLAGS) $(DLLFLAGS) + LINK_EXE = $(LINK) $(OS_LFLAGS) $(LFLAGS) + NFSPWD = $(NSINSTALL_DIR)/nfspwd +-CFLAGS = $(OPTIMIZER) $(OS_CFLAGS) $(XP_DEFINE) $(DEFINES) $(INCLUDES) \ ++CFLAGS += $(OPTIMIZER) $(OS_CFLAGS) $(XP_DEFINE) $(DEFINES) $(INCLUDES) \ + $(XCFLAGS) + RANLIB = echo + TAR = /bin/tar diff --git a/nss/patches/patch-ac b/nss/patches/patch-ac new file mode 100644 index 0000000000..ef8dd5e19f --- /dev/null +++ b/nss/patches/patch-ac @@ -0,0 +1,15 @@ +$NetBSD: patch-ac,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ + +--- lib/fortcrypt/swfort/pkcs11/Makefile.orig Sat Feb 16 00:53:46 2002 ++++ lib/fortcrypt/swfort/pkcs11/Makefile Thu Aug 8 21:27:33 2002 +@@ -76,8 +76,8 @@ + $(DIST)/lib/$(LIB_PREFIX)softokn.$(LIB_SUFFIX) \ + $(CRYPTO_LIB) \ + $(DIST)/lib/$(LIB_PREFIX)secutil.$(LIB_SUFFIX) \ +- $(DIST)/lib/$(LIB_PREFIX)plc4.$(LIB_SUFFIX) \ +- $(DIST)/lib/$(LIB_PREFIX)plds4.$(LIB_SUFFIX) \ ++ -lplc4 \ ++ -lplds4 \ + $(NULL) + + endif diff --git a/nss/patches/patch-ad b/nss/patches/patch-ad new file mode 100644 index 0000000000..dbc5115e2c --- /dev/null +++ b/nss/patches/patch-ad @@ -0,0 +1,15 @@ +$NetBSD: patch-ad,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ + +--- lib/ckfw/builtins/Makefile.orig Sat Feb 16 00:53:42 2002 ++++ lib/ckfw/builtins/Makefile Thu Aug 8 21:29:48 2002 +@@ -54,8 +54,8 @@ + else + + EXTRA_LIBS += \ +- $(DIST)/lib/$(LIB_PREFIX)plc4.$(LIB_SUFFIX) \ +- $(DIST)/lib/$(LIB_PREFIX)plds4.$(LIB_SUFFIX) \ ++ -lplc4 \ ++ -lplds4 \ + $(NULL) + + endif diff --git a/nss/patches/patch-ae b/nss/patches/patch-ae new file mode 100644 index 0000000000..88171d99ab --- /dev/null +++ b/nss/patches/patch-ae @@ -0,0 +1,12 @@ +$NetBSD: patch-ae,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ + +--- cmd/platlibs.mk.orig Thu Jan 20 06:55:35 2005 ++++ cmd/platlibs.mk Thu Jan 20 06:56:07 2005 +@@ -216,6 +216,7 @@ + -L$(DIST)/lib \ + -lssl3 \ + -lsmime3 \ ++ -lsoftokn3 \ + -lnss3 \ + -lplc4 \ + -lplds4 \ diff --git a/nss/patches/patch-af b/nss/patches/patch-af new file mode 100644 index 0000000000..58051ec9a5 --- /dev/null +++ b/nss/patches/patch-af @@ -0,0 +1,19 @@ +$NetBSD: patch-af,v 1.1.1.1 2005/01/19 22:41:10 matthewluckie Exp $ + +--- ../coreconf/NetBSD.mk.orig Thu Jan 20 09:04:51 2005 ++++ ../coreconf/NetBSD.mk Thu Jan 20 09:06:49 2005 +@@ -58,12 +58,12 @@ + + OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -ansi -Wall -pipe -DNETBSD -Dunix -DHAVE_STRERROR -DHAVE_BSD_FLOCK + +-OS_LIBS = -lcompat ++OS_LIBS = -lcompat $(BSD_LDOPTS) + + ARCH = netbsd + + DSO_CFLAGS = -fPIC -DPIC +-DSO_LDOPTS = -shared ++DSO_LDOPTS = -shared $(BSD_LDOPTS) + DSO_LDFLAGS = + ifeq ($(OBJECT_FMT),ELF) + DSO_LDOPTS += -Wl,-soname,lib$(LIBRARY_NAME)$(LIBRARY_VERSION).$(DLL_SUFFIX)