tinycobol/test.code/t25/Makefile.mingw

87 lines
1.7 KiB
Makefile

#
#
#
prefix=..
exec_prefix=../../compiler
g_includes=-I/usr/local/include
g_libraries=-L/usr/local/lib -LD:/TinyCOBOL
lib_name1=testz1
lib_name2=testz2
lib_major=0
lib_minor=0
CCX=gcc
COB=htcobol
ASM=as
RM=rm -f
RANLIB=ranlib
AR=ar
COPYBOOKS= -I../copybooks -I.
INCLUDES= -I/usr/local/include
#LIBS=${g_libraries} -L. -L../../lib -lhtcobol -ltestz -ldb -ldl -lm
LIBS1=${g_libraries} -lhtcobol -L. -ltestz1 -ldb -lm
LIBS2=${g_libraries} -lhtcobol -L. -ltestz2 -ldb -lm
LIBS=${g_libraries} -lhtcobol -ldb
LDFLAGS=
#COBFLAGS=-P -D -g -t ${COPYBOOKS}
COBFLAGS=-P ${COPYBOOKS}
ASMFLAGS=-D
CCXFLAGS=-g ${INCLUDES}
STATIC_LIB=lib${lib_name1}.a
SHARED_LIB=${lib_name2}.dll
SRC1 = test25.cob
SRC2 = test25a.cob
SRC3 = test25b.c
SRC4 = test25c.c
OBJS1 = $(SRC1:.cob=.o)
OBJS2 = $(SRC2:.cob=.o)
OBJS3 = $(SRC3:.c=.o)
OBJS4 = $(SRC4:.c=.o)
OBJS = $(OBJS2) $(OBJS3) $(OBJS4)
#OBJS = $(OBJS2) $(OBJS3)
PROG1 = test25z1
PROG2 = test25z2
PROGS = $(PROG1) $(PROG2)
#PROGS = $(PROG2)
include ${prefix}/config/C.rules.in
include ${prefix}/config/COB.rules.in
include ${prefix}/config/COB.build.tmpl.in
all: ${STATIC_LIB} ${SHARED_LIB} ${PROGS}
#all: ${SHARED_LIB} ${PROGS}
shared: ${SHARED_LIB} ${PROGS}
static: ${STATIC_LIB} ${PROGS}
${PROG1}: ${OBJS1}
$(CCX) -o $@.exe ${OBJS1} $(LDFLAGS) $(LIBS1)
# strip $@
${PROG2}: ${OBJS1}
$(CCX) -o $@.exe ${OBJS1} $(LDFLAGS) $(LIBS2)
# strip $@
${STATIC_LIB}: ${OBJS}
${AR} cr ${STATIC_LIB} ${OBJS}
${RANLIB} ${STATIC_LIB}
${SHARED_LIB}: ${OBJS}
${CCX} -shared -Wl,--out-implib,${lib_name2}.dll.a,--output-def,${lib_name2}.def -o ${SHARED_LIB} $(OBJS) ${LIBS}
clean:
@${RM} ${OBJS1} ${OBJS} *.lis *.def *.exe core \
${STATIC_LIB} ${SHARED_LIB} ${SHARED_LIB}.a