ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/server/build.xml
Revision: 1.6
Committed: Fri May 18 01:02:07 2001 UTC (23 years, 6 months ago) by tdb
Content type: text/xml
Branch: MAIN
Changes since 1.5: +0 -1 lines
Log Message:
Will not bother with SQL table generation. This is beyond to scope of this build
script.

File Contents

# User Rev Content
1 tdb 1.1 <!-- build file for server -->
2 tdb 1.5 <project name="iscream-server" default="usage">
3 tdb 1.1
4     <!--
5     TODO:
6     install target
7     cvs version build (including cleanup)
8     -->
9    
10     <!--
11     =====================================================
12     Initialisation & Configuration
13     =====================================================
14     -->
15    
16     <property name="SOURCEROOT" value="${basedir}"/>
17     <property name="CONFIGFILE" value="build.config"/>
18    
19     <target name="config">
20     <echo message="Reading build configuration"/>
21     <property file="${CONFIGFILE}"/>
22     </target>
23    
24     <!--
25     =====================================================
26 tdb 1.5 Usage
27 tdb 1.1 =====================================================
28     -->
29    
30 tdb 1.5 <target name="usage">
31     <echo>
32    
33     These are the targets supported by this ANT build script:
34    
35     fetch - fetch all the JAR library files
36     idl - generate java source from IDL
37     build - compile all source code
38     package - generate JAR package and distributions
39     packageutil - generate UTIL JAR package
40     javadoc - generate javadoc API
41     clean - clean all generated files
42     distclean - remove 'fetched' libraries + clean
43     run - run the server
44     </echo>
45 tdb 1.2 </target>
46    
47 tdb 1.5 <target name="help">
48     <antcall target="usage"/>
49 tdb 1.4 </target>
50    
51 tdb 1.2 <!--
52     =====================================================
53     Fetch required libraries (not in dependency tree)
54     =====================================================
55     -->
56    
57     <!-- this uses static names, which is messy -->
58     <!-- fullcleanup target has same problem -->
59 tdb 1.5 <target name="fetch" depends="config">
60 tdb 1.2 <get
61 tdb 1.3 src="${LIBURL}/crimson.jar"
62 tdb 1.2 dest="${LIBDIR}/crimson.jar"
63     verbose="true" usetimestamp="true"
64     />
65     <get
66 tdb 1.3 src="${LIBURL}/idl.jar"
67 tdb 1.2 dest="${LIBDIR}/idl.jar"
68     verbose="true" usetimestamp="true"
69     />
70     <get
71 tdb 1.3 src="${LIBURL}/jacorb.jar"
72 tdb 1.2 dest="${LIBDIR}/jacorb.jar"
73     verbose="true" usetimestamp="true"
74     />
75     <get
76 tdb 1.3 src="${LIBURL}/jaxp.jar"
77 tdb 1.2 dest="${LIBDIR}/jaxp.jar"
78     verbose="true" usetimestamp="true"
79     />
80     <get
81 tdb 1.3 src="${LIBURL}/mm.mysql-2.0.4-bin.jar"
82 tdb 1.2 dest="${LIBDIR}/mm.mysql-2.0.4-bin.jar"
83     verbose="true" usetimestamp="true"
84     />
85     <!-- also get jacorb.properties? -->
86     </target>
87    
88 tdb 1.1 <!--
89     =====================================================
90     IDL Generation
91     =====================================================
92     -->
93    
94     <!-- generate java code from idl files -->
95 tdb 1.5 <target name="idl" depends="config">
96 tdb 1.1 <echo message="Generating Java source from IDL"/>
97     <java classname="${IDLPARSER}">
98     <arg line="-d ${IDLDIR} ${IDLFILE}"/>
99     <classpath path="${IDLPARSERJAR}"/>
100     </java>
101     </target>
102    
103     <!--
104     =====================================================
105     Source code compilation (including idl-generated)
106     =====================================================
107     -->
108    
109 tdb 1.5 <target name="buildidl" depends="idl">
110 tdb 1.1 <javac
111     srcdir="${IDLDIR}"
112     destdir="${BUILDDIR}"
113     classpath="${JCCLASSPATH}"
114     includes="uk/**/*.java"
115     debug="${JCDEBUG}"
116     optimize="${JCOPTIM}"
117     deprecation="${JCDEPRE}"
118     />
119     </target>
120    
121 tdb 1.5 <target name="build" depends="buildidl">
122 tdb 1.1 <javac
123     srcdir="${SOURCEROOT}"
124     destdir="${BUILDDIR}"
125     classpath="${JCCLASSPATH}"
126     includes="uk/**/*.java"
127     debug="${JCDEBUG}"
128     optimize="${JCOPTIM}"
129     deprecation="${JCDEPRE}"
130     />
131     </target>
132    
133     <!--
134     =====================================================
135     Package creation
136     =====================================================
137     -->
138    
139 tdb 1.5 <target name="makejar" depends="build">
140 tdb 1.1 <echo file="${BUILDDIR}/MANIFEST_TMP"
141     >Manifest-Version: 1.0
142     Created-By: www.i-scream.org.uk
143     Main-Class: ${MFMAINCLASS}
144     Class-Path: ${MFCLPATH}
145     </echo>
146     <jar
147     jarfile="${BUILDDIR}/${SERVERJAR}"
148     basedir="${BUILDDIR}"
149     includes="uk/**/*.class"
150     manifest="${BUILDDIR}/MANIFEST_TMP"
151     />
152     <delete file="${BUILDDIR}/MANIFEST_TMP"/>
153     </target>
154    
155     <target name="maketardist" depends="makejar">
156     <tar
157     longfile="fail"
158     basedir="${BUILDDIR}"
159     tarfile="${BUILDDIR}/${TARFILE}"
160     includes="${SERVERJAR}, run.sh, lib/**, etc/**, README"
161     />
162     <gzip src="${BUILDDIR}/${TARFILE}" zipfile="${BUILDDIR}/${TARGZFILE}"/>
163     <delete file="${BUILDDIR}/${TARFILE}"/>
164     </target>
165    
166     <target name="makezipdist" depends="makejar">
167     <zip
168     basedir="${BUILDDIR}"
169     zipfile="${BUILDDIR}/${ZIPFILE}"
170     includes="${SERVERJAR}, run.bat, lib/**, etc/**, README"
171     />
172     </target>
173    
174 tdb 1.5 <target name="package" depends="maketardist, makezipdist"/>
175 tdb 1.1
176     <!--
177     =====================================================
178     Cleaning
179     =====================================================
180     -->
181    
182 tdb 1.5 <target name="clean" depends="config">
183 tdb 1.1 <delete dir="${IDLDIR}/${ROOTPKG}"/>
184     <delete dir="${BUILDDIR}/${ROOTPKG}"/>
185     <delete file="${BUILDDIR}/${SERVERJAR}"/>
186 tdb 1.5 <delete file="${BUILDDIR}/${UTILJAR}"/>
187 tdb 1.1 <delete file="${BUILDDIR}/${TARFILE}"/>
188     <delete file="${BUILDDIR}/${TARGZFILE}"/>
189     <delete file="${BUILDDIR}/${ZIPFILE}"/>
190 tdb 1.4 <delete dir="${JDOCDIR}"/>
191 tdb 1.2 </target>
192    
193 tdb 1.5 <target name="distclean" depends="clean">
194 tdb 1.2 <!-- this is messy, we should only delete specific jars -->
195     <delete>
196     <fileset dir="${LIBDIR}" includes="*.jar"/>
197     </delete>
198     </target>
199    
200     <!--
201     =====================================================
202 tdb 1.5 Running
203 tdb 1.2 =====================================================
204     -->
205    
206 tdb 1.4 <!-- is this really the best way to do this? no... -->
207 tdb 1.5 <target name="run" depends="config">
208 tdb 1.2 <java classname="${MFMAINCLASS}" dir="${BUILDDIR}" fork="yes">
209     <arg line="-f ${RUNFILTERNAME}"/>
210     <classpath path="${BUILDDIR}/${SERVERJAR}"/>
211     </java>
212 tdb 1.4 </target>
213    
214     <!--
215     =====================================================
216 tdb 1.5 Javadoc
217 tdb 1.4 =====================================================
218     -->
219    
220 tdb 1.5 <target name="javadoc" depends="config, idl">
221 tdb 1.4 <mkdir dir="${JDOCDIR}"/>
222     <!-- link in here requires a live net link! -->
223     <javadoc
224     packagenames="${JDOCPKGS}"
225     destdir="${JDOCDIR}"
226     classpath="${JCCLASSPATH}"
227     author="true"
228     version="true"
229     private="true"
230     use="true"
231     windowtitle="${JDOCTITLE}"
232     header="${JDOCHEADER}"
233     bottom="${JDOCBOTTOM}"
234     link="${JDOCJAPI}"
235     >
236     <!-- need to do idl generated source too -->
237     <sourcepath>
238     <pathelement path="${SOURCEROOT}"/>
239     <pathelement path="${IDLDIR}"/>
240     </sourcepath>
241     </javadoc>
242 tdb 1.5 </target>
243    
244     <!--
245     =====================================================
246     Util Package
247     =====================================================
248     -->
249    
250     <!-- MUST clean here to ensure util package is tidy -->
251     <target name="buildutil" depends="config, clean">
252     <javac
253     srcdir="${SOURCEROOT}"
254     destdir="${BUILDDIR}"
255     classpath="${JCCLASSPATH}"
256     includes="${UTILSRC}"
257     debug="${JCDEBUG}"
258     optimize="${JCOPTIM}"
259     deprecation="${JCDEPRE}"
260     />
261     </target>
262    
263     <target name="packageutil" depends="buildutil">
264     <jar
265     jarfile="${BUILDDIR}/${UTILJAR}"
266     basedir="${BUILDDIR}"
267     includes="uk/**/*.class"
268     />
269 tdb 1.1 </target>
270    
271     </project>