#!/bin/bash set -xe ###################################################### # Configure extension creation parameters # ###################################################### S=$(basename $0) PACKAGE=${S%%.build} VERSION=0.99.1 SRCNAM=flCalc-$VERSION.tar.gz WRKDIR=flCalc EXTNAM=$PACKAGE TMPDIR=/tmp/$PACKAGE-$VERSION OUTDIR=$PWD/../../build/$(version) ###################################################### # Prepare extension creation # ###################################################### # Remove dirs and files left from previous creation rm -r -f $WRKDIR rm -r -f $TMPDIR # Crete temporary directory mkdir -p $TMPDIR ###################################################### # Compile extension # ###################################################### # Export variables needed for compilation export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig export CPPFLAGS="-I/usr/local/include -I/usr/include" export CFLAGS="-Os -pipe -march=i486 -mtune=i686" export CXXFLAGS="-Os -pipe -fno-exceptions -fno-rtti -march=i486 -mtune=i686" export LDFLAGS="-Wl,-Os" # Unpack source in to WRK directory tar -xf $SRCNAM pushd $WRKDIR patch -p0 -bz .compat < ../flCalc-0.99.1-1-compat.patch patch -p1 -bz .bigsize < ../flCalc-0.99.1-2-bigsize.patch cp ../calc.xpm ./ICONS/calc.xpm cp ../flcalc.desktop ../calc.png ../COPYING ./ # Configure,Compile,Check,Install in base temp dir make # Installation install -Dm755 flcalc $TMPDIR/usr/local/bin/flcalc install -Dm755 flcalc.desktop $TMPDIR/usr/local/share/applications/flcalc.desktop install -Dm644 calc.png $TMPDIR/usr/local/share/pixmaps/flcalc.png install -Dm644 COPYING $TMPDIR/usr/local/share/doc/$PACKAGE/COPYING # Delete compilation work directory popd rm -r -f $WRKDIR # Strip executables find $TMPDIR | xargs file | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded ################################################### # Create base extension in temp dir # ################################################### mkdir -p "$OUTDIR" mksquashfs $TMPDIR $OUTDIR/$EXTNAM.tcz -noappend -no-xattrs -all-root rm -rf $TMPDIR ################################################### # Update info/tree/dep/build-dep cp $EXTNAM.tcz.build-dep $OUTDIR/ for INFO in *.tcz.info; do TCZ=${INFO%%.info} SIZE=$(ls -sh "$OUTDIR/$TCZ" | cut -f1 -d' ') sed -re "s/\{SIZE\}/$SIZE/g" -e "s/\{TITLE\}/$TCZ/g" -e "s/\{VERSION\}/$VERSION/g" <$INFO >$OUTDIR/$INFO if [ -f $TCZ.tree ]; then cp $TCZ.tree $OUTDIR/$TCZ.tree cat $TCZ.tree | grep -wv "$TCZ" | sed -re 's/^[ \t]+//' | sort | uniq > $OUTDIR/$TCZ.dep fi done ################################################### # submitqc pushd $OUTDIR submitqc --libs --tcz=$EXTNAM.tcz popd