1#!/bin/sh 2 3function test_ex { 4 make -C ex V=1 clean > ex.out 2>&1 5 make -C ex V=1 >> ex.out 2>&1 6 7 if [ ! -x ./ex/ex ]; then 8 echo FAILED 9 exit -1 10 fi 11 12 make -C ex V=1 clean > /dev/null 2>&1 13 rm -f ex.out 14} 15 16function test_ex_suffix { 17 make -C ex V=1 clean > ex.out 2>&1 18 19 # use -rR to disable make's builtin rules 20 make -rR -C ex V=1 ex.o >> ex.out 2>&1 21 make -rR -C ex V=1 ex.i >> ex.out 2>&1 22 make -rR -C ex V=1 ex.s >> ex.out 2>&1 23 24 if [ -x ./ex/ex ]; then 25 echo FAILED 26 exit -1 27 fi 28 29 if [ ! -f ./ex/ex.o -o ! -f ./ex/ex.i -o ! -f ./ex/ex.s ]; then 30 echo FAILED 31 exit -1 32 fi 33 34 make -C ex V=1 clean > /dev/null 2>&1 35 rm -f ex.out 36} 37echo -n Testing.. 38 39test_ex 40test_ex_suffix 41 42echo OK 43