--- projects/cms/source/server/Makefile	2000/12/11 20:19:36	1.6.2.1
+++ projects/cms/source/server/Makefile	2003/02/01 19:08:54	1.27
@@ -1,53 +1,129 @@
 # Makefile for server
-# $Id: Makefile,v 1.6.2.1 2000/12/11 20:19:36 tdb Exp $
+# $Id: Makefile,v 1.27 2003/02/01 19:08:54 tdb Exp $
 
-IDL = idl/.madeidl
+include Config.inc
 
-all : buildidl code
+.PHONY : all
+all : dist
 
-idl : $(IDL)
-$(IDL) : idl/iscream.idl
-	cd idl && $(MAKE) idl
+### Code Building
 
-buildidl : $(IDL) idl
-	cd idl/uk/ac/ukc/iscream/clientinterface && javac -g:none -O -d ../../../../../../build *.java
-	cd idl/uk/ac/ukc/iscream/core && javac -g:none -O -d ../../../../../../build *.java
-	cd idl/uk/ac/ukc/iscream/filter && javac -g:none -O -d ../../../../../../build *.java
+.PHONY : build
+build : $(IDLCHECK)
+	cd uk/org/iscream/cms/server && $(MAKE) all
+	cd $(BUILD) && $(MAKE) package
 
-code :
-	cd uk/ac/ukc/iscream && $(MAKE) all
+### Source, Doc, & Changelog
 
+.PHONY : src
+src : $(SRCCHECK)
+
+.PHONY : mksrc
+mksrc :
+	if test ! -d "$(SRCDIR)"; then mkdir -p $(SRCDIR); fi
+	echo "CVS" > TAR_EXCLUDE_TMP
+	echo ".#*" >> TAR_EXCLUDE_TMP
+	tar -cf - -X TAR_EXCLUDE_TMP $(SRCFILES) | ( cd $(SRCDIR) && tar -xf - )
+	rm -f TAR_EXCLUDE_TMP
+	@touch $(SRCCHECK)
+
+.PHONY : javadoc
+javadoc : $(JAVADOCCHECK)
+
+.PHONY : mkjavadoc
+mkjavadoc : $(IDLCHECK)
+	if test ! -d "$(DOCDIR)"; then mkdir -p $(DOCDIR); fi
+	if test ! -d "$(DOCTMPDIR)"; then mkdir -p $(DOCTMPDIR); fi
+	cp -R $(SOURCEROOT)/uk $(DOCTMPDIR)
+	cp -R $(SOURCEROOT)/idl/uk $(DOCTMPDIR)
+	$(JAVADOCBIN) -d $(DOCDIR) -sourcepath $(DOCTMPDIR) -classpath $(JCCLASSPATH) -windowtitle $(JDTITLE) -author -version -private -use -header $(JDHEADER) -bottom $(JDBOTTOM) -linkoffline $(JDJAPI) $(JDJAPIC) -linkoffline $(JDPBAPI) $(JDPBAPIC) $(PKGLIST)
+	rm -Rf $(DOCTMPDIR)
+	@touch $(JAVADOCCHECK)
+
+.PHONY : changelog
+changelog : $(CHANGELOG)
+
+.PHONY : mkchangelog
+mkchangelog :
+	if [ -d $(SOURCEROOT)/CVS ]; then \
+		$(CVS2CL) $(CVS2CLFLAGS) > $(CHANGELOG); \
+	else \
+		echo "Can't generate ChangeLog from non-checked out copy." > $(CHANGELOG); \
+	fi
+
+### Dist Making
+
+.PHONY : dist
+#dist : $(MCOMPILECHECK) $(SRCCHECK) $(JAVADOCCHECK) $(CHANGELOG)
+dist : 
+	cd $(BUILD) && $(MAKE) dist dest=$(DISTDEST)
+
+.PHONY : dist-bin
+#dist-bin : $(MCOMPILECHECK) $(CHANGELOG)
+dist-bin :
+	cd $(BUILD) && $(MAKE) dist-bin dest=$(DISTDEST)
+
+### Code Cleaning
+
+.PHONY : clean
 clean :
 	cd idl && $(MAKE) clean
