# Makefile for cmlog user client library
include ../Makefile.config

SHOBJTYPE = .shobj/$(TARGETDIR)

#-D_CMLOG_DEBUG
XTRACXXFLAGS := -I. -I../include -I$(CDEV)/include -I../Network \
	-D_CMLOG_BUILD_CLIENT
XTRACFLAGS := -I. -I../include -I$(CDEV)/include -I../network \
	-D_CMLOG_BUILD_CLIENT

SHOBJS = $(SHOBJTYPE)/cmlogMsg.o \
	$(SHOBJTYPE)/cmlogSlist.o \
	$(SHOBJTYPE)/cmlogStrHash.o \
	$(SHOBJTYPE)/cmlogIntHash.o \
	$(SHOBJTYPE)/cmlogCallback.o \
	$(SHOBJTYPE)/cmlogUtil.o \
	$(SHOBJTYPE)/cmlogNetUtil.o \
	$(SHOBJTYPE)/cmlog_cdevMessage.o \
	$(SHOBJTYPE)/cmlog_cdevPacket1.o \
	$(SHOBJTYPE)/cmlog_cdevTagMap.o \
	$(SHOBJTYPE)/cmlogBrowser.o \
	$(SHOBJTYPE)/cmlogQUpdateObj.o \
	$(SHOBJTYPE)/cmlogQService.o \
	$(SHOBJTYPE)/cmlogQRequestObject.o

targets: $(SHOBJTYPE) progs copylib

$(SHOBJTYPE):
	@mkdir -p $(SHOBJTYPE)

progs: cmlogQService.so cdev_test

cmlogQService.so: $(SHOBJS)
	rm -f $@
	$(MAKESHLIB) $@ $(SHOBJS)

copylib:cmlogQService.so
	if test ! -d $(LIBDIR); then mkdir -p $(LIBDIR); else echo; fi
	cp cmlogQService.so $(LIBDIR)	

cdev_test: cdev_test.o
	rm -f $@
	$(CXX) -o $@ cdev_test.o -L$(CDEV)/lib/hpux-10.XX -lcdev -lm

clean:
	rm -rf *.o core *~ .obj .shobj *.so *.a cdev_test

# do not edit the following

$(SHOBJTYPE)/cmlogMsg.o: ../Common/cmlogMsg.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../Common/cmlogMsg.cc -o $@

$(SHOBJTYPE)/cmlogSlist.o: ../Common/cmlogSlist.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../Common/cmlogSlist.cc -o $@

$(SHOBJTYPE)/cmlogStrHash.o: ../Common/cmlogStrHash.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../Common/cmlogStrHash.cc -o $@

$(SHOBJTYPE)/cmlogIntHash.o: ../Common/cmlogIntHash.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../Common/cmlogIntHash.cc -o $@

$(SHOBJTYPE)/cmlogCallback.o: ../Common/cmlogCallback.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../Common/cmlogCallback.cc -o $@

$(SHOBJTYPE)/cmlogUtil.o: ../Common/cmlogUtil.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../Common/cmlogUtil.cc -o $@

$(SHOBJTYPE)/cmlogNetUtil.o: ../Network/cmlogNetUtil.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../Network/cmlogNetUtil.cc -o $@

$(SHOBJTYPE)/cmlog_cdevMessage.o: ../data/cmlog_cdevMessage.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../data/cmlog_cdevMessage.cc -o $@

$(SHOBJTYPE)/cmlog_cdevPacket1.o: ../data/cmlog_cdevPacket1.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../data/cmlog_cdevPacket1.cc -o $@

$(SHOBJTYPE)/cmlog_cdevTagMap.o: ../data/cmlog_cdevTagMap.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../data/cmlog_cdevTagMap.cc -o $@


$(SHOBJTYPE)/cmlogBrowser.o: ../Browser/cmlogBrowser.cc
	rm -f $@
	$(CXX) $(CXXFLAGS_SH) $(XTRACXXFLAGS) -c ../Browser/cmlogBrowser.cc -o $@
