root/releases/bedework-3.7/build.xml

Revision 3104 (checked in by douglm, 2 years ago)

Remove definition of property "base.name" from (almost) every build file. Was not used.
Stop defining, creating and copying to libapi. Wasn't in use.

Remove build directory from every project and use the build files in the main bedework project. improves consistency and maintainability. Also allowed some bugs to be fixed.

Allow setting of message level during build and set it at quiet. Allows error messages to be more obvious.

Create macro to handle the common property definitions. Reduces size and complexity of build files.

Add a build-jar macro. Removes need for build files for sub-modules. Partway through converting to use that.

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