#
###############################################################################
#
# Copyright (C) 1993-1997 by Kosta Kostis - this is freeware!
# Written by kostis@acm.org (Kosta Kostis)
#
# Makefile for transtab program package
#
###############################################################################
#
VER     = 113
DATE    = 06140$(VER)1997
#
# OBJ is the filename extension for object files
# EXE is the filename extension for executable files
#
OBJ     = .o
EXE     =
#
# PROGn are the main source and program names
#
PROG1   = transtab
PROG2   = transiso
PROG3   = checkiso
PROG4   = transce8
PROG5	= transhtm

ALL     = $(PROG1)$(EXE) $(PROG2)$(EXE) $(PROG3)$(EXE) $(PROG4)$(EXE) $(PROG5)$(EXE)

#
###############################################################################
#
# CC is the name of the C compiler
#
# CC      = bcc
# CC      = cl
CC      = gcc
#
# COPTS are the options (if any) for compilation
#
# COPTS   = -c -ml
# COPTS   = -c -AL
# COPTS   = -c -DNO_STRUPR -O2
COPTS   = -c -ansi -Wall -DNO_STRDUP -DNO_STRUPR -O2
#
# LOPTS are linker options (if any)
#
# LOPTS   =
# LOPTS   = /F 4000
LOPTS   = -o
#
# OBJLIB is the collection of independend object files
#
OBJLIB  = loadtab$(OBJ) readtab$(OBJ) comptran$(OBJ) scanflag$(OBJ)
INCLIB  = readtab.h comptran.h scanflag.h
HEAD    = head_c.h head_h.h head_tab.h
#
###############################################################################
#

all:	$(ALL)
	echo "Compilation done..."

#
###############################################################################
#

install:
	cp $(ALL) /usr/local/bin

#
###############################################################################
#

clean:
	rm *$(OBJ)
	rm $(ALL)

#
###############################################################################
#

date:
	touch -t $(DATE) * */* ../trans$(VER)

#
###############################################################################
#

xclean:
	rm xlt/*

#
###############################################################################
#

bintab:
	./mkbintab

#
###############################################################################
#

pack:
	make date
	cd .. ; tar cfv trans$(VER).tar trans$(VER)
	touch -t $(DATE) ../trans$(VER).tar
	gzip -9 ../trans$(VER).tar

#
###############################################################################
#
# OBJLIB
#
###############################################################################
#

loadtab$(OBJ):  loadtab.c loadtab.h os-stuff.h transtab.h taberr.h tab.h
	$(CC) $(COPTS) loadtab.c

readtab$(OBJ):	readtab.c readtab.h os-stuff.h transtab.h taberr.h tab.h
	$(CC) $(COPTS) readtab.c

comptran$(OBJ):	comptran.c comptran.h tab.h scanflag.h readtab.h $(HEAD)
	$(CC) $(COPTS) comptran.c

scanflag$(OBJ):	scanflag.c scanflag.h transiso.h
	$(CC) $(COPTS) scanflag.c

#
###############################################################################
#
# main programs
#
###############################################################################
#

$(PROG1)$(OBJ):	$(PROG1).c $(PROG1).h taberr.h tab.h $(INCLIB)
	$(CC) $(COPTS) $(PROG1).c

$(PROG1)$(EXE):	$(PROG1)$(OBJ) $(OBJLIB)
	$(CC) $(PROG1)$(OBJ) $(OBJLIB) $(LOPTS) $(PROG1)$(EXE)

$(PROG2)$(OBJ):	$(PROG2).c $(PROG2).h taberr.h tab.h $(INCLIB)
	$(CC) $(COPTS) $(PROG2).c

$(PROG2)$(EXE):	$(PROG2)$(OBJ) $(OBJLIB)
	$(CC) $(PROG2)$(OBJ) $(OBJLIB) $(LOPTS) $(PROG2)$(EXE)

$(PROG3)$(OBJ):	$(PROG3).c $(PROG3).h taberr.h tab.h $(INCLIB)
	$(CC) $(COPTS) $(PROG3).c

$(PROG3)$(EXE):	$(PROG3)$(OBJ) $(OBJLIB)
	$(CC) $(PROG3)$(OBJ) $(OBJLIB) $(LOPTS) $(PROG3)$(EXE)

$(PROG4)$(OBJ):	$(PROG4).c $(PROG4).h datatype.h os-stuff.h tab.h
	$(CC) $(COPTS) $(PROG4).c

$(PROG4)$(EXE): $(PROG4)$(OBJ) $(OBJLIB)
	$(CC) $(PROG4)$(OBJ) $(OBJLIB) $(LOPTS) $(PROG4)$(EXE)

$(PROG5)$(OBJ): $(PROG5).c $(PROG5).h datatype.h os-stuff.h tab.h
	$(CC) $(COPTS) $(PROG5).c

$(PROG5)$(EXE): $(PROG5)$(OBJ) $(OBJLIB)
	$(CC) $(PROG5)$(OBJ) $(OBJLIB) $(LOPTS) $(PROG5)$(EXE)


