X-Git-Url: https://git.harvie.cz/?a=blobdiff_plain;f=tools%2Fbake;h=dfeefb6a9f5bd622d52316c7bd1f7f9316fc41ef;hb=96df7894a6fa368e5b333fc72896e30b471f5992;hp=77ea78d68c8430ccf889b4e7d5568b21aa38b03c;hpb=25a3f4304e39dce85a217fd3166df867a5d75b96;p=svn%2FCll1h%2F.git diff --git a/tools/bake b/tools/bake index 77ea78d..dfeefb6 100755 --- a/tools/bake +++ b/tools/bake @@ -2,48 +2,58 @@ CONF="/etc/bake.conf" CLL1CC=`which gcc` CFLAGS="-std=c99 -Wall" -EXE=`basename $1 .c` DEBUG=n function debugecho { if [ $DEBUG == y ] then - echo $1 + echo $1 fi } if [ "$1" == "" ] || [ "$EXE" == "$1" ] then - echo "Usage: bake filename.c" - exit + echo "Usage: bake source.c or bake target" + exit else - debugecho "Filename: $1" -fi + while [ "$1" != "" ] + do + EXE=`basename $1 .c` + if [ $1 == $EXE ] + then + SRC=$EXE.c + else + SRC=$1 + fi + debugecho "Filename: $SRC" + + LIBNAMES=`grep "^#define" $SRC|grep USE_LIBRARY_|cut -f 2 -d " "` + if ! [ -z "$LIBNAMES" ] + then + debugecho "Libraries: $LIBNAMES" + LIBS="" + for F in $LIBNAMES + do + LIBS="$LIBS `grep $F $CONF|cut -f 2 -d \ `" + done + fi -LIBNAMES=`grep "^#define" $1|grep USE_LIBRARY_|cut -f 2 -d " "` -if ! [ -z "$LIBNAMES" ] -then - debugecho "Libraries: $LIBNAMES" - LIBS="" - for F in $LIBNAMES - do - LIBS="$LIBS `grep $F $CONF|cut -f 2 -d \ `" - done -fi + PRENAMES=`grep "^#define" $SRC|grep USE_PREPROCESSOR_|cut -f 2 -d " "` + if ! [ -z "$PRENAMES" ] + then + debugecho "Precompilers: $PRENAMES" + for F in $PRENAMES + do + CMD=`grep $F $CONF|cut -f 2 -d " "` + gecho "$CMD" + $CMD + done + fi -PRENAMES=`grep "^#define" $1|grep USE_PREPROCESSOR_|cut -f 2 -d " "` -if ! [ -z "$PRENAMES" ] -then - debugecho "Precompilers: $PRENAMES" - for F in $PRENAMES - do - CMD=`grep $F $CONF|cut -f 2 -d " "` - gecho "$CMD" - $CMD - done + CMD="$CLL1CC $SRC -o $EXE $CFLAGS $LIBS" + echo "$CMD" + $CMD + shift + done fi - -CMD="$CLL1CC $1 -o $EXE $CFLAGS $LIBS" -echo "$CMD" -$CMD