root/trunk/build.xml

Revision 2029 (checked in by douglm, 4 years ago)

More cmdutil: collects move errors to print at the end.

Line 
1 <?xml version="1.0"?>
2
3 <!-- This is the ant build file for the bedework uber project.
4
5      Authors: Mike Douglass   douglm @ rpi.edu
6 -->
7
8 <project name="bedework.build" default="usage" basedir=".">
9   <property environment="env"/>
10
11   <!-- This affects some of the build process in the projects -->
12   <property name="org.bedework.quickstart.build" value="true" />
13
14   <!-- this project -->
15   <property name="org.bedework.project.bedework"
16             location="${basedir}" />
17
18     <property name="org.bedework.libcache.dir"
19               location="${org.bedework.project.bedework}/libcache"/>
20
21   <!-- Where we put other projects -->
22   <property name="org.bedework.projects"
23             location="${org.bedework.project.bedework}/projects" />
24
25   <property name="org.bedework.project.access"
26             location="${org.bedework.projects}/access" />
27
28   <property name="org.bedework.project.bwtools"
29             location="${org.bedework.projects}/bwtools" />
30
31   <property name="org.bedework.project.bwtzsvr"
32             location="${org.bedework.projects}/bwtzsvr" />
33
34   <property name="org.bedework.project.caldav"
35             location="${org.bedework.projects}/caldav" />
36
37   <property name="org.bedework.project.caldavTest"
38             location="${org.bedework.projects}/caldavTest" />
39
40   <property name="org.bedework.project.calendarapi"
41             location="${org.bedework.projects}/calendarapi" />
42
43   <property name="org.bedework.project.davutil"
44             location="${org.bedework.projects}/davutil" />
45
46   <property name="org.bedework.project.dumprestore"
47             location="${org.bedework.projects}/dumprestore" />
48
49   <property name="org.bedework.project.rpiutil"
50             location="${org.bedework.projects}/rpiutil" />
51
52   <property name="org.bedework.project.testsuite"
53             location="${org.bedework.projects}/testsuite" />
54
55   <property name="org.bedework.project.webapps"
56             location="${org.bedework.projects}/webapps" />
57
58   <property name="org.bedework.project.webdav"
59             location="${org.bedework.projects}/webdav" />
60
61   <import file="${org.bedework.project.bedework}/build/buildfilters.xml" />
62   <import file="${org.bedework.project.bedework}/build/loadDeployConfig.xml"/>
63
64   <target name="README" depends="init"
65           description="Describe targets and their usage">
66     <loadfile property="org.bedework.README"
67               srcFile="${org.bedework.project.bedework}/docs/README"/>
68     <echo level="info" message="${org.bedework.README}" />
69   </target>
70
71   <target name="usage" depends="init"
72           description="Describe targets and their usage">
73     <echo level="info" message="As distributed the package should be ready to go."/>
74     <echo level="info" message="Ensure ant is on your path, (a version is in the" />
75     <echo level="info" message="package)"/>
76     <echo level="info" message=""/>
77     <echo level="info" message="First in one window do"/>
78     <echo level="info" message="    ant hsqldb"/>
79     <echo level="info" message="This will start the hsqldb server ready for the "/>
80     <echo level="info" message="application."/>
81     <echo level="info" message=""/>
82     <echo level="info" message="In another window do"/>
83     <echo level="info" message="    ant tomcatstart"/>
84     <echo level="info" message=""/>
85     <echo level="info" message="Once tomcat is running you should be able to go to a"/>
86     <echo level="info" message="browser and connect to"/>
87     <echo level="info" message="    http://localhost:8080/bedework"/>
88     <echo level="info" message="and follow the instructions."/>
89     <echo level="info" message=""/>
90     <echo level="info" message="To build the calendar do"/>
91     <echo level="info" message="    ant deploy    or "/>
92     <echo level="info" message="    ant deploy.debug "/>
93     <echo level="info" message="which does a build and deploy of all components"/>
94     <echo level="info" message=""/>
95     <echo level="info" message="To rebuild the calendar do"/>
96     <echo level="info" message="    ant clean.deploy    or "/>
97     <echo level="info" message="    ant clean.deploy.debug "/>
98     <echo level="info" message="which does a clean, build and deploy of all components"/>
99     <echo level="info" message=""/>
100     <echo level="info" message="See documentation in the docs directory or on bedework.org"/>
101     <echo level="info" message="for instructions on creating a locally configured calendar application"/>
102     <echo level="info" message=""/>
103   </target>
104
105   <target name="init" >
106     <!-- Overriding this when invoking ant allows different user property
107          files to be included e.g.
108             ant -Dorg.bedework.user.build.properties=/home/me/bedework.properties ...
109             -->
110     <property name="org.bedework.user.build.properties"
111               location="${user.home}/bedework.build.properties" />
112
113     <echo level="info" message="Load user properties from ${org.bedework.user.build.properties}" />
114
115     <!-- Load user property definition overrides -->
116     <property file="${org.bedework.user.build.properties}" />
117
118     <!-- ===============================================================
119               Default properties.
120          =============================================================== -->
121
122     <property name="bw.project.home" location="${org.bedework.project.bedework}"/>
123
124     <property file="${bw.project.home}/build.properties" />
125
126     <property name="project.name" value="${org.bedework.package.name}"/>
127     <property name="project.version" value="${org.bedework.version}"/>
128
129     <property name="dist.home" location="${bw.project.home}/dist"/>
130     <property name="lib.dir" location="${bw.project.home}/lib"/>
131     <property name="resources.dir" location="${bw.project.home}/resources"/>
132     <property name="bin.home" location="${bw.project.home}/bin"/>
133
134     <property name="build.dir" location="${bw.project.home}/build"/>
135     <property name="buildjar" location="${build.dir}/buildTools/buildjar.xml"/>
136     <property name="buildsh" location="${build.dir}/buildsh.xml"/>
137     <property name="buildwar" location="${build.dir}/buildwar.xml"/>
138
139     <property name="org.bedework.build.caldav" value="yes" />
140
141     <condition property="org.bedework.qs.build.caldav">
142       <equals arg1="yes" arg2="${org.bedework.build.caldav}"/>
143     </condition>
144
145     <mkdir dir="${dist.home}" />
146
147     <mkdir dir="${bin.home}" />
148
149     <property name="org.bedework.empty.dir"
150               location="${dist.home}/empty-dir" />
151     <mkdir dir="${org.bedework.empty.dir}" />
152
153     <fileset id="empty.fileset" dir="${org.bedework.empty.dir}"
154              excludes="*" />
155     <!-- default to empty -->
156     <fileset id="buildjar.resource.files" refid="empty.fileset" />
157     <fileset id="buildjar.generated.java.sources" refid="empty.fileset" />
158
159     <!-- ==================== Subcomponent Compilation Classpath ====================
160
161     <path id="compile.classpath">
162       <fileset dir="${lib.dir}">
163          <include name="*.jar"/>
164       </fileset>
165       <fileset dir="${dist.home}">
166          <include name="*.jar"/>
167       </fileset>
168     </path>
169 -->
170     <!-- ===============================================================
171               Locations and jar files built by this project.
172          =============================================================== -->
173
174     <property name="org.bedework.temp.dir"
175               location="${dist.home}/temp" />
176
177     <property name="org.bedework.config.base"
178               location="${org.bedework.project.bedework}/config" />
179
180     <property name="org.bedework.default.lib"
181               location="${org.bedework.project.bedework}/lib" />
182
183     <property name="org.bedework.deployment.base"
184               location="${org.bedework.project.bedework}/deployment" />
185
186     <property name="org.bedework.deployutil.jar"
187               location="${bin.home}/${org.bedework.deployutil.jar.name}-${project.version}.jar" />
188   </target>
189
190   <target name="init.build" depends="init">
191     <mkdir dir="${dist.home}" />
192
193     <mkdir dir="${bin.home}" />
194
195     <mkdir dir="${org.bedework.empty.dir}" />
196   </target>
197
198   <!-- =================================================================
199        "build" and "clean" targets for the project
200        ================================================================= -->
201
202   <target name="build" depends="init.build,build.rpiutil,build.bwtzsvr,
203                                 build.access,build.davutil,
204                                 build.calendarapi,build.dumprestore,
205                                 build.webdav,build.caldav,build.caldavTest,
206                                 build.bwtools,build.webapps,
207                                 build.testsuite,build.deployutil"
208           description="builds the project">
209     <copy toDir="${dist.home}" >
210       <fileset dir="${org.bedework.project.bwtools}/dist" includes="*.jar" />
211     </copy>
212   </target>
213
214   <target name="clean" depends="init,clean.rpiutil,clean.bwtzsvr,
215                                 clean.access,clean.davutil,
216                                 clean.calendarapi,clean.dumprestore,
217                                 clean.webdav,clean.caldav,clean.caldavTest,
218                                 clean.bwtools,clean.webapps,
219                                 clean.testsuite"
220           description="Remove all generated files.">
221     <delete dir="${dist.home}" />
222     <delete dir="${bin.home}" />
223   </target>
224
225   <target name="quickstart-clean" depends="init,clean.rpiutil,clean.bwtzsvr,
226                                            clean.access,clean.davutil,
227                                            clean.calendarapi,clean.dumprestore,
228                                            clean.webdav,clean.caldav,clean.caldavTest,
229                                            clean.bwtools,clean.webapps,
230                                            clean.testsuite"
231           description="partial clean up for quickstart.">
232     <delete dir="${bin.home}" />
233     <delete dir="${org.bedework.temp.dir}" />
234     <delete dir="${org.bedework.empty.dir}" />
235
236     <delete>
237       <fileset dir="${dist.home}" includes="*.war"/>
238     </delete>
239   </target>
240
241   <target name="clean.build" depends="clean, build"
242           description="cleans then builds the project"/>
243
244   <!-- =================================================================
245        The "deploy" and "deploy.all" target builds and deploys the applications
246        ================================================================= -->
247
248   <target name="deploy.debug" depends="build"
249           description="builds and deploys the applications">
250     <ant antfile="${org.bedework.project.bedework}/deployment/build.xml" inheritrefs="true"
251          target="deploy"  >
252       <property name="app.debug.val" value="9" />
253     </ant>
254   </target>
255
256   <target name="deploy" depends="build"
257           description="builds and deploys the applications">
258     <ant antfile="${org.bedework.project.bedework}/deployment/build.xml" inheritrefs="true"
259          target="deploy" />
260   </target>
261
262   <!-- =================================================================
263        The "clean.deploy" target cleans, builds and deploys the applications
264        ================================================================= -->
265
266   <target name="clean.deploy" depends="clean,deploy" />
267
268   <target name="clean.deploy.debug" depends="clean,deploy.debug" />
269
270   <!-- =================================================================
271        The "build.configured" target builds configured applications
272        ================================================================= -->
273
274   <target name="build.configured" depends="build"
275           description="Build configured applications" >
276     <ant antfile="${org.bedework.project.bedework}/deployment/build.xml" inheritrefs="true"
277          target="build.configured"  >
278       <property name="app.debug.val" value="9" />
279     </ant>
280   </target>
281
282   <target name="build.configured.debug" depends="build"
283           description="Build configured applications" >
284     <ant antfile="${org.bedework.project.bedework}/deployment}/build.xml" inheritrefs="true"
285          target="build.configured" />
286   </target>
287
288   <target name="clean.build.configured" depends="clean,build.configured" />
289
290   <target name="clean.build.configured.debug" depends="clean,build.configured.debug"/>
291
292   <!-- ======================== javadoc target =======================
293        We build these and copy in turn into the main bedework docs directory.
294
295        The org.bedework.projectdocs.home property allows each project to
296        locate the previously built javadocs so they can link to it.
297
298        We also assume access to the java api docs.
299        ================================================================= -->
300
301   <target name="javadoc" depends="init" description="Generate javadoc">
302     <property name="docs.home" location="${bw.project.home}/docs"/>
303     <property name="org.bedework.projectdocs.home" location="${docs.home}/projectdocs"/>
304     <delete dir="${org.bedework.projectdocs.home}" />
305     <mkdir dir="${org.bedework.projectdocs.home}" />
306
307     <ant antfile="${org.bedework.project.rpiutil}/build.xml" inheritall="false"
308          target="javadoc" >
309       <property name="destdir"
310                 location="${org.bedework.projectdocs.home}/rpiutil/api" />
311     </ant>
312
313     <ant antfile="${org.bedework.project.access}/build.xml" inheritall="false"
314          target="javadoc" >
315       <property name="destdir"
316                 location="${org.bedework.projectdocs.home}/access/api" />
317     </ant>
318
319     <ant antfile="${org.bedework.project.davutil}/build.xml" inheritall="false"
320          target="javadoc" >
321       <property name="destdir"
322                 location="${org.bedework.projectdocs.home}/davutil/api" />
323     </ant>
324
325     <ant antfile="${org.bedework.project.calendarapi}/build.xml" inheritall="false"
326          target="javadoc" >
327       <property name="destdir"
328                 location="${org.bedework.projectdocs.home}/calendarapi/api" />
329     </ant>
330
331     <ant antfile="${org.bedework.project.dumprestore}/build.xml" inheritall="false"
332          target="javadoc" >
333       <property name="destdir"
334                 location="${org.bedework.projectdocs.home}/dumprestore/api" />
335     </ant>
336
337     <ant antfile="${org.bedework.project.webdav}/build.xml" inheritall="false"
338          target="javadoc" >
339       <property name="destdir"
340                 location="${org.bedework.projectdocs.home}/webdav/api" />
341     </ant>
342
343     <ant antfile="${org.bedework.project.caldav}/build.xml" inheritall="false"
344          target="javadoc" >
345       <property name="destdir"
346                 location="${org.bedework.projectdocs.home}/caldav/api" />
347     </ant>
348
349     <ant antfile="${org.bedework.project.caldavTest}/build.xml" inheritall="false"
350          target="javadoc" >
351       <property name="destdir"
352                 location="${org.bedework.projectdocs.home}/caldavTest/api" />
353     </ant>
354
355     <ant antfile="${org.bedework.project.bwtools}/build.xml" inheritall="false"
356          target="javadoc" >
357       <property name="destdir"
358                 location="${org.bedework.projectdocs.home}/bwtools/api" />
359     </ant>
360
361     <ant antfile="${org.bedework.project.webapps}/build.xml" inheritall="false"
362          target="javadoc" >
363       <property name="destdir"
364                 location="${org.bedework.projectdocs.home}/webapps/api" />
365     </ant>
366
367     <ant antfile="${org.bedework.project.testsuite}/build.xml" inheritall="false"
368          target="javadoc" >
369       <property name="destdir"
370                 location="${org.bedework.projectdocs.home}/testsuite/api" />
371     </ant>
372   </target>
373
374   <!-- =================================================================
375        Targets to build sub-projects.
376        ================================================================= -->
377
378   <!-- .................................................................
379                           access
380        .................................................................. -->
381   <target name="build.access" depends="init"
382           description="builds the access project">
383     <ant antfile="${org.bedework.project.access}/build.xml" inheritall="false"
384            target="build-all" >
385       <property name="org.bedework.libcache.dir"
386                 location="${org.bedework.project.bedework}/libcache"/>
387     </ant>
388   </target>
389
390   <target name="clean.access" depends="init"
391           description="cleans the access project">
392     <ant antfile="${org.bedework.project.access}/build.xml" inheritall="false"
393            target="deep-clean" />
394   </target>
395
396   <target name="clean.build.access" depends="clean.access,build.access"
397           description="builds the access project"/>
398
399   <!-- .................................................................
400                           bwtools
401        .................................................................. -->
402   <target name="build.bwtools" depends="init"
403           description="builds the bwtools project">
404     <ant antfile="${org.bedework.project.bwtools}/build.xml" inheritall="false"
405            target="build-all"  >
406       <property name="org.bedework.libcache.dir"
407                 location="${org.bedework.project.bedework}/libcache"/>
408     </ant>
409   </target>
410
411   <target name="clean.bwtools" depends="init"
412           description="clean the bwtools project">
413     <ant antfile="${org.bedework.project.bwtools}/build.xml" inheritall="false"
414            target="deep-clean" />
415   </target>
416
417   <target name="clean.build.bwtools" depends="clean.bwtools,build.bwtools"
418           description="builds the bwtools project"/>
419
420   <!-- .................................................................
421                           bwtzsvr
422        .................................................................. -->
423   <target name="build.bwtzsvr" depends="init"
424           description="builds the bwtzsvr project">
425     <ant antfile="${org.bedework.project.bwtzsvr}/build.xml" inheritall="false"
426            target="build-all"  >
427       <property name="org.bedework.libcache.dir"
428                 location="${org.bedework.project.bedework}/libcache"/>
429     </ant>
430   </target>
431
432   <target name="clean.bwtzsvr" depends="init"
433           description="clean the bwtzsvr project">
434     <ant antfile="${org.bedework.project.bwtzsvr}/build.xml" inheritall="false"
435            target="deep-clean" />
436   </target>
437
438   <target name="clean.build.bwtzsvr" depends="clean.bwtzsvr,build.bwtzsvr"
439           description="builds the bwtzsvr project"/>
440
441   <!-- .................................................................
442                           caldav
443        .................................................................. -->
444   <target name="build.caldav" depends="init"
445           description="builds the caldav project">
446     <ant antfile="${org.bedework.project.caldav}/build.xml" inheritall="false"
447        target="build-all"  >
448       <property name="org.bedework.libcache.dir"
449                 location="${org.bedework.project.bedework}/libcache"/>
450     </ant>
451   </target>
452
453   <target name="clean.caldav" depends="init"
454           description="clean the caldav project">
455     <ant antfile="${org.bedework.project.caldav}/build.xml" inheritall="false"
456          target="deep-clean" />
457   </target>
458
459   <target name="clean.build.caldav" depends="clean.caldav,build.caldav"
460           description="clean builds the caldav project"/>
461
462   <!-- .................................................................
463                           caldavTest
464        .................................................................. -->
465   <target name="build.caldavTest" depends="init"
466           description="builds the caldavTest project">
467     <ant antfile="${org.bedework.project.caldavTest}/build.xml" inheritall="false"
468          target="build-all"  >
469       <property name="org.bedework.libcache.dir"
470                 location="${org.bedework.project.bedework}/libcache"/>
471     </ant>
472   </target>
473
474   <target name="clean.caldavTest" depends="init"
475           description="clean the caldavTest project">
476     <ant antfile="${org.bedework.project.caldavTest}/build.xml" inheritall="false"
477          target="deep-clean" />
478   </target>
479
480   <target name="clean.build.caldavTest" depends="clean.caldavTest,build.caldavTest"
481           description="clean builds the caldavTest project"/>
482
483   <!-- .................................................................
484                           calendarapi
485        .................................................................. -->
486   <target name="build.calendarapi" depends="init"
487           description="builds the calendar project">
488     <ant antfile="${org.bedework.project.calendarapi}/build.xml" inheritall="false"
489            target="build-all"  >
490       <property name="org.bedework.libcache.dir"
491                 location="${org.bedework.project.bedework}/libcache"/>
492     </ant>
493   </target>
494
495   <target name="clean.calendarapi" depends="init"
496           description="clean the calendar project">
497     <ant antfile="${org.bedework.project.calendarapi}/build.xml" inheritall="false"
498            target="deep-clean" />
499   </target>
500
501   <target name="clean.build.calendarapi" depends="clean.calendarapi,build.calendarapi"
502           description="clean builds the caldavTest project"/>
503
504   <!-- .................................................................
505                           davutil
506        .................................................................. -->
507   <target name="build.davutil" depends="init"
508           description="builds the davutil project">
509     <ant antfile="${org.bedework.project.davutil}/build.xml" inheritall="false"
510            target="build-all"  >
511       <property name="org.bedework.libcache.dir"
512                 location="${org.bedework.project.bedework}/libcache"/>
513     </ant>
514   </target>
515
516   <target name="clean.davutil" depends="init"
517           description="cleans the davutil project">
518     <ant antfile="${org.bedework.project.davutil}/build.xml" inheritall="false"
519            target="deep-clean" />
520   </target>
521
522   <target name="clean.build.davutil" depends="clean.davutil,build.davutil"
523           description="clean builds the davutil project"/>
524
525   <!-- .................................................................
526                           dumprestore
527        .................................................................. -->
528   <target name="build.dumprestore" depends="init"
529           description="builds the dumprestore project">
530     <ant antfile="${org.bedework.project.dumprestore}/build.xml" inheritall="false"
531            target="build-all"  >
532       <property name="org.bedework.libcache.dir"
533                 location="${org.bedework.project.bedework}/libcache"/>
534     </ant>
535   </target>
536
537   <target name="clean.dumprestore" depends="init"
538           description="clean the dumprestore project">
539     <ant antfile="${org.bedework.project.dumprestore}/build.xml" inheritall="false"
540            target="deep-clean" />
541   </target>
542
543   <target name="clean.build.dumprestore" depends="clean.dumprestore,build.dumprestore"
544           description="builds the dumprestore project"/>
545
546   <!-- .................................................................
547                           rpiutil
548        .................................................................. -->
549   <target name="build.rpiutil" depends="init"
550           description="builds the rpiutil project">
551     <ant antfile="${org.bedework.project.rpiutil}/build.xml" inheritall="false"
552            target="build-all"  >
553       <property name="org.bedework.libcache.dir"
554                 location="${org.bedework.project.bedework}/libcache"/>
555     </ant>
556   </target>
557
558   <target name="clean.rpiutil" depends="init"
559           description="cleans the rpiutil project">
560     <ant antfile="${org.bedework.project.rpiutil}/build.xml" inheritall="false"
561            target="deep-clean" />
562   </target>
563
564   <target name="clean.build.rpiutil" depends="clean.rpiutil,build.rpiutil"
565           description="builds the rpiutil project"/>
566
567   <!-- .................................................................
568                           testsuite
569        .................................................................. -->
570   <target name="build.testsuite" depends="init"
571           description="builds the testsuite project">
572     <ant antfile="${org.bedework.project.testsuite}/build.xml" inheritall="false"
573          target="build-all"  >
574       <property name="org.bedework.libcache.dir"
575                 location="${org.bedework.project.bedework}/libcache"/>
576     </ant>
577   </target>
578
579   <target name="clean.testsuite" depends="init"
580           description="clean the testsuite project">
581     <ant antfile="${org.bedework.project.testsuite}/build.xml" inheritall="false"
582          target="deep-clean" />
583   </target>
584
585   <target name="clean.build.testsuite" depends="clean.testsuite,clean.testsuite"
586           description="builds the testsuite project"/>
587
588   <!-- .................................................................
589                           webapps
590        .................................................................. -->
591   <target name="build.webapps" depends="init"
592           description="builds the webapps project">
593     <ant antfile="${org.bedework.project.webapps}/build.xml" inheritall="false"
594            target="build-all"  >
595       <property name="org.bedework.libcache.dir"
596                 location="${org.bedework.project.bedework}/libcache"/>
597     </ant>
598   </target>
599
600   <target name="clean.webapps" depends="init"
601           description="clean the webapps project">
602     <ant antfile="${org.bedework.project.webapps}/build.xml" inheritall="false"
603            target="deep-clean" />
604   </target>
605
606   <target name="clean.build.webapps" depends="clean.webapps,build.webapps"
607           description="builds the webapps project"/>
608
609   <!-- .................................................................
610                           webdav
611        .................................................................. -->
612   <target name="build.webdav" depends="init"
613           description="builds the webdav project">
614     <ant antfile="${org.bedework.project.webdav}/build.xml" inheritall="false"
615          target="build-all"  >
616       <property name="org.bedework.libcache.dir"
617                 location="${org.bedework.project.bedework}/libcache"/>
618     </ant>
619   </target>
620
621   <target name="clean.webdav" depends="init"
622           description="cleans the webdav project">
623     <ant antfile="${org.bedework.project.webdav}/build.xml" inheritall="false"
624          target="deep-clean" />
625   </target>
626
627   <target name="clean.build.webdav" depends="clean.webdav,build.webdav"
628           description="builds the webdav project"/>
629
630   <!-- =================================================================
631        Targets to build sub-components of this project.
632        ================================================================= -->
633
634   <target name="build.deployutil" depends="init"
635           description="builds the deployutil component">
636     <ant antfile="${org.bedework.project.bedework}/deployutil/build.xml" inheritrefs="true"
637            target="build" >
638       <property name="build.jar.file" location="${org.bedework.deployutil.jar}" />
639     </ant>
640   </target>
641
642   <!-- =================================================================
643        Build and run the directory tools
644        ================================================================= -->
645
646   <target name="initDir" depends="init"
647           description="Build and run directory init">
648     <antfetch antfile="${org.bedework.project.bwtools}/build.xml" inheritall="false"
649               target="initDir"
650               return="org.bedework.directory.init.status" >
651       <propertyset>
652         <propertyref prefix="org.bedework.directory."/>
653       </propertyset>
654       <property name="org.bedework.libcache.dir"
655                 location="${org.bedework.project.bedework}/libcache"/>
656     </antfetch>
657   </target>
658
659   <target name="initDirForQuickstart" depends="init.build,build.rpiutil"
660           description="Build and run directory tool to initialise a quickstart system">
661     <antfetch antfile="${org.bedework.project.bwtools}/build.xml" inheritall="false"
662               target="initDirForQuickstart"
663               return="org.bedework.directory.init.status" >
664       <propertyset>
665         <propertyref prefix="org.bedework.directory."/>
666       </propertyset>
667       <property name="org.bedework.libcache.dir"
668                 location="${org.bedework.project.bedework}/libcache"/>
669     </antfetch>
670   </target>
671
672   <target name="addUser" depends="init.build,build.rpiutil"
673           description="Build and run directory tools to add a user">
674     <ant antfile="${org.bedework.project.bwtools}/build.xml" inheritall="false"
675            target="addUser" >
676       <propertyset>
677         <propertyref prefix="org.bedework.directory."/>
678       </propertyset>
679       <property name="org.bedework.libcache.dir"
680                 location="${org.bedework.project.bedework}/libcache"/>
681     </ant>
682   </target>
683
684   <target name="addGroup" depends="init.build,build.rpiutil"
685           description="Build and run directory tools to add a group">
686     <ant antfile="${org.bedework.project.bwtools}/build.xml" inheritall="false"
687            target="addGroup" >
688       <propertyset>
689         <propertyref prefix="org.bedework.directory."/>
690       </propertyset>
691       <property name="org.bedework.libcache.dir"
692                 location="${org.bedework.project.bedework}/libcache"/>
693     </ant>
694   </target>
695
696   <target name="addGroupMember" depends="init.build,build.rpiutil"
697           description="Build and run directory tools to add a group member">
698     <ant antfile="${org.bedework.project.bwtools}/build.xml" inheritall="false"
699            target="addGroupMember" >
700       <propertyset>
701         <propertyref prefix="org.bedework.directory."/>
702       </propertyset>
703       <property name="org.bedework.libcache.dir"
704                 location="${org.bedework.project.bedework}/libcache"/>
705     </ant>
706   </target>
707
708   <!-- =================================================================
709        Build and run the cmdline utility
710        ================================================================= -->
711
712   <target name="cmdutil" depends="init"
713           description="run the cmdline utility">
714     <loadDeployConfig />
715
716     <property name="app.dest.classes"
717               location="${dist.home}/temp/cmdutil/classes" />
718
719     <delete dir="${app.dest.classes}" />
720     <mkdir dir="${app.dest.classes}" />
721
722     <property name="app.dest.properties"
723               location="${app.dest.classes}/properties/calendar" />
724
725     <mkdir dir="${app.dest.properties}" />
726
727     <copy tofile="${app.dest.properties}/options.xml"
728           file="${org.bedework.config.options}" />
729
730     <path id="run.classpath">
731       <fileset dir="${org.bedework.project.bedework}/applib">
732          <include name="*.jar"/>
733       </fileset>
734       <pathelement location="${org.bedework.project.bwtools}/resources" />
735       <pathelement location="${app.dest.classes}" />
736     </path>
737
738     <echo file="${app.dest.classes}/hibernate.properties">
739 hibernate.query.substitutions true 'T', false 'F', yes 'Y', no 'N'
740 hibernate.dialect=${org.bedework.global.hibernate.dialect}
741 hibernate.connection.driver_class=${org.bedework.global.jdbcdriver}
742 hibernate.connection.username=${org.bedework.global.jdbcid}
743 hibernate.connection.password=${org.bedework.global.jdbcpw}
744 hibernate.connection.url=${org.bedework.global.jdbcurl}
745 hibernate.cglib.use_reflection_optimizer=false
746 hibernate.cache.use_second_level_cache=false
747 #
748 # Here for better debugging
749 #
750 hibernate.jdbc.batch_size=0
751     </echo>
752
753     <copy todir="${app.dest.classes}"
754           file="${org.bedework.project.bwtools}/resources/log4j.xml" />
755
756     <copy todir="${app.dest.classes}">
757       <fileset dir="${org.bedework.project.calendarapi}/calCore/resources/properties" />
758       <filterset refid="property.filters" />
759     </copy>
760
761     <copy todir="${app.dest.classes}">
762       <fileset dir="${org.bedework.project.calendarapi}/calCore/resources/hbms" />
763       <filterset refid="property.filters" />
764     </copy>
765
766     <pathconvert property="run.txt.classpath"
767                  refid="run.classpath"
768                  targetos="unix"  pathsep=":" />
769
770     <input message="Enter administrative user account:"
771            addproperty="org.bedework.cmdutil.arg.account" />
772
773     <input message="Enter input file name - null for System.in:"
774            addproperty="org.bedework.cmdutil.arg.infile" />
775
776
777     <if>
778       <equals arg1="${org.bedework.cmdutil.arg.infile}"
779               arg2="" />
780       <then>
781         <property name="org.bedework.cmdutil.arg.infile.par" value="" />
782       </then>
783       <else>
784         <property name="org.bedework.cmdutil.arg.infile.par" value="-f" />
785       </else>
786     </if>
787
788     <java classname="org.bedework.tools.cmdutil.CmdUtil"
789           fork="true"
790           failonerror="false"
791           resultproperty="org.bedework.cmdutil.status" >
792       <classpath refid="run.classpath" />
793       <arg value="-user" />
794       <arg value="${org.bedework.cmdutil.arg.account}" />
795       <arg value="${org.bedework.cmdutil.arg.infile.par}" />
796       <arg value="${org.bedework.cmdutil.arg.infile}" />
797     </java>
798   </target>
799
800   <!-- =================================================================
801        Build and run the unit test suite
802        ================================================================= -->
803
804   <target name="bld.test" depends="init"
805           description="Build and run tests">
806     <ant antfile="${calendar.build.file}" inheritrefs="true"
807          target="bld.test" />
808   </target>
809
810   <target name="run.test" depends="init"
811           description="Build and run tests">
812     <ant antfile="${calendar.build.file}" inheritrefs="true"
813          target="run.test" />
814   </target>
815
816   <target name="run.test.debug" depends="init"
817           description="Build and run tests">
818     <ant antfile="${calendar.build.file}" inheritrefs="true"
819          target="run.test"  >
820       <property name="org.bedework.debug" value="yes" />
821     </ant>
822   </target>
823
824   <!-- Rebuild the http test suite only -->
825   <target name="httptest" depends="init"
826           description="Run httptest suite" >
827     <input message="httptest may destroy this calendar db. Proceed with test"
828            validargs="y,n"
829            addproperty="do.httptest" />
830     <condition property="do.abort">
831       <equals arg1="n" arg2="${do.httptest}"/>
832     </condition>
833     <fail if="do.abort">httptest aborted by user.</fail>
834
835     <ant antfile="${calendar.build.file}" inheritrefs="true"
836            target="bld.httptest" />
837
838     <ant antfile="${calendar.build.file}" inheritrefs="true"
839            target="run.httptest" />
840   </target>
841 </project>
Note: See TracBrowser for help on using the browser.