tinycobol/cobpp/test.code/Makefile

125 lines
2.5 KiB
Makefile

#
#
#
TESTLIB=../copybooks
export TESTLIB
prefix=../../test.code
exec_prefix=../../compiler
g_includes=-I/usr/local/include
g_libraries=-L/usr/local/lib
CCX=gcc
COB=${exec_prefix}/htcobol
COBPP=../htcobolpp
ASM=as
RM=rm -f
COPYBOOKS= -I../copybooks -I.
INCLUDES= -I/usr/local/include
LIBS=${g_libraries} -L../../lib -lhtcobol -lm
LDFLAGS=
COBFLAGS=-P -c ${COPYBOOKS}
ASMFLAGS=-D
CCXFLAGS=-g ${INCLUDES}
COBPPFLAGS= -v -I ../copybooks
SRC1f = ft1.cob
SRC2f = ft2.cob
SRC3f = ft2.cob
SRC1x = t1.cob
SRC2x = t2.cob
SRC3x = t3.cob
SRC1fa = ft1-1.cob
SRC2fa = ft2-1.cob
SRC3fa = ft3-1.cob
SRC1xa = t1-1.cob
SRC2xa = t2-1.cob
SRC3xa = t3-1.cob
OBJS1fa = $(SRC1fa:.cob=.o)
OBJS2fa = $(SRC2fa:.cob=.o)
OBJS3fa = $(SRC3fa:.cob=.o)
OBJS1xa = $(SRC1xa:.cob=.o)
OBJS2xa = $(SRC2xa:.cob=.o)
OBJS3xa = $(SRC3xa:.cob=.o)
OBJS = $(OBJS1fa) $(OBJS2fa) $(OBJS3fa) $(OBJS1xa) $(OBJS2xa) $(OBJS3xa)
PROG1f = ft1
PROG2f = ft2
PROG3f = ft3
PROG1x = t1
PROG2x = t2
PROG3x = t3
#PROGS = $(PROG1f) $(PROG2f) $(PROG3f) $(PROG1x) $(PROG2x) $(PROG3x)
PROGS = $(SRC1fa) $(SRC2fa) $(SRC3fa) $(SRC1xa) $(SRC2xa) $(SRC3xa)
include ${prefix}/config/C.rules.in
#include ${prefix}/config/COB.rules.in
#
# Rules for compiling .cob sources
.SUFFIX: .cob .o
%.o: %.cob
$(COB) $(COBFLAGS) $<
# $(ASM) $(ASMFLAGS) -o $*.o -a=$*.listing.0.txt $*.s
# @grep -v 'LISTING' $*.listing.0.txt | sed '/^$$/d' >$*.s.txt
# @${RM} $*.listing.0.txt
#
all: ${PROGS}
${PROG1f}: ${OBJS1fa} ${SRC1fa}
$(CCX) -g -o $@ ${OBJS1fa} $(LDFLAGS) $(LIBS)
# strip $@
${PROG2f}: ${OBJS2fa} ${SRC2fa}
$(CCX) -g -o $@ ${OBJS2fa} $(LDFLAGS) $(LIBS)
# strip $@
${PROG3f}: ${OBJS3fa} ${SRC3fa}
$(CCX) -g -o $@ ${OBJS3fa} $(LDFLAGS) $(LIBS)
# strip $@
${PROG1x}: ${OBJS1xa} ${SRC1xa}
$(CCX) -g -o $@ ${OBJS1xa} $(LDFLAGS) $(LIBS)
# strip $@
${PROG2x}: ${OBJS2xa} ${SRC2xa}
$(CCX) -g -o $@ ${OBJS2xa} $(LDFLAGS) $(LIBS)
# strip $@
${PROG3x}: ${OBJS3xa} ${SRC3xa}
$(CCX) -g -o $@ ${OBJS3xa} $(LDFLAGS) $(LIBS)
# strip $@
${SRC1fa}:
$(COBPP) $(COBPPFLAGS) -f ${SRC1f} -o ${SRC1fa} -p ${SRC1f}.txt
${SRC2fa}:
$(COBPP) $(COBPPFLAGS) -f ${SRC2f} -o ${SRC2fa} -p ${SRC2f}.txt
${SRC3fa}:
$(COBPP) $(COBPPFLAGS) -f ${SRC3f} -o ${SRC3fa} -p ${SRC3f}.txt
${SRC1xa}:
$(COBPP) $(COBPPFLAGS) -x ${SRC1x} -o ${SRC1xa} -p ${SRC1x}.txt
${SRC2xa}:
$(COBPP) $(COBPPFLAGS) -x ${SRC2x} -o ${SRC2xa} -p ${SRC2x}.txt
${SRC3xa}:
$(COBPP) $(COBPPFLAGS) -x ${SRC3x} -o ${SRC3xa} -p ${SRC3x}.txt
clean:
@${RM} ${OBJS} $(PROGS) $(SRC1a) $(SRC2a) $(SRC3a) $(SRC4a) $(SRC5a) \
*cob.txt *.lis *.s *s.txt *.trace.txt trace*txt core \
t[0-9]-1.cob ft[0-9]-1.cob