root/trunk/build.xml

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

Second installment of major schema update.

This one replaces foreign keys for collections with a path. Collections are cached during the transaction so should only be fetched once per transaction rather than part of each event and collection object.

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