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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
|
TESTDATA = 3 10
SPECTIMEDATA = 3
REPEAT = 1
CFLAGS = @CFLAGS@
SPECLIB = -lcmix
CPPFLAGS = @CPPFLAGS@
LDFLAGS = @LDFLAGS@
CMIXFLAGS = -s -q
SHELL = /bin/sh
prefix = @prefix@
exec_prefix = @exec_prefix@
datadir = @datadir@
CC = @CC@
CMIX = cmix
RM = rm -f
WC = wc
SED = sed
TIMEPROG = $(datadir)/cmix/time-prog
all: timing1
clean:
$(RM) *.o core
for i in ack1 ack2 answr2; do \
$(RM) $$i-gen.c $$i-gen@EXEEXT@ $$i-res.c \
$$i-res@EXEEXT@ $$i-time@EXEEXT@ \
$$i-time.txt $$i.ann ; \
done
distclean: clean
$(RM) Makefile
timing1: ack1-time.txt
head -8 $?; tail -8 $?
timing2: ack2-time.txt
head -8 $?; tail -8 $?
answer2: answr2-time.txt
head -8 $?; tail -8 $?
.PRECIOUS: ack1-res.c ack2-res.c answr2-res.c
.PRECIOUS: ack1-gen.c ack2-gen.c answr2-gen.c
.PHONY: clean all timing2 timing1 answer2
#
# %-time.txt: %-time %.o %-res.o
#
ack1-time.txt: ack1-time ack1.o ack1-res.o
$(TIMEPROG) ack1 $(REPEAT) "$(TESTDATA)" > $@
ack2-time.txt: ack2-time ack2.o ack2-res.o
$(TIMEPROG) ack2 $(REPEAT) "$(TESTDATA)" > $@
answr2-time.txt: answr2-time answr2.o answr2-res.o
$(TIMEPROG) answr2 $(REPEAT) "$(TESTDATA)" > $@
#
# %-gen.c: %.c
#
ack1-gen.c: ack1.c ack1.cmx
$(CMIX) $(CMIXFLAGS) ack1.cmx
ack2-gen.c: ack2.c ack2.cmx
$(CMIX) $(CMIXFLAGS) ack2.cmx
answr2-gen.c: answr2.c answr2.cmx
$(CMIX) $(CMIXFLAGS) answr2.cmx
#
# %-gen@EXEEXT@: %-gen.c
#
ack1-gen@EXEEXT@: ack1-gen.c
$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ \
ack1-gen.c $(SPECLIB)
ack2-gen@EXEEXT@: ack2-gen.c
$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ \
ack2-gen.c $(SPECLIB)
answr2-gen@EXEEXT@: answr2-gen.c
$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ \
answr2-gen.c $(SPECLIB)
#
# %-res.c: %-gen@EXEEXT@
#
ack1-res.c: ack1-gen@EXEEXT@
./ack1-gen@EXEEXT@ $(SPECTIMEDATA) > $@
ack2-res.c: ack2-gen@EXEEXT@
./ack2-gen@EXEEXT@ $(SPECTIMEDATA) > $@
answr2-res.c: answr2-gen@EXEEXT@
./answr2-gen@EXEEXT@ $(SPECTIMEDATA) > $@
#
# %-time@EXEEXT@: ack-time.o %-res.o
#
ack1-time@EXEEXT@: ack-time.o ack1.o ack1-res.o
$(CC) -o $@ $(LDFLAGS) ack-time.o ack1.o ack1-res.o
ack2-time@EXEEXT@: ack-time.o ack2.o ack2-res.o
$(CC) -o $@ $(LDFLAGS) ack-time.o ack2.o ack2-res.o
answr2-time@EXEEXT@: ack-time.o answr2.o answr2-res.o
$(CC) -o $@ $(LDFLAGS) ack-time.o answr2.o answr2-res.o
|