O	= .o
X	=
L	=
CC	= gcc
MV	= mv
RM	= rm -f
RANLIB  = ar -s
DEBUG_FLAGS = -ggdb
DEFINES = -DTN3270 -Dlinux -Dunix -DUSE_TERMIO -DTERMCAP -DKLUDGELINEMODE -DNO_URGENT -DDIAGNOSTICS
INCLUDE = -I. -I.. -I/usr/include/bsd/bsd.h -I/usr/include/bsd
AR	= ar
AR1	= cr
AR2     =
AR3     =
CFLAGS = ${DEBUG_FLAGS} ${DEFINES} ${INCLUDE}
PRINT = lpr -p
KBD	= 3270pc.kbd
KBD	= unix.kbd

ALLC = apilib.c api_bsd.c api_exch.c asc_ebc.c astosc.c dctype.c \
		disp_asc.c ebc_disp.c

ALLH = apilib.h api_exch.h asc_ebc.h astosc.h disp_asc.h dctype.h ebc_disp.h


ALLHC=	${ALLH} ${ALLC}
ALLPRINT =	${ALLHC}

ALLSOURCE = ${ALLPRINT} makefile makefile.mak

ALLO = apilib$O api_bsd$O api_exch$O astosc$O asc_ebc$O dctype$O \
		disp_asc$O ebc_disp$O

.c.obj:
	${CC} ${CFLAGS} -c $<

all: astosc.out asc_disp.out disp_asc.out apilib.a

apilib.a: ${ALLO}
	${RM} $@
	for i in ${ALLO}; do (${AR} ${AR1} $@ ${AR2} $$i${AR3}); done
	${RANLIB} $@  

clean:
	@echo "Cleaning tn3270/api..."
	@for i in ${ALLO} errs apilib.a makefile.bak \
		disp_out asc_disp.out astosc.out disp_asc.out \
		test* test$O t1* t1$O t2* t2$O; \
			do (${RM} $$i); done

t1:	apilib.a t1$O
	${CC} ${CFLAGS} -o $@ t1$O apilib.a

t2:	apilib.a t2$O
	${CC} ${CFLAGS} -o $@ t2$O apilib.a

astosc.out:	../ctlr/function.h ../ctlr/hostctlr.h ../ctlr/$(KBD)
	(cd ../tools; make mkastosc$X )
	${RM} $@
	../tools/mkastosc < ../ctlr/$(KBD) > $@

asc_disp.out:	ebc_disp$O
	(cd ../tools; make mkastods$X )
	${RM} $@
	../tools/mkastods > $@

disp_asc.out:	ebc_disp$O
	(cd ../tools; make mkdstoas$X )
	${RM} $@
	../tools/mkdstoas > $@

