optimizer : optimizer.tab.o Misc.o Holder.o Entry.o IdEntry.o lex.yy.o GloblEntry.o Data.o 
	$(CXX) optimizer.tab.o lex.yy.o Misc.o Holder.o Entry.o IdEntry.o GloblEntry.o Data.o -o optimizer -lfl

optimizer.tab.o : optimizer.tab.c Global.h Holder.h Entry.h IdEntry.h GAS.h NASM.h
lex.yy.o : lex.yy.c optimizer.tab.h Global.h
Holder.o : Holder.cc Holder.h Global.h optimizer.tab.h Entry.h IdEntry.h Output.h GAS.h NASM.h Misc.h
Entry.o : Entry.cc Entry.h Global.h Misc.h optimizer.tab.h
IdEntry.o : IdEntry.cc IdEntry.h Global.h Misc.h
GloblEntry.o : GloblEntry.cc GloblEntry.h Global.h Misc.h
Data.o : Data.cc Data.h Misc.h
Misc.o : Misc.cc Misc.h

lex.yy.c : optimizer.l
	$(LEX) optimizer.l

optimizer.tab.h : optimizer.y Global.h Holder.h
	$(YACC) optimizer.y

optimizer.tab.c : optimizer.y Global.h Holder.h Misc.h
	$(YACC) optimizer.y


