trap "rm -f x$$.c" 0 1 2 3 15 EMHOME=/usr/em CFLAG=0 TARGET=a.out while : do case $# in 0) break;; esac case $1 in -I*|-D*|-U*) PREP=$PREP" "$1 ;; -c) CFLAG=1 ;; -o) shift TARGET=$1 ;; -F) shift LFLAG="-F $1" ;; -*) FLAGS=$FLAGS" "$1 ;; *) ARG=$ARG" "$1 ;; esac shift done for i in $ARG do case $i in *.c) nm=`basename $i .c` if [ -x $EMHOME/lib/cpp ] then cpp=$EMHOME/lib/cpp cppf=-P else cpp=/bin/cc cppf=-E fi if $cpp $cppf $PREP $i > x$$.c && /bin/cc $FLAGS -c x$$.c then mv x$$.o $nm.o LDARG=$LDARG" "$nm.o else rm -f x$$.c exit 1 fi rm -f x$$.c ;; *.s) if /bin/cc $FLAGS -c $i then LDARG=$LDARG" "`basename $i .s`.o else exit 1 fi ;; *) LDARG=$LDARG" "$i ;; esac done case $CFLAG in 1) ;; *) if /bin/cc $FLAGS $LFLAG $LDARG -o $TARGET then : else exit 1 fi ;; esac