#!/bin/sh # Copyright 2006, 2007, 2008 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is # permitted provided that the following conditions are met: # # 1. Redistributions of this script must retain the above copyright # notice, this list of conditions and the following disclaimer. # # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PKGNAM=ghostscript VERSION=${VERSION:-8.63} BUILD=${BUILD:-3} . /etc/pkghelpers pkghelpers_env rm -rf $PKG mkdir -p $PKG cd $TMP rm -rf ${PKGNAM}-${VERSION} tar xjvf $CWD/${PKGNAM}-$VERSION.tar.bz2 || exit 1 cd ${PKGNAM}-$VERSION # Patch gs_res.ps to find resources in the correct directories: zcat $CWD/ghostscript-8.63.gs_res.ps.diff.gz | patch -p1 --verbose || exit 1 # Don't draw in the (experimental) cairo dependency: zcat $CWD/ghostscript.nocairo.diff.gz | patch -p1 --verbose || exit 1 # Regenerate ./configure: sh autogen.sh # Make sure ownerships and permissions are sane: pkghelpers_permissions # Build/install IJS: ( cd ijs if [ ! -r configure ]; then sh autogen.sh fi CFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ --libdir=/usr/lib$LIBSUFFIX \ --sysconfdir=/etc \ --mandir=/usr/man \ --program-prefix= \ --program-suffix= \ --build=$ARCH-$DISTRO-linux make make install make install DESTDIR=$PKG ) || exit 1 # Configure: CFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ --libdir=/usr/lib$LIBSUFFIX \ --sysconfdir=/etc \ --mandir=/usr/man \ --with-fontpath=/usr/share/fonts/TTF \ --with-ijs \ --disable-compile-inits \ --enable-dynamic \ --enable-cairo=no \ --program-prefix= \ --program-suffix= \ --build=$ARCH-$DISTRO-linux # Build and install: make || exit 1 make install DESTDIR=$PKG || exit 1 make clean || exit 1 make so || exit 1 make soinstall DESTDIR=$PKG || exit 1 # Replace the default cidfmap with one containing additional # support for CJK printing: if [ -r $PKG/usr/share/ghostscript/${VERSION}/lib/cidfmap ]; then mv $PKG/usr/share/ghostscript/${VERSION}/lib/cidfmap $PKG/usr/share/ghostscript/${VERSION}/lib/cidfmap.default.ghostscript-${VERSION} zcat $CWD/cidfmap.gz > $PKG/usr/share/ghostscript/${VERSION}/lib/cidfmap.new fi # Add a documentation directory: mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION ( cd doc cp -a \ COPYING ../LICENSE README \ $PKG/usr/doc/${PKGNAM}-$VERSION ) ( cd $PKG/usr/doc/${PKGNAM}-$VERSION ln -sf /usr/share/ghostscript/$VERSION/doc doc ) mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc 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 usr/share/ghostscript/${VERSION}/lib/cidfmap.new EOF cd $PKG pkghelpers_fixup pkghelpers_makepkg