#Maintainer: Pedro Pinto (pnboy~AT~pinguix.com) pkgname=nss-nspr pkgver=3.12.6 _nsprver=4.8.4 pkgrel=5 zenver=64 arch=i486 source=(http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_${pkgver//./_}_RTM/src/nss-$pkgver-with-nspr-${_nsprver}.tar.gz http://pnboy.pinguix.com/my_packages/zenwalk/$pkgname/$pkgver/nss.pc.in http://pnboy.pinguix.com/my_packages/zenwalk/$pkgname/$pkgver/nspr.pc.in http://pnboy.pinguix.com/my_packages/zenwalk/$pkgname/$pkgver/nss-config.in) sourcetemplate=http://pnboy.pinguix.com/my_packages/zenwalk/$pkgname/$pkgver/ url=http://www.mozilla.org/projects/security/pki/nss/ slackdesc=\ ( #|-----handy-ruler------------------------------------------------------| "Network Security Services (NSS) & Netscape Portable Runtime (NSPR)" "Network Security Services (NSS) is a set of libraries designed to" "support cross-platform development of security-enabled client and" "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. This package includes" "Netscape Portable Runtime (NSPR) which provides a platform-neutral" "API for system level and libc like functions." ) build() { cd $startdir/src/nss-$pkgver export WORKINGDIR=$PWD export BUILD_OPT=1 cd mozilla/security/nss sed -i -e "s|NSPR_CONFIGURE_OPTS += --disable-debug --enable-optimize|NSPR_CONFIGURE_OPTS += --disable-debug --enable-optimize=\"${CFLAGS}\"|g" Makefile make nss_build_all || return 1 cd ../.. export NSS_LINUXDIR=$(basename `ls -d $WORKINGDIR/mozilla/dist/Linux*`) mkdir -p $startdir/pkg/usr/{bin,lib/pkgconfig,include/{nss,nspr}} # install -v -m755 security/nss/cmd/config/nss-config $startdir/pkg/usr/bin || return 1 install -v -m755 nsprpub/$NSS_LINUXDIR/config/nspr-config $startdir/pkg/usr/bin || return 1 NSPR_LIBS=$(./nsprpub/$NSS_LINUXDIR/config/nspr-config --libs) NSPR_CFLAGS=$(./nsprpub/$NSS_LINUXDIR/config/nspr-config --cflags) NSPR_VERSION=$(./nsprpub/$NSS_LINUXDIR/config/nspr-config --version) sed $startdir/src/nspr.pc.in \ -e "s,%libdir%,/usr/lib," \ -e "s,%prefix%,/usr," \ -e "s,%exec_prefix%,/usr/bin," \ -e "s,%includedir%,/usr/include/nspr," \ -e "s,%NSPR_VERSION%,${NSPR_VERSION}," \ -e "s,%FULL_NSPR_LIBS%,${NSPR_LIBS}," \ -e "s,%FULL_NSPR_CFLAGS%,${NSPR_CFLAGS}," > \ $startdir/pkg/usr/lib/pkgconfig/nspr.pc || return 1 NSS_VMAJOR=$(grep "#define.*NSS_VMAJOR" $startdir/src/nss-$pkgver-with-nspr-${_nsprver}/mozilla/security/nss/lib/nss/nss.h | awk '{print $3}') NSS_VMINOR=$(grep "#define.*NSS_VMINOR" $startdir/src/nss-$pkgver-with-nspr-${_nsprver}/mozilla/security/nss/lib/nss/nss.h | awk '{print $3}') NSS_VPATCH=$(grep "#define.*NSS_VPATCH" $startdir/src/nss-$pkgver-with-nspr-${_nsprver}/mozilla/security/nss/lib/nss/nss.h | awk '{print $3}') sed $startdir/src/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%,${NSPR_VERSION},g" \ -e "s,%NSS_VERSION%,${pkgver},g" > $startdir/pkg/usr/lib/pkgconfig/nss.pc || return 1 sed $startdir/src/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" > $startdir/pkg/usr/bin/nss-config || return 1 chmod 755 $startdir/pkg/usr/bin/nss-config || return 1 sed -i -e "s|/local||g" $startdir/pkg/usr/lib/pkgconfig/nss.pc $startdir/pkg/usr/lib/pkgconfig/nspr.pc || return 1 sed -i -e "s|/local||g" $startdir/pkg/usr/bin/nspr-config || return 1 cd dist install -v -m755 $NSS_LINUXDIR/lib/*.so $startdir/pkg/usr/lib || return 1 install -v -m755 $NSS_LINUXDIR/lib/{*.chk,libcrmf.a} $startdir/pkg/usr/lib || return 1 install -v -m644 {public,private}/nss/* $startdir/pkg/usr/include/nss || return 1 cp -v -RL $NSS_LINUXDIR/include/* $startdir/pkg/usr/include/nspr || return 1 chmod -v 644 $startdir/pkg/usr/include/nspr/prvrsion.h ( cd $startdir/src/nss-$pkgver-with-nspr-${_nsprver}/mozilla/dist/*.OBJ/bin || return 1 for bin in certutil modutil pk12util signtool ssltap; do find . -type f -iname "$bin" -exec install -v -m755 {} $startdir/pkg/usr/bin \; done ) # build a nss-nspr-devel package package2=$pkgname-devel-$pkgver-noarch-$zenver.$pkgrel [ -d $startdir/pkg2 ] && rm -rf $startdir/pkg2 mkdir -p $startdir/pkg2/usr/lib mv $startdir/pkg/usr/include $startdir/pkg2/usr/ mv $startdir/pkg/usr/lib/pkgconfig $startdir/pkg2/usr/lib ( cd $startdir/pkg2/usr/lib/pkgconfig ; ln -s nspr.pc mozilla-nspr.pc) ( cd $startdir/pkg2/usr/lib/pkgconfig ; ln -s nss.pc mozilla-nss.pc) cd $startdir/pkg2 mkdir -p $startdir/pkg2/install/ cat << EOF > $startdir/pkg2/install/slack-desc $pkgname-devel: $pkgname-devel (NSS & NSPR development package) $pkgname-devel: $pkgname-devel: Development files for Network Security Services (NSS) & $pkgname-devel: Netscape Portable Runtime (NSPR). EOF /sbin/makepkg -l y -c n $startdir/$package2.txz || return 1 cd $startdir md5sum $package2.txz > $startdir/$package2.md5 #empty dep file echo "">$startdir/$package2.dep rm -rvf $startdir/pkg2 unset package2 }