#!/bin/sh -x # variables CWD=$(pwd) APP_NAME=$(basename $CWD) VERSION=3.0.9 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.?z* ] && \ wget -c ftp://sourceware.org/pub/libffi/$APP_NAME-$VERSION.tar.gz \ -O $CWD/$APP_NAME-$VERSION.tar.gz tar xf $CWD/$APP_NAME-$VERSION.tar.?z* ) ( cd $TMP/$APP_NAME-$VERSION # configuration CCPFLAGS=$SLCKFLAGS \ CFLAGS=$SLCKFLAGS \ LIBS="-lncursesw" \ LDFLAGS="-L$PREFIX/lib$(echo $ARCH | grep -o 64)" \ ./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) # compilation make -j3 PREFIX=$PREFIX # installation make install DESTDIR=$PKG # WAT‽ cp -R $PKG$PREFIX/lib$(echo $ARCH | grep -o 64)/$APP_NAME-$VERSION/include $PKG$PREFIX/ ) # 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 (A Portable Foreign Function Interface Library ) $APP_NAME: $APP_NAME: $APP_NAME: $APP_NAME: $APP_NAME: $APP_NAME: $APP_NAME: $APP_NAME: $APP_NAME: http://sourceware.org/libffi/ $APP_NAME: EOF # empaquetage ( cd $PKG makepkg -l y -c n $OUTPUT/$APP_NAME-$(echo $VERSION | tr -d -)-$ARCH-$BUILD$PACKAGER.txz )