prefix  =  /usr/local
BIN_EXE =  $(prefix)/bin
BIN_SCR =  $(prefix)/bin
LIB_A   =  $(prefix)/lib
LIB_SO  =  $(prefix)/lib
DOC_MAN =  $(prefix)/share/man
DOC_MISC=  $(prefix)/doc
#############################################################################

.PHONY: all check clean install uninstall

all:
	cd collect;   $(MAKE) all
	cd dbctl;     $(MAKE) all
	cd analyze;   $(MAKE) all

check: all
	cd test;      $(MAKE) check

clean:
	cd collect;   $(MAKE) clean
	cd dbctl;     $(MAKE) yclean
	cd analyze;   $(MAKE) clean
	cd test;      $(MAKE) clean

dist:	clean
	tar -czf pct.tgz -X .x Makefile collect doc analyze dbctl include \
	         test VERNAME INSTALL profile-gdb profile-p profile profile-k
install:
	for file in profile profile-p profile-k profile-gdb; do \
	    sed 's@/usr/local/lib@$(LIB_SO)@' < $$file > $(BIN_SCR)/$$file && chmod a+x $(BIN_SCR)/$$file; \
	done
	cd collect;   $(MAKE) install prefix=$(prefix) BIN_EXE=$(BIN_EXE) BIN_SCR=$(BIN_SCR) LIB_A=$(LIB_A) LIB_SO=$(LIB_SO) DOC_MAN=$(DOC_MAN) DOC_MISC=$(DOC_MISC)
	cd dbctl;     $(MAKE) install prefix=$(prefix) BIN_EXE=$(BIN_EXE) BIN_SCR=$(BIN_SCR) LIB_A=$(LIB_A) LIB_SO=$(LIB_SO) DOC_MAN=$(DOC_MAN) DOC_MISC=$(DOC_MISC)
	cd analyze;   $(MAKE) install prefix=$(prefix) BIN_EXE=$(BIN_EXE) BIN_SCR=$(BIN_SCR) LIB_A=$(LIB_A) LIB_SO=$(LIB_SO) DOC_MAN=$(DOC_MAN) DOC_MISC=$(DOC_MISC)
#	cd doc;     $(MAKE) install prefix=$(prefix) BIN_EXE=$(BIN_EXE) BIN_SCR=$(BIN_SCR) LIB_A=$(LIB_A) LIB_SO=$(LIB_SO) DOC_MAN=$(DOC_MAN) DOC_MISC=$(DOC_MISC)

uninstall:
	cd $(BIN_SCR); rm -f profile profile-p profile-k profile-gdb
	cd collect;   $(MAKE) uninstall prefix=$(prefix) BIN_EXE=$(BIN_EXE) BIN_SCR=$(BIN_SCR) LIB_A=$(LIB_A) LIB_SO=$(LIB_SO) DOC_MAN=$(DOC_MAN) DOC_MISC=$(DOC_MISC)
	cd dbctl;     $(MAKE) uninstall prefix=$(prefix) BIN_EXE=$(BIN_EXE) BIN_SCR=$(BIN_SCR) LIB_A=$(LIB_A) LIB_SO=$(LIB_SO) DOC_MAN=$(DOC_MAN) DOC_MISC=$(DOC_MISC)
	cd analyze;   $(MAKE) uninstall prefix=$(prefix) BIN_EXE=$(BIN_EXE) BIN_SCR=$(BIN_SCR) LIB_A=$(LIB_A) LIB_SO=$(LIB_SO) DOC_MAN=$(DOC_MAN) DOC_MISC=$(DOC_MISC)
#	cd doc;       $(MAKE) uninstall prefix=$(prefix) BIN_EXE=$(BIN_EXE) BIN_SCR=$(BIN_SCR) LIB_A=$(LIB_A) LIB_SO=$(LIB_SO) DOC_MAN=$(DOC_MAN) DOC_MISC=$(DOC_MISC)
