#
# Makefile for Borland C++
#
# Project: Limited/Simple MIME/ISO-8859-1/2/5/7/9 patch for Waffle 1.65
# Version: V1.40 KK, Date: 27-NOV-1993
#
# Copyright (C) 1992-1993 by Kosta Kostis - this is freeware!
# Written by kosta@blues.sub.de (Kosta Kostis)
#
CC      = bcc
COPTS   = -c
MAN     = .man
OBJ     = .obj
EXE     = .exe
ARC     = .zip
ARCPRG  = pkzip
ARCPARM = -a
VERSION = 140

ARCHIV1 = isormail$(EXE) isornews$(EXE) isocomp$(EXE) varread$(EXE)
ARCHIV2 = isormail$(MAN) isornews$(MAN) isocomp$(MAN) varread$(MAN)
ARCHIV3 = b64xbin$(EXE) binxb64$(EXE) decode$(EXE) encode$(EXE) ibmxiso$(EXE) isoxibm$(EXE) qpxtxt$(EXE) txtxqp$(EXE)
ARCHIV4 = b64xbin$(MAN) binxb64$(MAN) decode$(MAN) encode$(MAN) ibmxiso$(MAN) isoxibm$(MAN)
ARCHIV5 = install.bat readme liesmich
ARCHIV  = $(ARCHIV1) $(ARCHIV2) $(ARCHIV3) $(ARCHIV4) $(ARCHIV5)

all:    mimeb$(VERSION)$(ARC)

mimeb$(VERSION)$(ARC): $(ARCHIV)
	$(ARCPRG) $(ARCPARM) mimeb$(VERSION)$(ARC) readme liesmich install.bat *$(MAN) *$(EXE)

###############################################################################
#
#       ISORMAIL (patch to rmail)
#
###############################################################################

isormail$(EXE): isormail.c isormail.h patch.h rstatic$(OBJ) strccmp$(OBJ) readline$(OBJ)
	$(CC) isormail.c rstatic$(OBJ) strccmp$(OBJ) readline$(OBJ)

###############################################################################
#
#       ISORNEWS (patch to rnews)
#
###############################################################################

isornews$(EXE): isornews.c isornews.h patch.h rstatic$(OBJ) strccmp$(OBJ) readline$(OBJ)
	$(CC) isornews.c rstatic$(OBJ) strccmp$(OBJ) readline$(OBJ)

###############################################################################
#
#       ISOCOMP (patch to compress)
#
###############################################################################

isocomp$(EXE):  isocomp.c isocomp.h patch.h rstatic$(OBJ) strccmp$(OBJ) readline$(OBJ)
	$(CC) isocomp.c rstatic$(OBJ) strccmp$(OBJ) readline$(OBJ)

###############################################################################
#
#       DECODE (from quoted-printable or base64)
#
###############################################################################

decode$(EXE):   decode$(OBJ) codepage$(OBJ) readline$(OBJ) strccmp$(OBJ) binary$(OBJ) mime$(OBJ) base64$(OBJ) qp$(OBJ) rstatic$(OBJ)
	$(CC) decode$(OBJ) codepage$(OBJ) readline$(OBJ) strccmp$(OBJ) binary$(OBJ) mime$(OBJ) base64$(OBJ) qp$(OBJ) rstatic$(OBJ)

decode$(OBJ):   decode.c decode.h rfc.h
	$(CC) $(COPTS) decode.c

###############################################################################
#
#       ENCODE (to quoted-printable or base64)
#
###############################################################################

encode$(EXE):   encode$(OBJ) codepage$(OBJ) rstatic$(OBJ) readline$(OBJ) strccmp$(OBJ) binary$(OBJ) mime$(OBJ) base64$(OBJ) qp$(OBJ) 
	$(CC) encode$(OBJ) codepage$(OBJ) rstatic$(OBJ) readline$(OBJ) strccmp$(OBJ) binary$(OBJ) mime$(OBJ) base64$(OBJ) qp$(OBJ)

encode$(OBJ):   encode.c encode.h rfc.h
	$(CC) $(COPTS) encode.c

###############################################################################
#
#       IBMxISO
#
###############################################################################

ibmxiso$(EXE):  ibmxiso.c ibmxiso.h transibm.c transibm.h codepage$(OBJ)
	$(CC) ibmxiso.c codepage$(OBJ)

###############################################################################
#
#       ISOxIBM
#
###############################################################################

isoxibm$(EXE):  isoxibm.c isoxibm.h transibm.c transibm.h codepage$(OBJ)
	$(CC) isoxibm.c codepage$(OBJ)

###############################################################################
#
#       B64xBIN
#
###############################################################################

b64xbin$(EXE):  b64xbin$(OBJ) base64$(OBJ)
	$(CC) b64xbin$(OBJ) base64$(OBJ)

b64xbin$(OBJ):  b64xbin.c b64xbin.h base64.h
	$(CC) $(COPTS) b64xbin.c

###############################################################################
#
#       BINxB64
#
###############################################################################

binxb64$(EXE):  binxb64$(OBJ) base64$(OBJ)
	$(CC) binxb64$(OBJ) base64$(OBJ)

binxb64$(OBJ):  binxb64.c binxb64.h base64.h
	$(CC) $(COPTS) binxb64.c

###############################################################################
#
#       QPxTXT
#
###############################################################################

qpxtxt$(EXE):  qpxtxt$(OBJ) qp$(OBJ)
	$(CC) qpxtxt$(OBJ) qp$(OBJ)

qpxtxt$(OBJ):  qpxtxt.c qpxtxt.h qp.h
	$(CC) $(COPTS) qpxtxt.c

###############################################################################
#
#       TXTxQP
#
###############################################################################

txtxqp$(EXE):  txtxqp$(OBJ) qp$(OBJ)
	$(CC) txtxqp$(OBJ) qp$(OBJ)

txtxqp$(OBJ):  txtxqp.c txtxqp.h qp.h
	$(CC) $(COPTS) txtxqp.c

###############################################################################
#
#       read Waffle STATIC variable into an environment variable
#
###############################################################################

varread$(EXE):  varread.c varread.h readline.obj strccmp.obj rstatic.obj setenvms.lib
	$(CC) varread.c readline.obj strccmp.obj rstatic.obj setenvms.lib

###############################################################################
#
#       read line from file into buffer with maximum length
#
###############################################################################

readline$(OBJ):   readline.c readline.h
	$(CC) $(COPTS) readline.c

###############################################################################
#
#       case insensitive string compare
#
###############################################################################

strccmp$(OBJ):    strccmp.c strccmp.h
	$(CC) $(COPTS) strccmp.c

###############################################################################
#
#       copy file (binary)
#
###############################################################################

binary$(OBJ):     binary.c binary.h
	$(CC) $(COPTS) binary.c

###############################################################################
#
#       MIME header functions
#
###############################################################################

mime$(OBJ):       mime.c mime.h
	$(CC) $(COPTS) mime.c

###############################################################################
#
#       base64 functions
#
###############################################################################

base64$(OBJ):     base64.c base64.h
	$(CC) $(COPTS) base64.c

###############################################################################
#
#       quoted-printable functions
#
###############################################################################

qp$(OBJ):         qp.c qp.h
	$(CC) $(COPTS) qp.c

###############################################################################
#
#       Waffle STATIC read functions
#
###############################################################################

rstatic$(OBJ):  rstatic.c rstatic.h strccmp.h readline.h
	$(CC) $(COPTS) rstatic.c

###############################################################################
#
#       determine current active IBM Code Page
#
###############################################################################

codepage$(OBJ):  codepage.c codepage.h 
	$(CC) $(COPTS) codepage.c
