
CC     =  gcc -x 'c++' -g -I.
CPP    =  g++ -g -I. -fhandle-exceptions -fno-external-templates
YACC   =  bison -v
LEX    =  flex
OBJS   =  Grammar.o SymTab.o BuiltinClasses.o DynamicString.o \
	  Contact.o Input.o Debug.o
       
	

# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# /usr/lib/g++libstc++.2.7.0 MUST be used ! There is a bug in
# libstdc++.a !

LIBS   =  # /usr/lib/libstdc++.so.2.7.0  No longer valid correct !

# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

.C.o:; $(CPP) -c -g $<
.c.o:; $(CC) -c -g $<

VLIB=/usr/local/Dome/v/lib/intel
VINCL=/usr/local/Dome/v/includex

all: main SendAgent client vbxdir

main: main.o basic.yacc.tab.o lex.yy.o $(OBJS)
	$(CPP) -rdynamic -o main $(LIBS) main.o $(OBJS)\
	 basic.yacc.tab.o lex.yy.o -lfl -ldl

app: app.o
	g++ -g -L$(VLIB) app.o -o app \
	-L/usr/X11R6/lib -lV -lXaw -lXmu -lXt -lXext -lX11 -lSM -lICE -lc

app.o: app.C
	g++ -c -g -I$(VINCL) app.C

vbxdir:
	@(cd vbx ; make)

client: client.c
	$(CC) -g client.c -o client

SendAgent: SendAgent.o DynamicString.o
	$(CPP) -o SendAgent $(LIBS) SendAgent.o DynamicString.o

lex.yy.o: lex.yy.c basic.yacc.tab.h

lex.yy.c: basic.lex
	$(LEX) basic.lex

basic.yacc.tab.h: basic.yacc
	$(YACC) -d basic.yacc

basic.yacc.tab.c: basic.yacc
	$(YACC) basic.yacc

basic.yacc.tab.o: basic.yacc.tab.c
	$(CPP) -DYYDEBUG -c $<

clean: 
	rm -f *.~* *.o *.a lex.yy.c basic.yacc.tab.* core main client SendAgent
	@(cd vbx ; make clean)


# Dependencies:
Grammar.C:   Grammar.h
SymTab.C:  SymTab.h Grammar.h






