#!/bin/sh CWD=`pwd` TMP=/tmp PKG=$TMP/package-elvis VERSION=2.2_0 ARCH=alpha BUILD=3 TARGET=$ARCH-alphaslack-linux ( cd $TMP rm -rf $PKG mkdir -p $PKG/usr rm -rf elvis-$VERSION tar xjf $CWD/elvis-$VERSION.tar.bz2 cd elvis-$VERSION chown -R root.root . # Time for a kludge (i.e. don't suggest this kind of thing be # done as a rule... I don't know why I'm crazy today). # First we build and install this with a bogus --prefix, and # then build it again and replace the binaries. # (to prevent compiling in /tmp/package-elvis/ paths) ./configure \ --without-x \ --without-gnome \ --bindir=$PKG/bin \ --datadir=$PKG/usr/share/elvis-$VERSION \ --docdir=$PKG/usr/share/elvis-$VERSION/doc \ --verbose \ $TARGET make make install # Now we make the real binaries: make clean ./configure \ --without-x \ --without-gnome \ --bindir=/bin \ --datadir=/usr/share/elvis-$VERSION \ --docdir=/usr/share/elvis-$VERSION/doc \ --verbose \ $TARGET make # And install them: cat elvis > $PKG/bin/elvis cat elvtags > $PKG/bin/elvtags cat ref > $PKG/bin/ref chown -R root.bin $PKG/bin # Turn off color highlighting by default. I can't imagine editing files # like that all day... (this coming from the inventor of /etc/(DIR|LS)_COLORS ;-) cp -a $CWD/elvis.clr* $PKG/usr/share/elvis-$VERSION chown root.root $PKG/usr/share/elvis-$VERSION/elvis.clr* #( cd $PKG # 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 #) strip --strip-unneeded $PKG/bin/* # Install the man pages: mkdir -p $PKG/usr/man/man1 ( cd doc for file in elvfmt elvis ctags ref ; do cat $file.man | gzip -9c > $PKG/usr/man/man1/$file.1.gz done ) cp -a BUGS COPYING INSTALL README.html $PKG/usr/share/elvis-$VERSION/doc # If this is actually useful for anything, fill me in on what it's for: rm -f $PKG/usr/share/elvis-$VERSION/tags rm -f $PKG/usr/share/elvis-$VERSION/doc/*.man rm -f $PKG/usr/share/elvis-$VERSION/doc/printdoc.bat # Add /usr/bin/ex and /usr/bin/vi symlinks. ( cd $PKG/bin ; ln -sf elvis ex ; ln -sf elvis vi ) mkdir $PKG/usr/doc ( cd $PKG/usr/doc ; ln -sf /usr/share/elvis-$VERSION . ) mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cd $PKG makepkg -l y -c n $TMP/elvis-$VERSION-$ARCH-$BUILD.tgz ) 2>&1 | tee $TMP/elvis.build.log