-	cd uk/ac/ukc/iscream && $(MAKE) clean
-	cd build && $(MAKE) clean
+	cd $(BUILD) && $(MAKE) clean ver=$(VERSION)
+	cd uk/org/iscream/cms/server && $(MAKE) clean
+	rm -f $(MCOMPILECHECK) $(JAVADOCCHECK) $(SRCCHECK)
+	rm -Rf $(DOCTMPDIR)
 
-update :
-	cvs -q -d /usr/local/proj/co600_10/cvs update
+.PHONY : distclean
+distclean : clean
+	cd $(BUILD) && rm -f $(CLPATH)
+	rm -Rf $(APICACHE)
+	rm -f Config.inc
 
-runclientinterface :
-	cd uk/ac/ukc/iscream/clientinterface && $(MAKE) all
-	cd build && java uk.ac.ukc.iscream.clientinterface.ClientInterfaceMain
+### Util Package
 
-runcore :
-	cd uk/ac/ukc/iscream/core && $(MAKE) all
-	cd build && java uk.ac.ukc.iscream.core.Core -l etc/default.properties
+.PHONY : buildutil
+buildutil : clean
+	cd uk/org/iscream/cms/server/util && $(MAKE) all
+	cd $(BUILD) && $(MAKE) packageutil
 
-rundbinterface :
-	cd uk/ac/ukc/iscream/dbinterface && $(MAKE) all
-	cd build && java uk.ac.ukc.iscream.dbinterface.DBInterfaceMain
+### Database
 
-runfiltermanager :
-	cd uk/ac/ukc/iscream/filtermanager && $(MAKE) all
-	cd build && java uk.ac.ukc.iscream.filtermanager.FilterManager
+.PHONY : createtable
+createtable :
+	cd db && $(MAKE) create
 
-runrootfilter :
-	cd uk/ac/ukc/iscream/rootfilter && $(MAKE) all
-	cd build &&java uk.ac.ukc.iscream.rootfilter.RootFilterMain
+.PHONY : droptable
+droptable :
+	cd db && $(MAKE) drop
 
-runfilter :
-	cd uk/ac/ukc/iscream/filter && $(MAKE) all
-	cd build && java uk.ac.ukc.iscream.filter.FilterMain $(NAME)
+### Install
 
-build : all
-	cd build && $(MAKE) package
+.PHONY : install
+install : $(MCOMPILECHECK)
+	@echo "-------------------------------------------------------"
+	@echo "Installing to $(INSTALL)"
+	@echo "  copying $(PACKAGE) to $(INSTALL)"
+	mkdir -p $(INSTALL)
+	cp $(BUILD)/$(PACKAGE) $(INSTALL)
+	@echo "  copying libs to $(INSTALL)/lib"
+	mkdir -p $(INSTALL)/lib
+	cp $(LIBDIR)/*.jar $(INSTALL)/lib
+	@echo "  copying etc to $(INSTALL)/etc"
+	mkdir -p $(INSTALL)/etc
+	cp $(BUILD)/etc/default.properties $(INSTALL)/etc
+	cp $(BUILD)/etc/*.conf $(INSTALL)/etc
+	@echo "  copying scripts to $(INSTALL)"
+	cp $(BUILD)/run.sh $(INSTALL)
+	cp $(BUILD)/run.bat $(INSTALL)
+	@echo "Completed install to $(INSTALL)"
+	@echo "-------------------------------------------------------"
+
+### Other
+
+.PHONY : run
+run : $(MCOMPILECHECK)
+	cd $(BUILD) && ./run.sh
+
+### Global Include
+
+include $(MKINC)