aboutsummaryrefslogtreecommitdiff
path: root/sim/testsuite/common/Make-common.in
blob: a51876a3c9ac5676251ccea5ee7eb119aefb9642 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
check: sanity $(TESTS)
sanity:
	@eval echo AS_FOR_TARGET = $(AS_FOR_TARGET)
	@eval echo LD_FOR_TARGET = $(LD_FOR_TARGET)
	@eval echo RUN_FOR_TARGET = $(RUN_FOR_TARGET)

# Rules for running the tests

.SUFFIXES: .ok .run .hi .ko
.run.ok:
	rm -f tmp-$* $*.hi
	ulimit -t 5 ; \
	$(RUN_FOR_TARGET) $(RUNFLAGS_FOR_TARGET) $*.run > tmp-$*
	mv tmp-$* $*.ok
.run.hi:
	rm -f tmp-$* $*.hi diff-$*
	ulimit -t 5 ; \
	$(RUN_FOR_TARGET) $(RUNFLAGS_FOR_TARGET) $*.run > tmp-$*
	echo 'Hello World!' | diff - tmp-$* > diff-$*
	cat tmp-$* diff-$* > $*.hi
.run.ko:
	rm -f tmp-$* $*.ko
	set +e ; \
	ulimit -t 5 ; \
	$(RUN_FOR_TARGET) $(RUNFLAGS_FOR_TARGET) $*.run > tmp-$* ; \
	if [ $$? -eq 47 ] ; then \
	  exit 0 ; \
	else \
	  exit 1 ; \
	fi
	mv tmp-$* $*.ko


# Rules for building the test
# Preference is for obtaining the executable (.run) from a prebuilt image

.SUFFIXES: .uue .s .S .run
.uue.run:
	head $* | grep $*.run > /dev/null
	uudecode $*.uue
.run.u:
	uuencode < $*.run $*.run > $*.u
.o.run:
	$(LD_FOR_TARGET) $(LDFLAGS_FOR_TARGET) -o $*.run $*.o
.s.o:
	$(AS_FOR_TARGET) $(ASFLAGS_FOR_TARGET) $(srcdir)/$*.s -o $*.o
.S.o:
	$(AS_FOR_TARGET) $(ASFLAGS_FOR_TARGET) $(srcdir)/$*.S -o $*.o