ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/server/Makefile
Revision: 1.25
Committed: Fri Jun 7 16:12:47 2002 UTC (22 years, 5 months ago) by tdb
Branch: MAIN
Changes since 1.24: +68 -32 lines
Log Message:
My first bash at a new-style Makefile setup. This one generates proper
distfiles in subdirectories with version numbers, etc. I'll port it to the
other parts of i-scream when I've tested it a bit more.
This will also lead the way for me to generate daily snapshots.

File Contents

# User Rev Content
1 tdb 1.1 # Makefile for server
2 tdb 1.25 # $Id: Makefile,v 1.24 2002/02/09 17:04:33 tdb Exp $
3 tdb 1.1
4 tdb 1.8 include Config.inc
5 tdb 1.1
6 tdb 1.25 all : dist
7    
8     ### Code Building
9 tdb 1.1
10 tdb 1.11 genidl :
11 tdb 1.8 cd idl && $(MAKE) idl
12 tdb 1.1
13 tdb 1.11 buildidl : genidl
14 tdb 1.8 cd idl && $(MAKE) build
15    
16 tdb 1.25 build : buildidl
17 tdb 1.23 cd uk/org/iscream/cms/server && $(MAKE) all
18 tdb 1.25 cd $(BUILD) && $(MAKE) package
19    
20     ### Source, Doc, & Changelog
21    
22     src :
23     if test ! -d "$(SRCDIR)"; then mkdir -p $(SRCDIR); fi
24     echo "CVS" > TAR_EXCLUDE_TMP
25     echo ".#*" >> TAR_EXCLUDE_TMP
26     tar -cf - -X TAR_EXCLUDE_TMP $(SRCFILES) | ( cd $(SRCDIR) && tar -xf - )
27     rm -f TAR_EXCLUDE_TMP
28    
29     javadoc : genidl
30     if test ! -d "$(DOCDIR)"; then mkdir -p $(DOCDIR); fi
31     if test ! -d "$(DOCTMPDIR)"; then mkdir -p $(DOCTMPDIR); fi
32     cp -R $(SOURCEROOT)/uk $(DOCTMPDIR)
33     cp -R $(SOURCEROOT)/idl/uk $(DOCTMPDIR)
34     $(JAVADOCBIN) -d $(DOCDIR) -sourcepath $(DOCTMPDIR) -classpath $(JCCLASSPATH) -windowtitle $(JDTITLE) -author -version -private -use -header $(JDHEADER) -bottom $(JDBOTTOM) -link $(JDJAPI) -link $(JDPBAPI) $(PKGLIST)
35     rm -Rf $(DOCTMPDIR)
36 tdb 1.1
37 tdb 1.25 changelog :
38     $(CVS2CL) $(CVS2CLFLAGS) > $(CHANGELOG)
39 tdb 1.8
40 tdb 1.25 ### Dist Making
41    
42     dist : build src javadoc changelog
43     cd $(BUILD) && $(MAKE) dist ver=$(VERSION) dest=$(DISTDEST)
44    
45     dist-bin : build changelog
46     cd $(BUILD) && $(MAKE) dist-bin ver=$(VERSION) dest=$(DISTDEST)
47    
48     ### CVS Magic :)
49    
50     cvs-dist :
51     $(CVS) -d $(CVSROOT) export -r $(CVSTAG) -d $(CVSBUILDTEMP) $(CVSSERVERMODULE)
52     cd $(CVSBUILDTEMP) && ./configure
53     cd $(CVSBUILDTEMP) && $(MAKE) dist ver=$(VERSION) dest=$(DISTDEST)
54    
55     cvs-dist-bin :
56     $(CVS) -d $(CVSROOT) export -r $(CVSTAG) -d $(CVSBUILDTEMP) $(CVSSERVERMODULE)
57     cd $(CVSBUILDTEMP) && ./configure
58     cd $(CVSBUILDTEMP) && $(MAKE) dist-bin ver=$(VERSION) dest=$(DISTDEST)
59    
60     ### Code Cleaning
61 tdb 1.8
62 tdb 1.1 clean :
63 tdb 1.3 cd idl && $(MAKE) clean
64 tdb 1.25 cd $(BUILD) && $(MAKE) clean ver=$(VERSION)
65 tdb 1.23 cd uk/org/iscream/cms/server && $(MAKE) clean
66 tdb 1.8 rm -Rf $(BUILDCHECK) $(IDLCHECK)
67     rm -Rf $(CVSBUILDTEMP)
68 tdb 1.22 rm -Rf $(DOCDIR) $(DOCTMPDIR)
69 tdb 1.25 rm -Rf $(SRCDIR)
70 tdb 1.1
71 tdb 1.8 distclean : clean
72 tdb 1.10 cd $(BUILD) && rm -f $(CLPATH)
73 tdb 1.8 rm -f Config.inc
74    
75 tdb 1.25 ### Util Package
76    
77     buildutil : clean
78     cd uk/org/iscream/cms/server/util && $(MAKE) all
79     cd $(BUILD) && $(MAKE) packageutil
80    
81     ### Database
82    
83     createtable :
84     cd db && $(MAKE) create
85    
86     droptable :
87     cd db && $(MAKE) drop
88    
89     ### Install
90    
91 tdb 1.8 install : build
92     @echo "-------------------------------------------------------"
93     @echo "Installing to $(INSTALL)"
94     @echo " copying $(PACKAGE) to $(INSTALL)"
95     mkdir -p $(INSTALL)
96     cp $(BUILD)/$(PACKAGE) $(INSTALL)
97     @echo " copying libs to $(INSTALL)/lib"
98     mkdir -p $(INSTALL)/lib
99     cp $(LIBDIR)/*.jar $(INSTALL)/lib
100     @echo " copying etc to $(INSTALL)/etc"
101     mkdir -p $(INSTALL)/etc
102     cp $(BUILD)/etc/default.properties $(INSTALL)/etc
103     cp $(BUILD)/etc/*.conf $(INSTALL)/etc
104 tdb 1.15 @echo " copying scripts to $(INSTALL)"
105     cp $(BUILD)/run.sh $(INSTALL)
106     cp $(BUILD)/run.bat $(INSTALL)
107 tdb 1.8 @echo "Completed install to $(INSTALL)"
108     @echo "-------------------------------------------------------"
109    
110 tdb 1.25 ### Other
111 tdb 1.11
112 tdb 1.25 run : build
113     cd $(BUILD) && ./run.sh
114 tdb 1.13
115 tdb 1.25 ### Global Include
116 tdb 1.5
117 tdb 1.8 include $(MKINC)