summaryrefslogtreecommitdiffstats
path: root/abs/extra/nss/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/nss/PKGBUILD')
-rw-r--r--abs/extra/nss/PKGBUILD139
1 files changed, 65 insertions, 74 deletions
diff --git a/abs/extra/nss/PKGBUILD b/abs/extra/nss/PKGBUILD
index 77bc6ef..09c9d97 100644
--- a/abs/extra/nss/PKGBUILD
+++ b/abs/extra/nss/PKGBUILD
@@ -1,106 +1,97 @@
-# $Id: PKGBUILD 162023 2012-06-18 22:10:13Z ibiru $
+# $Id$
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=nss
-pkgver=3.13.5
+pkgver=3.15.1
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.1
+_nsprver=4.10
depends=("nspr>=${_nsprver}" 'sqlite' 'zlib' 'sh')
makedepends=('perl')
-options=('!strip')
+options=('!strip' '!makeflags')
source=(ftp://ftp.mozilla.org/pub/security/nss/releases/NSS_${pkgver//./_}_RTM/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=('22cfe2cbccc93189699e6eed283eca288b45f6cb'
- 'c8fcdb153af9d39689243119adb475905a657284'
+ ssl-renegotiate-transitional.patch
+ add_spi+cacert_ca_certs.patch)
+sha1sums=('1aa7c0ff8af7fb2c8b6e4886ae2291f4bfe0d5c0'
'aa5b2c0aa38d3c1066d511336cf28d1333e3aebd'
'cb744cc3e56b604e4754bc3c7d9f25bb9a0a136c'
- '3d89f29e321d7df7269b7ae6d219654543feaa6a'
- '8a964a744ba098711b80c0d279a2993524e8eb92')
+ '8a964a744ba098711b80c0d279a2993524e8eb92'
+ 'be6ef0f124f188ebb76f4d83e13466bdcfb27dd3')
+
+prepare() {
+ cd $pkgname-$pkgver
+
+ # Add CAcert and spi-inc.org CA certificates.
+ # See http://wiki.cacert.org/NSSLib for how to generate
+ patch -Np1 -i ../add_spi+cacert_ca_certs.patch
-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"
+ patch -Np3 -i ../ssl-renegotiate-transitional.patch
# Respect LDFLAGS
- sed -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/g' \
- -i security/coreconf/rules.mk
+ sed -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/' \
+ -i nss/coreconf/rules.mk
+}
+
- # Generate certdata.c from certdata.txt
- cd security/nss/lib/ckfw/builtins
- make generate
+build() {
+ cd $pkgname-$pkgver/nss
- 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 NSS_ENABLE_ECC=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 NSPR_INCLUDE_DIR="`nspr-config --includedir`"
+ export NSPR_LIB_DIR="`nspr-config --libdir`"
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
+ make -C coreconf
+ make -C lib/dbm
+ make
}
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/"
+ cd $pkgname-$pkgver
+ install -d "$pkgdir"/usr/{bin,include/nss,lib/pkgconfig}
+
+ NSS_VMAJOR=$(grep '#define.*NSS_VMAJOR' nss/lib/nss/nss.h | awk '{print $3}')
+ NSS_VMINOR=$(grep '#define.*NSS_VMINOR' nss/lib/nss/nss.h | awk '{print $3}')
+ NSS_VPATCH=$(grep '#define.*NSS_VPATCH' nss/lib/nss/nss.h | awk '{print $3}')
+
+ sed ../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%,${_nsprver},g" \
+ -e "s,%NSS_VERSION%,${pkgver},g" \
+ > "$pkgdir/usr/lib/pkgconfig/nss.pc"
+ ln -s nss.pc "$pkgdir/usr/lib/pkgconfig/mozilla-nss.pc"
+
+ sed ../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"
+
+ cd dist/*.OBJ/bin
+ install -t "$pkgdir/usr/bin" *util shlibsign signtool signver ssltap
+
+ cd ../lib
+ install -t "$pkgdir/usr/lib" *.so
+ install -t "$pkgdir/usr/lib" -m644 libcrmf.a *.chk
+
+ cd ../../public/nss
+ install -t "$pkgdir/usr/include/nss" -m644 *.h
}