diff options
Diffstat (limited to 'testing/nss/PKGBUILD')
-rw-r--r-- | testing/nss/PKGBUILD | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/testing/nss/PKGBUILD b/testing/nss/PKGBUILD new file mode 100644 index 000000000..d24c3c91c --- /dev/null +++ b/testing/nss/PKGBUILD @@ -0,0 +1,105 @@ +# $Id: PKGBUILD 150999 2012-02-24 13:00:04Z ibiru $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgname=nss +pkgver=3.13.3 +pkgrel=1 +pkgdesc="Mozilla Network Security Services" +arch=(i686 x86_64) +url="http://www.mozilla.org/projects/security/pki/nss/" +license=('MPL' 'GPL') +_nsprver=4.9 +depends=("nspr>=${_nsprver}" 'sqlite3' 'zlib' 'sh') +makedepends=('perl') +options=('!strip') +source=(ftp://ftp.mozilla.org/pub/security/nss/releases/NSS_${pkgver//./_}/src/${pkgname}-${pkgver}.tar.gz + nss-no-rpath.patch + nss.pc.in + nss-config.in + add_spi+cacert_ca_certs.patch + ssl-renegotiate-transitional.patch) +sha1sums=('6b8b92d3de893ae67dc04ce9a14ab5c9495dd4a6' + 'c8fcdb153af9d39689243119adb475905a657284' + 'aa5b2c0aa38d3c1066d511336cf28d1333e3aebd' + 'cb744cc3e56b604e4754bc3c7d9f25bb9a0a136c' + '3d89f29e321d7df7269b7ae6d219654543feaa6a' + '8a964a744ba098711b80c0d279a2993524e8eb92') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}/mozilla" + # Adds the SPI Inc. and CAcert.org CA certificates - patch from Debian, modified to apply on certdata.txt only + patch -Np2 -i "${srcdir}/add_spi+cacert_ca_certs.patch" + # Adds transitional SSL renegotiate support - patch from Debian + patch -Np2 -i "${srcdir}/ssl-renegotiate-transitional.patch" + # Removes rpath + patch -Np2 -i "${srcdir}/nss-no-rpath.patch" + + # Respect LDFLAGS + sed -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/g' \ + -i security/coreconf/rules.mk + + # Generate certdata.c from certdata.txt + cd security/nss/lib/ckfw/builtins + make generate + + cd "${srcdir}/${pkgname}-${pkgver}" + export BUILD_OPT=1 + export PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 + export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 + export NSS_USE_SYSTEM_SQLITE=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 XCFLAGS="${CFLAGS}" + + [ "$CARCH" = "x86_64" ] && export USE_64=1 + + make -j 1 -C mozilla/security/coreconf + make -j 1 -C mozilla/security/dbm + make -j 1 -C mozilla/security/nss +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + install -m755 -d "${pkgdir}/usr/lib/pkgconfig" + install -m755 -d "${pkgdir}/usr/bin" + install -m755 -d "${pkgdir}/usr/include/nss" + + NSS_VMAJOR=`grep "#define.*NSS_VMAJOR" mozilla/security/nss/lib/nss/nss.h | awk '{print $3}'` + NSS_VMINOR=`grep "#define.*NSS_VMINOR" mozilla/security/nss/lib/nss/nss.h | awk '{print $3}'` + NSS_VPATCH=`grep "#define.*NSS_VPATCH" mozilla/security/nss/lib/nss/nss.h | awk '{print $3}'` + + sed "${srcdir}/nss.pc.in" -e "s,%libdir%,/usr/lib,g" \ + -e "s,%prefix%,/usr,g" \ + -e "s,%exec_prefix%,/usr/bin,g" \ + -e "s,%includedir%,/usr/include/nss,g" \ + -e "s,%NSPR_VERSION%,${pkgver},g" \ + -e "s,%NSS_VERSION%,${pkgver},g" > \ + "${pkgdir}/usr/lib/pkgconfig/nss.pc" + ln -sf nss.pc "${pkgdir}/usr/lib/pkgconfig/mozilla-nss.pc" + chmod 644 ${pkgdir}/usr/lib/pkgconfig/*.pc + + sed "${srcdir}/nss-config.in" -e "s,@libdir@,/usr/lib,g" \ + -e "s,@prefix@,/usr/bin,g" \ + -e "s,@exec_prefix@,/usr/bin,g" \ + -e "s,@includedir@,/usr/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" \ + > "${pkgdir}/usr/bin/nss-config" + chmod 755 "${pkgdir}/usr/bin/nss-config" + + for file in libsoftokn3.so libfreebl3.so libnss3.so libnssutil3.so \ + libssl3.so libsmime3.so libnssckbi.so libnssdbm3.so + do + install -m755 mozilla/dist/*.OBJ/lib/${file} "${pkgdir}/usr/lib/" + done + + install -m644 mozilla/dist/*.OBJ/lib/libcrmf.a "${pkgdir}/usr/lib/" + install -m644 mozilla/dist/*.OBJ/lib/*.chk "${pkgdir}/usr/lib/" + + for file in certutil cmsutil crlutil modutil pk12util shlibsign signtool signver ssltap; do + install -m755 mozilla/dist/*.OBJ/bin/${file} "${pkgdir}/usr/bin/" + done + + install -m644 mozilla/dist/public/nss/*.h "${pkgdir}/usr/include/nss/" +} |