OO7SCHEMA = ../schema

sources = oo7.cc GenDB.cc AtomicPart.cc Connection.cc CompositePart.cc \
	  Bench.cc Assembly.cc Module.cc Document.cc Manual.cc PartIdSet.cc \
	  PartIdList.cc Support.cc SetParams.cc Insert.cc Delete.cc Reorg.cc \
	  Traverse.cc Traverse7.cc Query1.cc Query2.cc Query3.cc Query4.cc \
	  Query5.cc Query6.cc Query7.cc Query8.cc baidlist.cc

include $(MAKE_INCL_DIR)/standard.incl

CPPFLAGS += -I. $(I_YTOOLS) $(I_YOODA) $(I_YOODAINTF) -I${OO7SCHEMA} 

SHAREDOBJ=  oo7.o AtomicPart.o Connection.o CompositePart.o Assembly.o \
	    Module.o Document.o Manual.o PartIdSet.o PartIdList.o Support.o \
	    SetParams.o Traverse.o Traverse7.o baidlist.o

BENCHOBJ =  Bench.o Insert.o Delete.o Reorg.o Query1.o Query2.o \
	    Query3.o Query4.o Query5.o Query6.o Query7.o Query8.o

exec = 	$(DIR_PROGR_YOODA)/gendb $(DIR_PROGR_YOODA)/bench \
	$(DIR_PROGR_YOODA)/stat $(DIR_PROGR_YOODA)/NfsPurge

all: ${EXECUTABLES}

oo7.cc : OO7.sch
	yoo_class -b oo7s3 OO7.sch
	yoo_class -b oo7s9 OO7.sch
	yoo_class -b oo7m3 OO7.sch
	yoo_class -b oo7m6 OO7.sch
	@\cp ${OO7SCHEMA}/oo7s3.cc oo7.cc

$(objects): $(DIR_OBJ_YOODA)/%.o: %.cc
	$(CXX) -c $(CPPFLAGS) $(CXXFLAGS) -o $@ $^

gendb:	$(SHAREDOBJ:%=$(DIR_OBJ_YOODA)/%) $(DIR_OBJ_YOODA)/GenDB.o 
	$(PURE) $(CXX) $(LDFLAGS) -o $(DIR_PROGR_YOODA)/$@ $^ $(L_YOODA) \
	-lyooda -lyootools -ll -ly 

stat: 	$(SHAREDOBJ:%=$(DIR_OBJ_YOODA)/%) $(DIR_OBJ_YOODA)/StatBench.o 
	$(PURE) $(CXX) $(LDFLAGS) -o $(DIR_PROGR_YOODA)/$@ $^ $(L_YOODA) \
	-lyooda -lyootools -ll -ly 

bench:  $(SHAREDOBJ:%=$(DIR_OBJ_YOODA)/%) $(BENCHOBJ:%=$(DIR_OBJ_YOODA)/%) 
	$(PURE) $(CXX) $(LDFLAGS) -o $(DIR_PROGR_YOODA)/$@ $^ $(L_YOODA) \
	-lyooda -lyootools -ll -ly 



