1#!/bin/sh 2# SPDX-License-Identifier: GPL-2.0 3 4function test_ex { 5 make -C ex V=1 clean > ex.out 2>&1 6 make -C ex V=1 >> ex.out 2>&1 7 8 if [ ! -x ./ex/ex ]; then 9 echo FAILED 10 exit -1 11 fi 12 13 make -C ex V=1 clean > /dev/null 2>&1 14 rm -f ex.out 15} 16 17function test_ex_suffix { 18 make -C ex V=1 clean > ex.out 2>&1 19 20 # use -rR to disable make's builtin rules 21 make -rR -C ex V=1 ex.o >> ex.out 2>&1 22 make -rR -C ex V=1 ex.i >> ex.out 2>&1 23 make -rR -C ex V=1 ex.s >> ex.out 2>&1 24 25 if [ -x ./ex/ex ]; then 26 echo FAILED 27 exit -1 28 fi 29 30 if [ ! -f ./ex/ex.o -o ! -f ./ex/ex.i -o ! -f ./ex/ex.s ]; then 31 echo FAILED 32 exit -1 33 fi 34 35 make -C ex V=1 clean > /dev/null 2>&1 36 rm -f ex.out 37} 38 39function test_ex_include { 40 make -C ex V=1 clean > ex.out 2>&1 41 42 # build with krava.h include 43 touch ex/krava.h 44 make -C ex V=1 CFLAGS=-DINCLUDE >> ex.out 2>&1 45 46 if [ ! -x ./ex/ex ]; then 47 echo FAILED 48 exit -1 49 fi 50 51 # build without the include 52 rm -f ex/krava.h ex/ex 53 make -C ex V=1 >> ex.out 2>&1 54 55 if [ ! -x ./ex/ex ]; then 56 echo FAILED 57 exit -1 58 fi 59 60 make -C ex V=1 clean > /dev/null 2>&1 61 rm -f ex.out 62} 63 64echo -n Testing.. 65 66test_ex 67test_ex_suffix 68test_ex_include 69 70echo OK 71