--- projects/cms/source/server/Makefile 2000/12/11 17:20:44 1.7 +++ projects/cms/source/server/Makefile 2003/01/26 14:02:52 1.26 @@ -1,43 +1,122 @@ # Makefile for server -# $Id: Makefile,v 1.7 2000/12/11 17:20:44 ajm Exp $ +# $Id: Makefile,v 1.26 2003/01/26 14:02:52 tdb Exp $ -IDL = idl/.madeidl +include Config.inc -all : idl code +all : dist -idl : $(IDL) -$(IDL) : idl/iscream.idl - cd idl && $(MAKE) all +### Code Building -code : - cd uk/ac/ukc/iscream && $(MAKE) all +genidl : $(IDLCHECK) +$(IDLCHECK) : + cd idl && $(MAKE) idl +buildidl : genidl + cd idl && $(MAKE) build + +build : buildidl + cd uk/org/iscream/cms/server && $(MAKE) all + cd $(BUILD) && $(MAKE) package + +### Source, Doc, & Changelog + +src : $(SRCCHECK) +$(SRCCHECK) : + 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) + +javadoc : $(JAVADOCCHECK) +$(JAVADOCCHECK) : $(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) + +changelog : $(CHANGELOG) +$(CHANGELOG) : + $(CVS2CL) $(CVS2CLFLAGS) > $(CHANGELOG) + +### Dist Making + +dist : build src javadoc changelog + cd $(BUILD) && $(MAKE) dist ver=$(VERSION) dest=$(DISTDEST) + +dist-bin : build changelog + cd $(BUILD) && $(MAKE) dist-bin ver=$(VERSION) dest=$(DISTDEST) + +### CVS Magic :) + +cvs-dist : + $(CVS) -d $(CVSROOT) export -r $(CVSTAG) -d $(CVSBUILDTEMP) $(CVSSERVERMODULE) + cd $(CVSBUILDTEMP) && ./configure + cd $(CVSBUILDTEMP) && $(MAKE) dist ver=$(VERSION) dest=$(DISTDEST) + +cvs-dist-bin : + $(CVS) -d $(CVSROOT) export -r $(CVSTAG) -d $(CVSBUILDTEMP) $(CVSSERVERMODULE) + cd $(CVSBUILDTEMP) && ./configure + cd $(CVSBUILDTEMP) && $(MAKE) dist-bin ver=$(VERSION) dest=$(DISTDEST) + +### Code Cleaning + clean : cd idl && $(MAKE) clean - cd uk/ac/ukc/iscream && $(MAKE) clean + cd $(BUILD) && $(MAKE) clean ver=$(VERSION) + cd uk/org/iscream/cms/server && $(MAKE) clean + rm -f $(BUILDCHECK) $(IDLCHECK) $(JAVADOCCHECK) $(SRCCHECK) + rm -Rf $(CVSBUILDTEMP) $(DOCTMPDIR) -update : - cvs -q -d /usr/local/proj/co600_10/cvs update +distclean : clean + cd $(BUILD) && rm -f $(CLPATH) + rm -Rf $(APICACHE) + rm -f Config.inc -runclientinterface : - cd uk/ac/ukc/iscream/clientinterface && $(MAKE) all - java uk.ac.ukc.iscream.clientinterface.ClientInterfaceMain +### Util Package -run : all - java uk.ac.ukc.iscream.componentmanager.ComponentManager -l etc/default.properties +buildutil : clean + cd uk/org/iscream/cms/server/util && $(MAKE) all + cd $(BUILD) && $(MAKE) packageutil -rundbinterface : - cd uk/ac/ukc/iscream/dbinterface && $(MAKE) all - java uk.ac.ukc.iscream.dbinterface.DBInterfaceMain +### Database -runfiltermanager : - cd uk/ac/ukc/iscream/filtermanager && $(MAKE) all - java uk.ac.ukc.iscream.filtermanager.FilterManager +createtable : + cd db && $(MAKE) create -runrootfilter : - cd uk/ac/ukc/iscream/rootfilter && $(MAKE) all - java uk.ac.ukc.iscream.rootfilter.RootFilterMain +droptable : + cd db && $(MAKE) drop -runfilter : - cd uk/ac/ukc/iscream/filter && $(MAKE) all - java uk.ac.ukc.iscream.filter.FilterMain $(NAME) +### Install + +install : build + @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 + +run : build + cd $(BUILD) && ./run.sh + +### Global Include + +include $(MKINC)