diff options
Diffstat (limited to 'source/xap/xpdf/xpdf.SlackBuild')
-rwxr-xr-x | source/xap/xpdf/xpdf.SlackBuild | 124 |
1 files changed, 68 insertions, 56 deletions
diff --git a/source/xap/xpdf/xpdf.SlackBuild b/source/xap/xpdf/xpdf.SlackBuild index d07fb9aa..5acf7c06 100755 --- a/source/xap/xpdf/xpdf.SlackBuild +++ b/source/xap/xpdf/xpdf.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -22,10 +22,20 @@ VERSION=3.02 -PATCHLEVEL=pl3 -ARCH=${ARCH:-x86_64} +PATCHLEVEL=pl4 +BUILD=${BUILD:-2} + NUMJOBS=${NUMJOBS:-" -j7 "} -BUILD=1 + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" @@ -36,25 +46,23 @@ elif [ "$ARCH" = "s390" ]; then elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" fi CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-xpdf + rm -rf $PKG mkdir -p $TMP $PKG cd $TMP rm -rf xpdf-$VERSION -tar xvf $CWD/xpdf-$VERSION.tar.gz || exit 1 +tar xvf $CWD/xpdf-$VERSION.tar.?z || exit 1 cd xpdf-$VERSION || exit 1 -zcat $CWD/xpdf-resizefix.diff.gz | patch -p1 --verbose || exit 1 -cat $CWD/xpdf-3.02pl1.patch | patch -p1 --verbose || exit 1 -cat $CWD/xpdf-3.02pl2.patch | patch -p1 --verbose || exit 1 -cat $CWD/xpdf-3.02pl3.patch | patch -p1 --verbose || exit 1 -zcat $CWD/xpdf_3.02-1.3.diff.gz | patch -p1 --verbose || exit 1 - chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ @@ -62,7 +70,14 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; -zcat $CWD/xpdfrc.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit +zcat $CWD/patches/xpdf-resizefix.diff.gz | patch -p1 --verbose || exit 1 +cat $CWD/patches/xpdf-3.02pl1.patch | patch -p1 --verbose || exit 1 +cat $CWD/patches/xpdf-3.02pl2.patch | patch -p1 --verbose || exit 1 +cat $CWD/patches/xpdf-3.02pl3.patch | patch -p1 --verbose || exit 1 +cat $CWD/patches/xpdf-3.02pl4.patch | patch -p1 --verbose || exit 1 +zcat $CWD/patches/xpdf_3.02-1.3.diff.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/xpdfrc.diff.gz | patch -p1 --verbose || exit 1 + CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ @@ -71,71 +86,68 @@ CXXFLAGS="$SLKCFLAGS" \ --mandir=/usr/man \ --sysconfdir=/etc \ --with-gzip \ - --with-freetype2-includes=/usr/include/freetype2 + --with-freetype2-includes=/usr/include/freetype2 \ + --build=$ARCH-slackware-linux make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG || exit 1 -mkdir -p $PKG/etc -cat doc/sample-xpdfrc > $PKG/etc/xpdfrc -mkdir -p $PKG/usr/share/applications -cat $CWD/xpdf.desktop > $PKG/usr/share/applications/xpdf.desktop -mkdir -p $PKG/usr/share/icons -cat xpdf/xpdfIcon.xpm > $PKG/usr/share/icons/xpdfIcon.xpm +chmod 0755 $PKG/usr/bin/* +gzip -9 $PKG/usr/man/man?/* -find $PKG | xargs file | grep -e "executable" -e "shared object" \ - | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# We'll use the versions of these from the poppler derived work (if they exist here): +( cd $PKG/usr/bin + rm -f pdfinfo pdftops pdftoppm pdftohtml pdftotext pdfimages pdffonts + cd $PKG/usr/man/man1 + for file in pdfinfo pdftops pdftoppm pdftohtml pdftotext pdfimages pdffonts ; do + rm -f ${file}.1.gz + done +) -chmod 755 $PKG/usr/bin/* -gzip -9 $PKG/usr/man/man?/* +# Don't clobber /etc/xpdfrc +mkdir -p $PKG/etc +cat doc/sample-xpdfrc > $PKG/etc/xpdfrc +mv $PKG/etc/xpdfrc $PKG/etc/xpdfrc.new -mkdir -p $PKG/usr/doc/xpdf-$VERSION -cp -a \ - ANNOUNCE CHANGES COPYING INSTALL README \ - $PKG/usr/doc/xpdf-$VERSION -chmod 644 $PKG/usr/doc/xpdf-$VERSION/* +# Add desktop menu entry and icon +mkdir -p $PKG/usr/share/{applications,pixmaps} +cat $CWD/xpdf.desktop > $PKG/usr/share/applications/xpdf.desktop +cat xpdf/xpdfIcon.xpm > $PKG/usr/share/pixmaps/xpdfIcon.xpm # Add additional language support: for language in xpdf-arabic xpdf-chinese-simplified xpdf-chinese-traditional xpdf-cyrillic xpdf-greek xpdf-hebrew xpdf-japanese xpdf-korean xpdf-latin2 xpdf-thai xpdf-turkish ; do rm -rf ${language} - tar xf $CWD/${language}.tar.gz + tar xf $CWD/lang/${language}.tar.gz ( cd ${language} - zcat $CWD/${language}.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 + zcat $CWD/lang/${language}.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 chown -R root:root . find . -type f -exec chmod 644 {} \; - cat add-to-xpdfrc >> $PKG/etc/xpdfrc + cat add-to-xpdfrc >> $PKG/etc/xpdfrc.new mkdir -p $PKG/usr/share/xpdf/$(echo ${language} | cut -f2- -d -) cp -a * $PKG/usr/share/xpdf/$(echo ${language} | cut -f2- -d -) ) done +find $PKG | xargs file | grep -e "executable" -e "shared object" \ + | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +mkdir -p $PKG/usr/doc/xpdf-$VERSION +cp -a \ + ANNOUNCE CHANGES COPYING INSTALL README \ + $PKG/usr/doc/xpdf-$VERSION +chmod 0644 $PKG/usr/doc/xpdf-$VERSION/* + +# If there's a ChangeLog, installing at least part of the recent history +# is useful, but don't let it get totally out of control: +if [ -r CHANGES ]; then + DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION) + cat CHANGES | head -n 1000 > $DOCSDIR/CHANGES + touch -r CHANGES $DOCSDIR/CHANGES +fi + mkdir -p $PKG/install -mv $PKG/etc/xpdfrc $PKG/etc/xpdfrc.new -cat << EOF > $PKG/install/doinst.sh -#!/bin/sh -config() { - NEW="\$1" - OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)" - # If there's no config file by that name, mv it over: - if [ ! -r \$OLD ]; then - mv \$NEW \$OLD - elif [ "\$(cat \$OLD | md5sum)" = "\$(cat \$NEW | md5sum)" ]; then # toss the redundant copy - rm \$NEW - fi - # Otherwise, we leave the .new copy for the admin to consider... -} -config etc/xpdfrc.new -EOF cat $CWD/slack-desc > $PKG/install/slack-desc - -# We'll use the versions of these from the poppler derived work (if they exist here): -( cd $PKG/usr/bin - rm -f pdfinfo pdftops pdftoppm pdftohtml pdftotext pdfimages pdffonts - cd $PKG/usr/man/man1 - for file in pdfinfo pdftops pdftoppm pdftohtml pdftotext pdfimages pdffonts ; do - rm -f ${file}.1.gz - done -) +zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh # Build the package: cd $PKG |