# makefile for fametcl
# June 13, 1994
#
CC=gcc -g
CPP=/usr/lib/cpp
LD=ld 

OPT = $(DOPT)

FRBINC = /usr/fame/frb/prod/include
FRBLIBD = -L/usr/fame/frb/prod/lib
FRBLIB = $(FRBLIBD) -lhliutils -lfamedb

LIBS = -L/usr/lib -L/usr/local/lib -L. -ltclx -ltcl -lfametcl -lm

# the following lines are for HLI 7.5
INCS = -I$(FAME)/hli -I$(FAME)/demo/hli -I/bach/usr/local/tcltk/tcl7.4b1
CHLI = -L$(FAME)/hli -lchli
DOPT = -DHLI75 -DHLILIB

# the following lines are for HLI 7.0
#INCS = -I/usr/fame/prod/hli -I/usr/X11/Tcl/tcl/7.3/include -I/usr/X11/Tcl/tk/3.6/include
#CHLI = /usr/fame/prod/hli/chli.o
#DOPT =

# rules follow:

all: libfametcl.so.1.1

fametcl: tclAppInit.o libfametcl.so.1.1
	$(CC) tclAppInit.o $(CHLI) -o fametcl $(LIBS)

fametk: tkAppInit.o libfametcl.so.1.1
	$(CC) -ltkx -ltk -lnsl -lX11 tkAppInit.o $(CHLI) -o fametk $(LIBS)

frb:
	make CHLI="$(CHLI) $(FRBLIB)" DOPT="-DFRB $(DOPT)" \
	INCS="$(INCS) -I$(FRBINC)"

libfametcl.so.1.1: fametcl.o fame.o
	$(LD) -o libfametcl.so.1.1 fametcl.o fame.o 

fametcl.o: fametcl.c fame.i fame.o
	$(CC) -c $(OPT) $(INCS) fametcl.c

fame.i: fame.cli clitcl
	$(CPP) -P $(DOPT) fame.cli > fame.cli.out
	clitcl fame.cli.out fametcl.h fame.i fameinit.i fame.xtra \
	       fameval.i fameset.i

fame.o: fame.i fame.c
	$(CC) -c $(OPT) $(INCS) fame.c -o fame.o

tclAppInit.o: tclAppInit.c
	$(CC) -c $(OPT) $(INCS) tclAppInit.c

tkAppInit.o: tkAppInit.c
	$(CC) -c $(OPT) $(INCS) tkAppInit.c

dist: fametcl.tar.gz
	uuencode fametcl.tar.gz <fametcl.tar.gz >fametcl.uue

fametcl.tar.gz:
	tar cf fametcl.tar `cat MANIFEST`
	gzip fametcl.tar

clean:
	/bin/rm -f fametcl.o tclAppInit.o fame.o 
	/bin/rm -f fame.cli.out fametcl.h fame.i fameinit.i fame.xtra
