#!/bin/bash # Automatic build script for synfigstudio # Created by: IL'dar AKHmetgaleev, Konstantin Dmitriev OPT=$HOME/synfig-svn PREFIX=synfig SRCDIR=src CC=gcc CXX=g++ CFLAGS=$CFLAGS CXXFLAGS=$CFLAGS export PKG_CONFIG_PATH="$OPT/$PREFIX/lib/pkgconfig:$PKG_CONFIG_PATH" export PATH="$OPT/$PREFIX/bin:$PATH" subpackages="ETL synfig-core synfig-studio" if (test "$2"); then REVISION=$2 else REVISION=HEAD fi [ -e $OPT ] || mkdirhier $OPT get () { [ -e $OPT/$SRCDIR ] || mkdirhier $OPT/$SRCDIR cd $OPT/$SRCDIR for n in $subpackages do echo "svn co -r $REVISION http://svn.voria.com/code/$n/trunk/ $n" svn co -r $REVISION http://svn.voria.com/code/$n/trunk/ $n done } conf() { cd $OPT/$SRCDIR/$1 shift libtoolize --ltdl --copy -f autoreconf -if CC=$CC CXX=$CXX CFLAGS=$CFLAGS CXXFLAGS=$CXXFLAGS ./configure --prefix=$OPT/$PREFIX || exit $? } mk() { cd $OPT/$SRCDIR/$1 shift make $@ || exit $? } todo="" while true do dobreak=true for p in $subpackages do [ x$1 = x$p ] && todo="$todo $p" && dobreak=false done $dobreak && break shift done [ "x$todo" = x ] && todo=$subpackages case $1 in get) get exit;; configure) for p in $todo do conf $p done exit;; update) get for p in $todo do mk $p mk $p install done exit;; initialize) get for p in $todo do conf $p mk $p clean mk $p mk $p install done exit;; *) for p in $todo do mk $p $@ done exit;; esac read