#!/bin/bash # # pidgin-encryption.SlackBuild # code: Vicious (michal@scxd.info); improvements: Zielony (e-pl@o2.pl) set -e # PACKAGE GENERAL INFO [EDIT] PKGNAME=pidgin-encryption VERSION=3.0 BUILD=3X ARCH=i686 URL=http://kent.dl.sourceforge.net/sourceforge/pidgin-encrypt/pidgin-encryption-$VERSION.tar.gz NSSVER=3.11.4 NSSURL=ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_11_4_RTM/Linux2.6_x86_glibc_PTH_OPT.OBJ/nss-$NSSVER.tar.gz NSPRVER=4.6.4 NSPRURL=ftp://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v$NSPRVER/Linux2.6_x86_glibc_PTH_OPT.OBJ/nspr-$NSPRVER.tar.gz CWD=`pwd` TMP=/tmp/$PKGNAME if [ -e $TMP/$PKGNAME-$VERSION/'Makefile' ]; then cd $TMP/$PKGNAME-$VERSION make else if [ ! -d $TMP/$PKGNAME-$VERSION ]; then rm -rf $TMP/package mkdir -p $TMP/package/install # PACKAGE DESCRIPTION [EDIT] cat << SLACKDESC | fmt -w $(( 80 - `echo $PKGNAME | wc -c` - 3 )) | perl -pe "s/^/$PKGNAME: /" > $TMP/package/install/slack-desc Pidgin-Encryption (Pidgin plugin) Pidgin-Encryption transparently encrypts your instant messages with RSA encryption. Easy-to-use, but very secure. Package includes NSPR and NSS libraries. Package prepared by largo3 (largo3@scxd.info) SLACKDESC cd $TMP # step 1.1: DOWNLOAD SOURCE PKGFNAME=`ls -t | grep -i $PKGNAME*.t*z* | head -1` if [ -z $PKGFNAME ]; then ( wget -c $URL -P $TMP -O $PKGNAME-$VERSION.${URL//*.} ) mkdir -p $TMP/package/usr/ # step 1.2: DOWNLOAD NSS { wget -c $NSSURL -P $TMP tar xfz nss-$NSSVER.tar.gz cp -R $TMP/nss-$NSSVER/bin $TMP/package/ cp -R $TMP/nss-$NSSVER/lib $TMP/package/ cp -R $TMP/nss-$NSSVER/include $TMP/package/usr/ } # step 1.3 DOWNLOAD NSPR { wget -c $NSPRURL -P $TMP tar xfz nspr-$NSPRVER.tar.gz cp -R $TMP/nspr-$NSPRVER/bin $TMP/package/ cp -R $TMP/nspr-$NSPRVER/lib $TMP/package/ cp -R $TMP/nspr-$NSPRVER/include $TMP/package/usr/ } # step 2: UNPACK SOURCE AND COMPILE PKGFNAME=`ls -t | grep -i $PKGNAME*.t*z* | head -1` fi EXTENSION=`echo ${PKGFNAME//*.}` if [ $EXTENSION = "bz2" ]; then tar jxvf $PKGFNAME -C $TMP else tar xvfz $PKGFNAME -C $TMP fi DIRNAME=`tar tf $PKGFNAME | head -1` echo $DIRNAME | grep '/' && DIRNAME=${DIRNAME%${DIRNAME#*/}} if [ $DIRNAME != $PKGNAME-$VERSION/ ]; then mv $DIRNAME $PKGNAME-$VERSION; fi chown root:root $TMP -R fi cd $TMP/$PKGNAME-$VERSION if [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" elif [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" elif [ "$ARCH" = "i386" ]; then SLKCFLAGS="-O2 -march=i386 -mcpu=i686" elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2" fi if [ -s 'configure' ]; then CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" ./configure \ --prefix=/usr \ --disable-debug \ --mandir=/usr/man \ --sysconfdir=/etc \ --program-prefix="" \ --program-suffix="" \ --enable-nls \ --with-nspr-includes=$TMP/package/usr/include \ --with-nspr-libs=$TMP/package/lib \ --with-nss-includes=$TMP/package/usr/include \ --with-nss-libs=$TMP/package/lib \ $ARCH-slackware-linux fi make fi make install DESTDIR=$TMP/package # step 3: STRIP BINARIES & GZIP MANUALS ( cd $TMP/package find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null ) ( gzip $TMP/package/usr/man/man?/* ) # step 4: CREATE PACKAGE & CLEAN TMP cd $TMP/package if [ `ls | wc -m` -le 8 ]; then echo "Brak plików pakietu!" else ( requiredbuilder -y -s $TMP/package/install $TMP/$PKGNAME-$VERSION ) makepkg -l y -c n $CWD/$PKGNAME-$VERSION-$ARCH-$BUILD.tgz rm -rf $TMP fi