18c2ecf20Sopenharmony_ci#!/bin/sh 28c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_cifunction test_ex { 58c2ecf20Sopenharmony_ci make -C ex V=1 clean > ex.out 2>&1 68c2ecf20Sopenharmony_ci make -C ex V=1 >> ex.out 2>&1 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci if [ ! -x ./ex/ex ]; then 98c2ecf20Sopenharmony_ci echo FAILED 108c2ecf20Sopenharmony_ci exit -1 118c2ecf20Sopenharmony_ci fi 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci make -C ex V=1 clean > /dev/null 2>&1 148c2ecf20Sopenharmony_ci rm -f ex.out 158c2ecf20Sopenharmony_ci} 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_cifunction test_ex_suffix { 188c2ecf20Sopenharmony_ci make -C ex V=1 clean > ex.out 2>&1 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci # use -rR to disable make's builtin rules 218c2ecf20Sopenharmony_ci make -rR -C ex V=1 ex.o >> ex.out 2>&1 228c2ecf20Sopenharmony_ci make -rR -C ex V=1 ex.i >> ex.out 2>&1 238c2ecf20Sopenharmony_ci make -rR -C ex V=1 ex.s >> ex.out 2>&1 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci if [ -x ./ex/ex ]; then 268c2ecf20Sopenharmony_ci echo FAILED 278c2ecf20Sopenharmony_ci exit -1 288c2ecf20Sopenharmony_ci fi 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ci if [ ! -f ./ex/ex.o -o ! -f ./ex/ex.i -o ! -f ./ex/ex.s ]; then 318c2ecf20Sopenharmony_ci echo FAILED 328c2ecf20Sopenharmony_ci exit -1 338c2ecf20Sopenharmony_ci fi 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci make -C ex V=1 clean > /dev/null 2>&1 368c2ecf20Sopenharmony_ci rm -f ex.out 378c2ecf20Sopenharmony_ci} 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_cifunction test_ex_include { 408c2ecf20Sopenharmony_ci make -C ex V=1 clean > ex.out 2>&1 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ci # build with krava.h include 438c2ecf20Sopenharmony_ci touch ex/krava.h 448c2ecf20Sopenharmony_ci make -C ex V=1 CFLAGS=-DINCLUDE >> ex.out 2>&1 458c2ecf20Sopenharmony_ci 468c2ecf20Sopenharmony_ci if [ ! -x ./ex/ex ]; then 478c2ecf20Sopenharmony_ci echo FAILED 488c2ecf20Sopenharmony_ci exit -1 498c2ecf20Sopenharmony_ci fi 508c2ecf20Sopenharmony_ci 518c2ecf20Sopenharmony_ci # build without the include 528c2ecf20Sopenharmony_ci rm -f ex/krava.h ex/ex 538c2ecf20Sopenharmony_ci make -C ex V=1 >> ex.out 2>&1 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci if [ ! -x ./ex/ex ]; then 568c2ecf20Sopenharmony_ci echo FAILED 578c2ecf20Sopenharmony_ci exit -1 588c2ecf20Sopenharmony_ci fi 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ci make -C ex V=1 clean > /dev/null 2>&1 618c2ecf20Sopenharmony_ci rm -f ex.out 628c2ecf20Sopenharmony_ci} 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ciecho -n Testing.. 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_citest_ex 678c2ecf20Sopenharmony_citest_ex_suffix 688c2ecf20Sopenharmony_citest_ex_include 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ciecho OK 71