Subversion Repositories DevTools

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1767 mtynas 1
<?xml version="1.0"?>
2
<!--
3
Copyright 2001-2004 The Ant-Contrib project
4
 
5
   Licensed under the Apache License, Version 2.0 (the "License");
6
   you may not use this file except in compliance with the License.
7
   You may obtain a copy of the License at
8
 
9
       http://www.apache.org/licenses/LICENSE-2.0
10
 
11
   Unless required by applicable law or agreed to in writing, software
12
   distributed under the License is distributed on an "AS IS" BASIS,
13
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
   See the License for the specific language governing permissions and
15
   limitations under the License.
16
 
17
-->
18
<project default="jars" basedir=".">
19
 
20
  <!-- Give user a chance to override without editing this file
21
       (and without typing -D each time it compiles it) -->
22
 
23
  <property name="Name" value="cpptasks"/>
24
  <property name="name" value="cpptasks"/>
25
  <property name="version" value="1.0b3"/>
26
 
27
  <property name="debug" value="true" />
28
  <property name="deprecation" value="false" />
29
  <property name="optimize" value="true" />
30
  <property name="junit.fork" value="false" />
31
  <!--  base of Ant CVS source
32
        required for xdocs and dist tasks
33
        (zipped source doesn't contain xdocs proposal)  -->
34
  <property name="ant-src.dir" location="/ant-src/ant"/>
35
  <property name="xdocs.dir" location="${ant-src.dir}/proposal/xdocs"/>
36
 
37
 
38
  <!--
39
       ===================================================================
40
         Set the properties related to the source tree
41
       ===================================================================
42
  -->
43
  <property name="src.dir" value="src"/>
44
  <property name="java.dir" value="src"/>
45
  <property name="tests.java.dir" value="test/junit"/>
46
 
47
  <!--
48
       ===================================================================
49
         Set the properties for the build area
50
       ===================================================================
51
  -->
52
  <property name="build.dir" value="build"/>
53
  <property name="build.classes" value="${build.dir}/classes"/>
54
  <property name="tests.build.classes" value="${build.dir}/tests"/>
55
  <property name="tests.build.lib" value="${build.dir}/lib"/>
56
  <property name="build.lib" value="${build.dir}/lib"/>
57
  <property name="build.javadocs" value="${build.dir}/javadocs"/>
58
  <property name="lib.dir" value="lib"/>
59
  <property name="clover.jar" value="/clover-1.2/lib/clover.jar"/>
60
 
61
 <!--
62
       ===================================================================
63
         Set up properties for the distribution area
64
       ===================================================================
65
  -->
66
  <property name="dist.name" value="${name}-${version}"/>
67
  <property name="dist.base" value="dist"/>
68
  <property name="dist.dir" value="${dist.base}/${dist.name}"/>
69
  <property name="dist.javadocs" value="${dist.dir}/docs/manual/api"/>
70
 
71
<!--
72
       ===================================================================
73
         Prepare the build
74
       ===================================================================
75
  -->
76
  <target name="prepare">
77
    <tstamp>
78
      <format property="year" pattern="yyyy" />
79
    </tstamp>
80
    <filterset id="build.filters">
81
      <filter token="VERSION" value="${version}" />
82
      <filter token="DATE" value="${TODAY}" />
83
      <filter token="TIME" value="${TSTAMP}" />
84
    </filterset>
85
    <available property="junit-available" classname="junit.framework.TestCase"/>
86
  </target>
87
 
88
 
89
<!--
90
       ===================================================================
91
         Configure for coverage analysis
92
       ===================================================================
93
  -->
94
<target name="with.clover">
95
        <taskdef classpath="${clover.jar}" resource="clovertasks"/>
96
        <clover-setup initString="cpptasks.db"/>
97
</target>
98
 
99
<!--
100
       ===================================================================
101
         Generate coverage analysis
102
       ===================================================================
103
  -->
104
<target name="coverage-report" depends="clean, with.clover, run-coverage-tests">
105
	    <mkdir dir="${build.dir}/coverage/report"/>
106
        <clover-report>
107
                <current title="cpptasks coverage" outfile="${build.dir}/coverage/report">
108
                        <format type="html"/>
109
                </current>
110
        </clover-report>
111
 
112
        <replace dir="${build.dir}/coverage/report"
113
            includes="**/*.html"
114
            token='Ant-Contrib Tasks only. &lt;/td&gt;'
115
        	value='Ant-Contrib Tasks only. &lt;/td&gt;&lt;td&gt;&lt;a target="_parent" href="http://sourceforge.net"&gt;&lt;img src="http://sourceforge.net/sflogo.php?group_id=36177&amp;amp;type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /&gt;&lt;/a&gt;&lt;/td&gt;'/>
116
 
117
</target>
118
 
119
  <!--
120
       ===================================================================
121
         Build the code
122
       ===================================================================
123
  -->
124
  <target name="build"
125
          depends="prepare"
126
          description="--> compiles the source code">
127
    <mkdir dir="${build.classes}"/>
128
    <javac srcdir="${java.dir}"
129
           destdir="${build.classes}"
130
           debug="${debug}"
131
           target="1.1"
132
           deprecation="${deprecation}"
133
           optimize="${optimize}" >
134
    </javac>
135
  </target>
136
 
137
  <!--
138
       ===================================================================
139
         Create the jar
140
       ===================================================================
141
  -->
142
  <target name="jars"
143
          depends="build"
144
          description="--> creates the jar">
145
    <mkdir dir="${build.lib}"/>
146
    <jar jarfile="${build.lib}/${name}.jar" manifest="${src.dir}/cpptasks.mf">
147
                 <fileset dir="." includes="LICENSE NOTICE"/>
148
         <fileset dir="${build.classes}"/>
149
                 <fileset dir="${src.dir}" includes="cpptasks.tasks,cpptasks.types"/>
150
    </jar>
151
  </target>
152
 
153
    <target name="junit-warning" depends="prepare" unless="junit-available">
154
        <fail message="junit.jar is required in Ant's lib directory to build this target.  Downloade from http://www.junit.org"/>
155
    </target>
156
 
157
 
158
  <target name="build-tests" depends="jars,junit-warning">
159
    <mkdir dir="${tests.build.classes}"/>
160
    <mkdir dir="${tests.build.lib}"/>
161
    <javac srcdir="${tests.java.dir}"
162
           destdir="${tests.build.classes}"
163
           debug="true"
164
           deprecation="false"
165
           target="1.1"
166
           optimize="false"
167
           classpath="${build.lib}/${name}.jar;${java.class.path}"/>
168
    <jar jarfile="${tests.build.lib}/${name}_test.jar">
169
            <fileset dir="." includes="NOTICE LICENSE"/>
170
            <fileset dir="${tests.build.classes}"/>
171
    </jar>
172
  </target>
173
 
174
  <target name="run-tests"  depends="build-tests">
175
        <junit printsummary="false"
176
                fork="true"
177
                dir="${tests.java.dir}">
178
            <classpath>
179
                <pathelement location="${tests.build.lib}/${name}_test.jar" />
180
                <pathelement location="${build.lib}/${name}.jar" />
181
            </classpath>
182
 
183
            <test name="net.sf.antcontrib.cpptasks.TestAllClasses" outfile="result">
184
                <formatter type="xml" />
185
                <formatter type="brief" usefile="false" />
186
            </test>
187
 
188
        </junit>
189
  </target>
190
 
191
  <target name="run-coverage-tests"  depends="build-tests">
192
        <junit printsummary="false"
193
                fork="true"
194
                dir="${tests.java.dir}">
195
            <classpath>
196
                <pathelement location="${tests.build.lib}/${name}_test.jar" />
197
                <pathelement location="${build.lib}/${name}.jar" />
198
                <pathelement location="${clover.jar}" />
199
            </classpath>
200
 
201
            <test name="net.sf.antcontrib.cpptasks.TestAllClasses" outfile="result">
202
                <formatter type="xml" />
203
                <formatter type="brief" usefile="false" />
204
            </test>
205
 
206
        </junit>
207
  </target>
208
 
209
  <target name="run-devstudio-tests"  depends="build-tests">
210
        <junit printsummary="true" haltonfailure="true">
211
            <classpath>
212
                <pathelement location="${tests.build.lib}/${name}_test.jar" />
213
                <pathelement location="${build.lib}/${name}.jar" />
214
            </classpath>
215
 
216
            <test name="net.sf.antcontrib.cpptasks.devstudio.TestInstalledDevStudio"
217
                haltonfailure="true" outfile="result">
218
                <formatter type="xml" />
219
                        <formatter type="brief" usefile="false" />
220
            </test>
221
 
222
        </junit>
223
  </target>
224
  <!--
225
       ===================================================================
226
         Create the jar and javadocs
227
       ===================================================================
228
  -->
229
  <target name="gump" depends="jars, javadocs"
230
          description="--> creates the jar and javadocs" />
231
 
232
 <!--
233
       ===================================================================
234
         Create the complete distribution
235
       ===================================================================
236
  -->
237
  <target name="dist" depends="jars, javadocs, xdocs" description="--> creates a complete distribution">
238
    <delete dir="${dist.dir}"/>
239
    <mkdir dir="${dist.dir}/src"/>
240
    <copy todir="${dist.dir}">
241
      <fileset dir="${build.lib}" includes="cpptasks.jar"/>
242
      <fileset dir=".">
243
        <include name="build.xml"/>
244
      </fileset>
245
    </copy>
246
    <copy todir="${dist.dir}/src">
247
        <fileset dir="${src.dir}">
248
             <include name="net/**/*.java"/>
249
             <include name="cpptasks.types"/>
250
             <include name="cpptasks.tasks"/>
251
             <include name="cpptasks.mf"/>
252
        </fileset>
253
    </copy>
254
    <mkdir dir="${dist.dir}/samples"/>
255
    <copy todir="${dist.dir}/samples">
256
        <fileset dir="samples" includes="*.ant"/>
257
    </copy>
258
    <mkdir dir="${dist.javadocs}"/>
259
    <copy todir="${dist.javadocs}" overwrite="true">
260
      <fileset dir="${build.javadocs}"/>
261
    </copy>
262
 
263
    <mkdir dir="${dist.dir}/docs"/>
264
    <copy todir="${dist.dir}/docs" overwrite="true">
265
      <fileset dir="${build.dir}/xdocs/docs/manual/other"/>
266
    </copy>
267
 
268
    <copy todir="${dist.dir}" overwrite="true">
269
            <fileset dir="." includes="LICENSE NOTICE"/>
270
    </copy>
271
 
272
    <delete file="${dist.base}/${dist.name}.zip"/>
273
    <zip zipfile="${dist.base}/${dist.name}.zip">
274
        <fileset dir="${dist.base}" includes="${dist.name}/**"/>
275
    </zip>
276
    <delete file="${dist.base}/${dist.name}.tar.gz"/>
277
    <tar tarfile="${dist.base}/${dist.name}.tar.gz" compression="gzip">
278
        <tarfileset dir="${dist.base}" includes="${dist.name}/**"/>
279
    </tar>
280
  </target>
281
 
282
  <!--
283
       ===================================================================
284
         Cleans up build and distribution directories
285
       ===================================================================
286
  -->
287
  <target name="clean"
288
          description="--> cleans up build and dist directories">
289
    <delete dir="${build.dir}" />
290
    <delete dir="${dist.base}" />
291
    <delete dir="${dist.dir}" />
292
    <delete><fileset dir="." includes="cpptasks.db*"/></delete>
293
  </target>
294
 
295
  <!--
296
       ===================================================================
297
         Creates the API documentation
298
       ===================================================================
299
  -->
300
  <target name="javadoc_check">
301
    <uptodate property="javadoc.notrequired"
302
              targetfile="${build.javadocs}/packages.html" >
303
        <srcfiles dir= "${java.dir}" includes="**/*.java"/>
304
    </uptodate>
305
  </target>
306
 
307
  <target name="javadocs" depends="prepare, javadoc_check"
308
          unless="javadoc.notrequired"
309
          description="--> creates the API documentation">
310
    <mkdir dir="${build.javadocs}"/>
311
    <javadoc packagenames="net.sf.antcontrib.*"
312
             useexternalfile="yes"
313
             sourcepath="${java.dir}"
314
             destdir="${build.javadocs}"
315
             author="true"
316
             version="true"
317
             windowtitle="${Name} API"
318
             doctitle="${Name}">
319
      <group title="CCTasks" packages="net.sf.antcontrib.cpptasks" />
320
 
321
      <bottom>Copyright &#169; 2001-${year} Ant-Contrib project. All Rights Reserved.</bottom>
322
    </javadoc>
323
  </target>
324
 
325
 
326
  <target name="detab" depends="prepare" description="detabs java files">
327
      <replace token="&#9;" value="    " dir="src" includes="**/*.java"/>
328
      <replace token="&#9;" value="    " dir="test" includes="**/*.java"/>
329
 
330
  </target>
331
 
332
  <target name="checkstyle-all" depends="prepare" description="Checks style of all source">
333
    <!--   requires checkstyle-all-2.1.jar or later in lib directory
334
                download from http://checkstyle.sourceforge.net  -->
335
    <taskdef resource="checkstyletask.properties"/>
336
 
337
    <checkstyle config="sun_checks.xml">
338
        <fileset dir="${java.dir}" includes="**/*.java"/>
339
    </checkstyle>
340
  </target>
341
 
342
  <target name="checkstyle" depends="prepare" description="Checks style of cleaned up source">
343
    <!--   requires checkstyle-all-3.3.jar or later in lib directory
344
                download from http://checkstyle.sourceforge.net  -->
345
    <taskdef resource="checkstyletask.properties"/>
346
 
347
        <!-- only includes files that pass Sun checks   -->
348
    <checkstyle config="sun_checks.xml">
349
        <fileset dir="${java.dir}/net/sf/antcontrib/cpptasks/parser"
350
                  includes="CaseInsensitiveLetterState.java
351
                            FortranParser.java
352
                          LetterState.java
353
                          WhitespaceOrLetterState.java
354
                          WhitespaceOrCaseInsensitiveLetterState.java"/>
355
        <fileset dir="${java.dir}">
356
                <include name="net/sf/antcontrib/cpptasks/types/VersionInfo.java"/>
357
                <include name="net/sf/antcontrib/cpptasks/Distributer*.java"/>
358
                <include name="net/sf/antcontrib/cpptasks/TargetDef.java"/>
359
                <include name="net/sf/antcontrib/cpptasks/CPUEnum.java"/>
360
                <include name="net/sf/antcontrib/cpptasks/ArchEnum.java"/>
361
                <include name="net/sf/antcontrib/cpptasks/OSFamilyEnum.java"/>
362
                <include name="net/sf/antcontrib/cpptasks/OptimizationEnum.java"/>
363
        </fileset>
364
            <fileset dir="${tests.java.dir}">
365
                    <include name="net/sf/antcontrib/cpptasks/parser/TestFortranParser.java"/>
366
                    <include name="net/sf/antcontrib/cpptasks/MockFileCollector.java"/>
367
                    <include name="net/sf/antcontrib/cpptasks/TestProcessorDef.java"/>
368
                    <include name="net/sf/antcontrib/cpptasks/TestCompilerDef.java"/>
369
                    <include name="net/sf/antcontrib/cpptasks/TestLinkerDef.java"/>
370
                    <include name="net/sf/antcontrib/cpptasks/types/TestLibrarySet.java"/>
371
                    <include name="net/sf/antcontrib/cpptasks/types/TestLibrarySet.java"/>
372
            </fileset>
373
    </checkstyle>
374
  </target>
375
 
376
  <target name="xdocs-init">
377
        <available property="cctask-available" classname="net.sf.antcontrib.cpptasks.CCTask"/>
378
        <available property="xdocs.build-available" file="${xdocs.dir}/build.xml"/>
379
  </target>
380
 
381
  <target name="xdocs-cctask-warning" depends="xdocs-init" unless="cctask-available">
382
        <fail>cpptask.jar must be in the classpath, SET CLASSPATH=${build.dir}\lib\cpptasks.jar before running ant.</fail>
383
  </target>
384
 
385
  <target name="xdocs-build-warning" depends="xdocs-init" unless="xdocs.build-available">
386
        <fail message="Could not locate &quot;${xdocs.dir}/build.xml&quot;, specify value for xdocs.dir that points to Ant's proposal/xdocs directory."/>
387
  </target>
388
 
389
  <!--
390
        cpptasks.jar must be on path
391
 
392
  -->
393
  <target name="xdocs" depends="xdocs-cctask-warning,xdocs-build-warning">
394
 
395
        <mkdir dir="${build.dir}/xdocs"/>
396
        <ant dir="${xdocs.dir}" target="gen" inheritAll="false">
397
            <property name="src.dir" location="${src.dir}/net/sf/antcontrib/cpptasks"/>
398
            <property name="src.root" location="${src.dir}"/>
399
            <property name="build.dir" location="${build.dir}/xdocs"/>
400
        </ant>
401
 
402
        <!--   the docs task doesn't like running here
403
                  will run it in Ant's xdoc build directory
404
                  and copy results back   -->
405
        <delete dir="${xdocs.dir}/build"/>
406
        <copy todir="${xdocs.dir}/build">
407
            <fileset dir="${build.dir}/xdocs" includes="**/*.xml"/>
408
        </copy>
409
        <!--
410
        <ant dir="${xdocs.dir}" target="docs" inheritAll="false">
411
            <property name="src.dir" location="${src.dir}/net/sf/antcontrib/cpptasks"/>
412
            <property name="src.root" location="${src.dir}"/>
413
            <property name="build.dir" location="${build.dir}/xdocs"/>
414
        </ant>
415
        -->
416
        <exec dir="${xdocs.dir}" executable="ant.bat">
417
            <arg value="docs"/>
418
        </exec>
419
        <copy todir="${build.dir}/xdocs">
420
            <fileset dir="${xdocs.dir}/build" includes="**/*.html"/>
421
        </copy>
422
 
423
        <!--  Replace Apache Software copyright notice with Ant-Contrib  -->
424
        <property name="nontask.html" value="compilerarg.html,linkerarg.html,compiler.html,fileset.html,includepath.html,sysincludepath.html,define.html,undefine.html,defineset.html,libset.html,syslibset.html,linker.html,precompile.html,except.html,versioninfo.html,target.html,distributer.html,map.html"/>
425
        <property name="all.html" value="cc.html,${nontask.html}"/>
426
        <property name="doc.dir" value="${build.dir}/xdocs/docs/manual/other"/>
427
 
428
        <move file="${doc.dir}/compilerargument.html" tofile="${doc.dir}/compilerarg.html"/>
429
        <move file="${doc.dir}/linkerargument.html" tofile="${doc.dir}/linkerarg.html"/>
430
        <move file="${doc.dir}/compilerdef.html" tofile="${doc.dir}/compiler.html"/>
431
        <move file="${doc.dir}/targetdef.html" tofile="${doc.dir}/target.html"/>
432
        <move file="${doc.dir}/distributerdef.html" tofile="${doc.dir}/distributer.html"/>
433
        <move file="${doc.dir}/conditionalfileset.html" tofile="${doc.dir}/fileset.html"/>
434
        <move file="${doc.dir}/defineargument.html" tofile="${doc.dir}/define.html"/>
435
        <move file="${doc.dir}/undefineargument.html" tofile="${doc.dir}/undefine.html"/>
436
        <move file="${doc.dir}/libraryset.html" tofile="${doc.dir}/libset.html"/>
437
        <move file="${doc.dir}/systemlibraryset.html" tofile="${doc.dir}/syslibset.html"/>
438
        <move file="${doc.dir}/linkerdef.html" tofile="${doc.dir}/linker.html"/>
439
        <move file="${doc.dir}/precompiledef.html" tofile="${doc.dir}/precompile.html"/>
440
        <move file="${doc.dir}/systemincludepath.html" tofile="${doc.dir}/sysincludepath.html"/>
441
        <move file="${doc.dir}/precompileexceptdef.html" tofile="${doc.dir}/except.html"/>
442
        <move file="${doc.dir}/distributermap.html" tofile="${doc.dir}/map.html"/>
443
 
444
        <replace dir="${build.dir}/xdocs/docs/manual/other"
445
            includes="${all.html}"
446
            token="2000-2003, Apache Software Foundation"
447
            value="2001-2004, Ant-Contrib Project"/>
448
 
449
        <replace dir="${build.dir}/xdocs/docs/manual/other"
450
            includes="${all.html}"
451
            token="http://jakarta.apache.org/ant/"
452
            value="http://sourceforge.net"/>
453
 
454
 
455
        <replace dir="${build.dir}/xdocs/docs/manual/other"
456
            includes="${all.html}"
457
            token='../../images/ant_logo_large.gif'
458
            value='http://sourceforge.net/sflogo.php?group_id=36177&amp;amp;type=4'/>
459
 
460
        <replace dir="${build.dir}/xdocs/docs/manual/other"
461
            includes="${all.html}"
462
            token='alt="Apache Ant"'
463
            value='alt="SourceForge logo"'/>
464
 
465
 
466
        <replace dir="${build.dir}/xdocs/docs/manual/other"
467
            includes="${all.html}"
468
            token="&lt;strong&gt;compilerarg&lt;/strong&gt; (net.sf.antcontrib.cpptasks.types.CompilerArgument)"
469
            value='&lt;strong&gt;&lt;a href="compilerarg.html" style="color: white"&gt;compilerarg&lt;/a&gt;&lt;/strong&gt;'/>
470
 
471
        <replace dir="${build.dir}/xdocs/docs/manual/other"
472
            includes="${all.html}"
473
            token="&lt;strong&gt;linkerarg&lt;/strong&gt; (net.sf.antcontrib.cpptasks.types.LinkerArgument)"
474
            value='&lt;strong&gt;&lt;a href="linkerarg.html" style="color: white"&gt;linkerarg&lt;/a&gt;&lt;/strong&gt;'/>
475
 
476
        <replace dir="${build.dir}/xdocs/docs/manual/other"
477
            includes="${all.html}"
478
            token="&lt;strong&gt;compiler&lt;/strong&gt; (net.sf.antcontrib.cpptasks.CompilerDef)"
479
            value='&lt;strong&gt;&lt;a href="compiler.html" style="color: white"&gt;compiler&lt;/a&gt;&lt;/strong&gt;'/>
480
 
481
        <replace dir="${build.dir}/xdocs/docs/manual/other"
482
            includes="${all.html}"
483
            token="&lt;strong&gt;linker&lt;/strong&gt; (net.sf.antcontrib.cpptasks.LinkerDef)"
484
            value='&lt;strong&gt;&lt;a href="linker.html" style="color: white"&gt;linker&lt;/a&gt;&lt;/strong&gt;'/>
485
 
486
 
487
        <replace dir="${build.dir}/xdocs/docs/manual/other"
488
            includes="${all.html}"
489
            token="&lt;strong&gt;defineset&lt;/strong&gt; (net.sf.antcontrib.cpptasks.types.DefineSet)"
490
            value='&lt;strong&gt;&lt;a href="defineset.html" style="color: white"&gt;defineset&lt;/a&gt;&lt;/strong&gt;'/>
491
 
492
        <replace dir="${build.dir}/xdocs/docs/manual/other"
493
            includes="${all.html}"
494
            token="&lt;strong&gt;fileset&lt;/strong&gt; (net.sf.antcontrib.cpptasks.types.ConditionalFileSet)"
495
            value='&lt;strong&gt;&lt;a href="fileset.html" style="color: white"&gt;fileset&lt;/a&gt;&lt;/strong&gt;'/>
496
 
497
        <replace dir="${build.dir}/xdocs/docs/manual/other"
498
            includes="${all.html}"
499
            token="&lt;strong&gt;libset&lt;/strong&gt; (net.sf.antcontrib.cpptasks.types.LibrarySet)"
500
            value='&lt;strong&gt;&lt;a href="libset.html" style="color: white"&gt;libset&lt;/a&gt;&lt;/strong&gt;'/>
501
 
502
        <replace dir="${build.dir}/xdocs/docs/manual/other"
503
            includes="${all.html}"
504
            token="&lt;strong&gt;syslibset&lt;/strong&gt; (net.sf.antcontrib.cpptasks.types.SystemLibrarySet)"
505
            value='&lt;strong&gt;&lt;a href="syslibset.html" style="color: white"&gt;syslibset&lt;/a&gt;&lt;/strong&gt;'/>
506
 
507
        <replace dir="${build.dir}/xdocs/docs/manual/other"
508
            includes="${all.html}"
509
            token="&lt;strong&gt;includepath&lt;/strong&gt; (net.sf.antcontrib.cpptasks.types.IncludePath)"
510
            value='&lt;strong&gt;&lt;a href="includepath.html" style="color: white"&gt;includepath&lt;/a&gt;&lt;/strong&gt;'/>
511
 
512
        <replace dir="${build.dir}/xdocs/docs/manual/other"
513
            includes="${all.html}"
514
            token="&lt;strong&gt;sysincludepath&lt;/strong&gt; (net.sf.antcontrib.cpptasks.types.SystemIncludePath)"
515
            value='&lt;strong&gt;&lt;a href="sysincludepath.html" style="color: white"&gt;sysincludepath&lt;/a&gt;&lt;/strong&gt;'/>
516
 
517
        <replace dir="${build.dir}/xdocs/docs/manual/other"
518
            includes="${all.html}"
519
            token="&lt;strong&gt;precompile&lt;/strong&gt; (net.sf.antcontrib.cpptasks.PrecompileDef)"
520
            value='&lt;strong&gt;&lt;a href="precompile.html" style="color: white"&gt;precompile&lt;/a&gt;&lt;/strong&gt;'/>
521
 
522
        <replace dir="${build.dir}/xdocs/docs/manual/other"
523
            includes="precompile.html"
524
            token="&lt;strong&gt;except&lt;/strong&gt; (net.sf.antcontrib.cpptasks.PrecompileExceptDef)"
525
            value='&lt;strong&gt;&lt;a href="except.html" style="color: white"&gt;except&lt;/a&gt;&lt;/strong&gt;'/>
526
 
527
        <replace dir="${build.dir}/xdocs/docs/manual/other"
528
            includes="defineset.html"
529
            token="&lt;strong&gt;define&lt;/strong&gt; (net.sf.antcontrib.cpptasks.types.DefineArgument)"
530
            value='&lt;strong&gt;&lt;a href="define.html" style="color: white"&gt;define&lt;/a&gt;&lt;/strong&gt;'/>
531
 
532
        <replace dir="${build.dir}/xdocs/docs/manual/other"
533
            includes="defineset.html"
534
            token="&lt;strong&gt;undefine&lt;/strong&gt; (net.sf.antcontrib.cpptasks.types.UndefineArgument)"
535
            value='&lt;strong&gt;&lt;a href="undefine.html" style="color: white"&gt;undefine&lt;/a&gt;&lt;/strong&gt;'/>
536
 
537
        <replace dir="${build.dir}/xdocs/docs/manual/other"
538
            includes="${all.html}"
539
            token="&lt;strong&gt;distributer&lt;/strong&gt; (net.sf.antcontrib.cpptasks.DistributerDef)"
540
            value='&lt;strong&gt;&lt;a href="distributer.html" style="color: white"&gt;distributer&lt;/a&gt;&lt;/strong&gt;'/>
541
 
542
        <replace dir="${build.dir}/xdocs/docs/manual/other"
543
            includes="${all.html}"
544
            token="&lt;strong&gt;target&lt;/strong&gt; (net.sf.antcontrib.cpptasks.TargetDef)"
545
            value='&lt;strong&gt;&lt;a href="target.html" style="color: white"&gt;target&lt;/a&gt;&lt;/strong&gt;'/>
546
 
547
        <replace dir="${build.dir}/xdocs/docs/manual/other"
548
            includes="${all.html}"
549
            token="&lt;strong&gt;versioninfo&lt;/strong&gt; (net.sf.antcontrib.cpptasks.VersionInfo)"
550
            value='&lt;strong&gt;&lt;a href="versioninfo.html" style="color: white"&gt;versioninfo&lt;/a&gt;&lt;/strong&gt;'/>
551
 
552
        <replace dir="${build.dir}/xdocs/docs/manual/other"
553
            includes="${all.html}"
554
            token="&lt;strong&gt;map&lt;/strong&gt; (net.sf.antcontrib.cpptasks.DistributerMap)"
555
            value='&lt;strong&gt;&lt;a href="map.html" style="color: white"&gt;map&lt;/a&gt;&lt;/strong&gt;'/>
556
 
557
        <!--   remove Task from the title of everything but cc.html   -->
558
        <replace dir="${build.dir}/xdocs/docs/manual/other"
559
            includes="${nontask.html}"
560
            token="Task&lt;/strong"
561
            value="&lt;/strong"/>
562
 
563
        <replace dir="${build.dir}/xdocs/docs/manual/other"
564
            includes="cc.html"
565
            token="Cc"
566
            value="cc"/>
567
 
568
        <replace dir="${build.dir}/xdocs/docs/manual/other"
569
            includes="compilerarg.html"
570
            token="Compilerargument"
571
            value="compilerarg"/>
572
 
573
        <replace dir="${build.dir}/xdocs/docs/manual/other"
574
            includes="linkerarg.html"
575
            token="Linkerargument"
576
            value="linkerarg"/>
577
 
578
        <replace dir="${build.dir}/xdocs/docs/manual/other"
579
            includes="compiler.html"
580
            token="Compilerdef"
581
            value="compiler"/>
582
 
583
        <replace dir="${build.dir}/xdocs/docs/manual/other"
584
            includes="fileset.html"
585
            token="Conditionalfileset"
586
            value="fileset"/>
587
 
588
 
589
        <replace dir="${build.dir}/xdocs/docs/manual/other"
590
            includes="includepath.html"
591
            token="Includepath"
592
            value="includepath"/>
593
 
594
        <replace dir="${build.dir}/xdocs/docs/manual/other"
595
            includes="sysincludepath.html"
596
            token="Systemincludepath"
597
            value="sysincludepath"/>
598
 
599
        <replace dir="${build.dir}/xdocs/docs/manual/other"
600
            includes="defineargument.html"
601
            token="Defineargument"
602
            value="define"/>
603
 
604
        <replace dir="${build.dir}/xdocs/docs/manual/other"
605
            includes="undefineargument.html"
606
            token="Undefineargument"
607
            value="undefine"/>
608
 
609
        <replace dir="${build.dir}/xdocs/docs/manual/other"
610
            includes="defineset.html"
611
            token="Defineset"
612
            value="defineset"/>
613
 
614
        <replace dir="${build.dir}/xdocs/docs/manual/other"
615
            includes="libset.html"
616
            token="Libraryset"
617
            value="libset"/>
618
 
619
        <replace dir="${build.dir}/xdocs/docs/manual/other"
620
            includes="syslibset.html"
621
            token="Systemlibraryset"
622
            value="syslibset"/>
623
 
624
        <replace dir="${build.dir}/xdocs/docs/manual/other"
625
            includes="linker.html"
626
            token="Linkerdef"
627
            value="linker"/>
628
 
629
        <replace dir="${build.dir}/xdocs/docs/manual/other"
630
            includes="precompile.html"
631
            token="Precompiledef"
632
            value="precompile"/>
633
 
634
        <replace dir="${build.dir}/xdocs/docs/manual/other"
635
            includes="define.html"
636
            token="Defineargument"
637
            value="define"/>
638
 
639
        <replace dir="${build.dir}/xdocs/docs/manual/other"
640
            includes="undefine.html"
641
            token="Undefineargument"
642
            value="undefine"/>
643
 
644
        <replace dir="${build.dir}/xdocs/docs/manual/other"
645
            includes="except.html"
646
            token="Precompileexceptdef"
647
            value="except"/>
648
 
649
        <replace dir="${build.dir}/xdocs/docs/manual/other"
650
            includes="target.html"
651
            token="Targetdef"
652
            value="target"/>
653
 
654
        <replace dir="${build.dir}/xdocs/docs/manual/other"
655
            includes="distributer.html"
656
            token="Distributerdef"
657
            value="distributer"/>
658
 
659
        <replace dir="${build.dir}/xdocs/docs/manual/other"
660
            includes="versioninfo.html"
661
            token="Versioninfodef"
662
            value="versioninfo"/>
663
 
664
        <replace dir="${build.dir}/xdocs/docs/manual/other"
665
            includes="map.html"
666
            token="Distributermap"
667
            value="map"/>
668
 
669
  </target>
670
 
671
  <target name="check-sfuser" unless="sfuser">
672
            <fail message="Please specify SourceForge user name using -Dsfuser=joeuser"/>
673
  </target>
674
 
675
  <target name="submit-xdocs" depends="check-sfuser" description="updates project web site">
676
        <!-- requires scp with project admin private keys available and sfuser set   -->
677
 
678
                  <exec executable="scp">
679
                          <arg line="${build.dir}/xdocs/docs/manual/other/*.html ${sfuser}@shell.sourceforge.net:/home/groups/a/an/ant-contrib/htdocs"/>
680
                  </exec>
681
  </target>
682
 
683
  <target name="submit-coverage" depends="check-sfuser" description="updates project web site coverage map">
684
      <exec executable="scp">
685
              <arg line="-r -C ${build.dir}/coverage/report/* ${sfuser}@shell.sourceforge.net:/home/groups/a/an/ant-contrib/htdocs/cpptasks/coverage"/>
686
      </exec>
687
  </target>
688
 
689
 
690
 
691
  <target name="xdocs-clean"
692
          description="--> cleans up xdocs directories">
693
    <delete dir="${build.dir}/xdocs" />
694
  </target>
695
 
696
 
697
</project>