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