71 lines · bash
1#!/bin/sh2# SPDX-License-Identifier: GPL-2.03 4function test_ex {5 make -C ex V=1 clean > ex.out 2>&16 make -C ex V=1 >> ex.out 2>&17 8 if [ ! -x ./ex/ex ]; then9 echo FAILED10 exit -111 fi12 13 make -C ex V=1 clean > /dev/null 2>&114 rm -f ex.out15}16 17function test_ex_suffix {18 make -C ex V=1 clean > ex.out 2>&119 20 # use -rR to disable make's builtin rules21 make -rR -C ex V=1 ex.o >> ex.out 2>&122 make -rR -C ex V=1 ex.i >> ex.out 2>&123 make -rR -C ex V=1 ex.s >> ex.out 2>&124 25 if [ -x ./ex/ex ]; then26 echo FAILED27 exit -128 fi29 30 if [ ! -f ./ex/ex.o -o ! -f ./ex/ex.i -o ! -f ./ex/ex.s ]; then31 echo FAILED32 exit -133 fi34 35 make -C ex V=1 clean > /dev/null 2>&136 rm -f ex.out37}38 39function test_ex_include {40 make -C ex V=1 clean > ex.out 2>&141 42 # build with krava.h include43 touch ex/krava.h44 make -C ex V=1 CFLAGS=-DINCLUDE >> ex.out 2>&145 46 if [ ! -x ./ex/ex ]; then47 echo FAILED48 exit -149 fi50 51 # build without the include52 rm -f ex/krava.h ex/ex53 make -C ex V=1 >> ex.out 2>&154 55 if [ ! -x ./ex/ex ]; then56 echo FAILED57 exit -158 fi59 60 make -C ex V=1 clean > /dev/null 2>&161 rm -f ex.out62}63 64echo -n Testing..65 66test_ex67test_ex_suffix68test_ex_include69 70echo OK71