#!/bin/sh -x # variables CWD=$(pwd) APP_NAME=$(basename $CWD) VERSION=3.2.2 ARCH=$(uname -m) BUILD=1 PACKAGER=cyco TMP=/tmp/$PACKAGER PKG=$TMP/pkg-$APP_NAME OUTPUT=/tmp PREFIX=/usr DOCS="ABOUT-NLS AUTHORS ChangeLog COPYING* INSTALL NEWS README THANKS TODO" SLCKFLAGS="-O2" case $ARCH in "x86_64") SLCKFLAGS="$SLCKFLAGS -fPIC" ;; *) esac # nettoyage préalable rm -fr $PKG $TMP/$APP_NAME-$VERSION mkdir -p $PKG # mise en place ( cd $TMP [ ! -e $CWD/$APP_NAME-$VERSION.tar.xz ] && \ wget -c ftp://ftp.gnu.org/gnu/smalltalk/$APP_NAME-$VERSION.tar.xz \ -O $CWD/$APP_NAME-$VERSION.tar.xz tar xf $CWD/$APP_NAME-$VERSION.tar.xz ) ( cd $TMP/$APP_NAME-$VERSION # configuration CCPFLAGS=$SLCKFLAGS \ CFLAGS=$SLCKFLAGS \ ./configure \ --prefix=$PREFIX \ --mandir=$PREFIX/man \ --infodir=$PREFIX/info \ --docdir=$PREFIX/doc/$APP_NAME-$VERSION \ --includedir=$PREFIX/include \ --libdir=$PREFIX/lib$(echo $ARCH | grep -o 64) \ --enable-disassembler \ --enable-preemption # compilation make -j3 PREFIX=$PREFIX # installation make install DESTDIR=$PKG ) # correction chown -R root:root $PKG/* mkdir -p $PKG/usr/doc/$APP_NAME-$VERSION ( cd $TMP/$APP_NAME-$VERSION cp -R $DOCS $PKG/usr/doc/$APP_NAME-$VERSION ) [ -d $PKG/usr/man ] && find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \; [ -d $PKG/usr/info ] && find $PKG/usr/info -type f -name "*.info*" -exec gzip -9f {} \; [ -d $PKG/usr/info ] && rm $PKG/usr/info/dir # Strip binaries find $PKG | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find $PKG | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null # embaumement mkdir -p $PKG/install cat < $PKG/install/slack-desc $APP_NAME: $APP_NAME (The Smalltalk for those who can type) $APP_NAME: $APP_NAME: GNU Smalltalk is a free implementation of the Smalltalk-80 language. $APP_NAME: It runs on most POSIX compatible operating systems (including GNU/Linux, $APP_NAME: of course), as well as under Windows. Smalltalk is a dynamic $APP_NAME: object-oriented language, well-versed to scripting tasks. $APP_NAME: $APP_NAME: $APP_NAME: $APP_NAME: http://smalltalk.gnu.org/ $APP_NAME: EOF # empaquetage ( cd $PKG makepkg -l y -c n $OUTPUT/$APP_NAME-$(echo $VERSION | tr -d -)-$ARCH-$BUILD$PACKAGER.txz )