blob: d4e4a2fd50b34ed87ea5608f669ef73da51f0d0e [file] [log] [blame]
david_williamsd913e922006-11-13 07:24:21 +00001<project
david_williams05dbe622007-12-09 01:20:57 +00002 name="PDECustomTargets"
3 default="noDefault"
david_williams403beae2007-12-09 02:10:40 +00004 basedir=".">
david_williamsd913e922006-11-13 07:24:21 +00005
david_williamsa3e48362007-08-22 04:21:50 +00006 <property environment="env" />
7
david_williams842e4192007-12-09 07:44:35 +00008 <property
9 name="cvsProtocol"
10 value="${env.WTP_CVS_PROTOCOL}" />
11 <property
12 name="cvsUser"
13 value="${env.WTP_CVS_USER}" />
14 <property
15 name="cvsServer"
16 value="${env.WTP_CVS_SERVER}" />
17 <property
18 name="cvsRoot"
19 value="${env.WTP_CVS_ROOT}" />
20
david_williamsd913e922006-11-13 07:24:21 +000021 <!-- ===================================================================== -->
22 <!-- Run a given ${target} on all elements being built -->
23 <!-- Add on <ant> task for each top level element being built. -->
24 <!-- ===================================================================== -->
25 <target name="allElements">
david_williams403beae2007-12-09 02:10:40 +000026 <echo
27 level="info"
28 message="Target:${target} " />
29 <echo
30 level="debug"
31 message="basedir: ${basedir}" />
32 <echo
33 level="debug"
34 message="component: ${component}" />
35 <echo
36 level="debug"
37 message="buildDirectory: ${buildDirectory}" />
38 <echo
39 level="debug"
40 message="baseLocation: ${baseLocation}" />
41 <echo
42 level="debug"
43 message="generic target: ${genericTargets}" />
david_williamsd913e922006-11-13 07:24:21 +000044 <ant
45 antfile="${genericTargets}"
46 target="${target}">
47 <property
48 name="type"
49 value="feature" />
50 <property
51 name="id"
52 value="org.eclipse.wst.sdk" />
53 </ant>
54 </target>
55
56 <!-- ===================================================================== -->
57 <!-- Targets to assemble the built elements for particular configurations -->
58 <!-- These generally call the generated assemble scripts (named in -->
59 <!-- ${assembleScriptName}) but may also add pre and post processing -->
60 <!-- Add one target for each root element and each configuration -->
61 <!-- ===================================================================== -->
62
63 <target name="assemble.org.eclipse.wst.sdk">
64 <property
65 name="archiveName"
66 value="wtp-wst-sdk-${buildLabel}.zip" />
67 <ant
68 antfile="${assembleScriptName}"
69 dir="${buildDirectory}" />
70 </target>
71
72 <target name="prePackage" />
73
74 <target name="postPackage">
75
76 <property
77 name="archiveName"
78 value="wtp-wst-sdk-${buildLabel}.zip" />
79
80 <ant
81 antfile="${wtp.builder.home}/scripts/build/buildutilities.xml"
82 target="unpackUpdateJarsAndCreateZippedPackages">
83 <property
84 name="buildDirectory"
85 value="${buildDirectory}" />
86 <property
87 name="buildLabel"
88 value="${buildLabel}" />
89 <property
90 name="archiveName"
91 value="${archiveName}" />
92 </ant>
93
david_williams1cff0e92006-11-23 00:40:29 +000094 <ant
95 antfile="${wtp.builder.home}/scripts/build/buildutilities.xml"
96 target="createChecksums">
97 <property
98 name="buildDirectory"
99 value="${buildDirectory}" />
100 <property
101 name="buildLabel"
102 value="${buildLabel}" />
103 <property
104 name="archiveName"
105 value="${archiveName}" />
106 </ant>
107
108
109
david_williamsd913e922006-11-13 07:24:21 +0000110 </target>
111
112 <!-- ===================================================================== -->
113 <!-- Check out map files from correct repository -->
114 <!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->
115 <!-- ===================================================================== -->
david_williams403beae2007-12-09 02:10:40 +0000116 <target
117 name="checkLocal"
118 depends="check.useLocalMaps"
119 if="useLocalMaps">
david_williamsd913e922006-11-13 07:24:21 +0000120 <available
121 property="mapsLocal"
david_williams34163522007-11-18 00:18:20 +0000122 file="${buildDirectory}/maps/${env.RELENG}" />
david_williamsd913e922006-11-13 07:24:21 +0000123 </target>
124 <target
125 name="getMapFiles"
126 depends="checkLocal"
127 unless="mapsLocal">
128
129 <!-- *** change the repo info -->
130 <property
131 name="mapCvsRoot"
132 value=":${cvsProtocol}:${cvsUser}@${cvsServer}:${cvsRoot}" />
david_williams5d9c9862007-11-19 04:42:55 +0000133
134 <!-- if not otherwise set, assume HEAD -->
david_williamsd913e922006-11-13 07:24:21 +0000135 <property
136 name="mapVersionTag"
137 value="HEAD" />
david_williams403beae2007-12-09 02:10:40 +0000138
139 <echo
140 level="info"
141 message="${mapCvsRoot} ${mapVersionTag} ">
142 </echo>
david_williamsd913e922006-11-13 07:24:21 +0000143 <property
144 name="cvsPackage"
david_williams5d9c9862007-11-19 04:42:55 +0000145 value="${env.RELENGMAPS}" />
david_williams403beae2007-12-09 02:10:40 +0000146 <echo
147 level="debug"
148 message="${mapCvsRoot} ${mapVersionTag} " />
149 <echo
150 level="debug"
151 message="cvsPackage = ${cvsPackage} " />
david_williamsd913e922006-11-13 07:24:21 +0000152 <cvs
153 cvsRoot="${mapCvsRoot}"
154 package="${cvsPackage}"
155 dest="${buildDirectory}/maps"
david_williamsa3e48362007-08-22 04:21:50 +0000156 tag="${mapVersionTag}"
157 quiet="${env.CVS_QUIET}"
158 reallyquiet="${env.CVS_REALLY_QUIET}" />
david_williams403beae2007-12-09 02:10:40 +0000159 <!--
160 <cvs
161 cvsRoot="${mapCvsRoot}"
162 package="${env.RELENGMAPS}"
163 dest="${buildDirectory}/maps"
164 tag="${mapVersionTag}"
165 quiet="${env.CVS_QUIET}"
166 reallyquiet="${env.CVS_REALLY_QUIET}" />
167 -->
david_williams5d9c9862007-11-19 04:42:55 +0000168
david_williamsd913e922006-11-13 07:24:21 +0000169 <!--tag the map files project-->
170 <antcall target="tagMapFiles">
171 <param
172 name="mapCvsRoot"
173 value="${mapCvsRoot}" />
174 </antcall>
david_williams5d9c9862007-11-19 04:42:55 +0000175
david_williams403beae2007-12-09 02:10:40 +0000176 <!-- copy all maps to the same place. Be sure to copy only "maps", as there may be "dependancies" etc,
177 that could be out of date -->
178 <!-- turns out this "one flat directory" appears not needed!
179 <copy todir="${buildDirectory}/maps/${env.RELENG}/maps" flatten="true">
180 <fileset dir="${buildDirectory}/maps/">
181 <include name="**/*.map" />
182 </fileset>
183 </copy>
184 -->
david_williams5d9c9862007-11-19 04:42:55 +0000185
david_williamsd913e922006-11-13 07:24:21 +0000186 </target>
187
188 <target
189 name="tagMapFiles"
190 if="tagMaps">
191 <cvs
192 cvsRoot="${mapCvsRoot}"
193 dest="${buildDirectory}/maps"
david_williamsa3e48362007-08-22 04:21:50 +0000194 command="tag v${buildType}${timestamp}"
195 quiet="${env.CVS_QUIET}"
196 reallyquiet="${env.CVS_REALLY_QUIET}" />
david_williamsd913e922006-11-13 07:24:21 +0000197 </target>
david_williamsf9aae9f2006-05-26 23:58:24 +0000198
ndaib8cedc82005-09-13 18:00:32 +0000199
david_williamsd913e922006-11-13 07:24:21 +0000200 <!-- ===================================================================== -->
201 <!-- Steps to do before setup -->
202 <!-- ===================================================================== -->
203 <target name="preSetup"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000204
david_williamsd913e922006-11-13 07:24:21 +0000205 <!-- ===================================================================== -->
206 <!-- Steps to do after setup but before starting the build proper -->
207 <!-- ===================================================================== -->
208 <target name="postSetup">
209 <dirname
210 file="${ant.file}"
211 property="component.dir" />
david_williams403beae2007-12-09 02:10:40 +0000212 <echo
213 level="debug"
214 message="ant.file: ${ant.file}" />
215 <echo
216 level="debug"
217 message="component.dir: ${component.dir}" />
david_williamsa0aec8e2006-05-23 00:29:00 +0000218
david_williamsd913e922006-11-13 07:24:21 +0000219 <ant
220 antfile="${component.dir}/dependency.xml"
221 target="get">
222 <property
223 name="dependency.properties"
david_williams771c0a12007-11-17 02:19:01 +0000224 value="${buildDirectory}/maps/${env.RELENG}/maps/dependencies.properties" />
david_williamsd913e922006-11-13 07:24:21 +0000225 <property
226 name="base.install.dir"
227 value="${buildRoot}" />
228 </ant>
david_williamsa0aec8e2006-05-23 00:29:00 +0000229
david_williamsd913e922006-11-13 07:24:21 +0000230 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000231
david_williamsd913e922006-11-13 07:24:21 +0000232 <!-- ===================================================================== -->
233 <!-- Steps to do before fetching the build elements -->
234 <!-- ===================================================================== -->
235 <target name="preFetch"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000236
david_williamsd913e922006-11-13 07:24:21 +0000237 <!-- ===================================================================== -->
238 <!-- Steps to do after fetching the build elements -->
239 <!-- ===================================================================== -->
240 <target name="postFetch"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000241
david_williamsd913e922006-11-13 07:24:21 +0000242 <!-- ===================================================================== -->
243 <!-- Steps to do before generating the build scripts. -->
244 <!-- ===================================================================== -->
david_williams0b74c592007-04-09 06:11:35 +0000245 <target name="postGenerate">
david_williamsa3e48362007-08-22 04:21:50 +0000246 <customizeAccessRules
247 bundleDirectory="${buildDirectory}/plugins"
248 defaultRules="+org/eclipse/wst/**/*, +org/eclipse/jst/**/*" />
david_williams0b74c592007-04-09 06:11:35 +0000249 </target>
david_williamsd913e922006-11-13 07:24:21 +0000250 <!-- ===================================================================== -->
251 <!-- Steps to do after generating the build scripts. -->
252 <!-- ===================================================================== -->
david_williams0b74c592007-04-09 06:11:35 +0000253 <target name="preGenerate"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000254
255
david_williamsd913e922006-11-13 07:24:21 +0000256 <!-- ===================================================================== -->
257 <!-- Steps to do before running the build.xmls for the elements being built. -->
258 <!-- ===================================================================== -->
259 <target name="preProcess">
260 <replace
261 dir="${buildDirectory}/plugins"
262 value="${timestamp}"
263 token="@build@">
264 <include name="**/about.mappings" />
265 </replace>
266 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000267
david_williamsd913e922006-11-13 07:24:21 +0000268 <!-- ===================================================================== -->
269 <!-- Steps to do after running the build.xmls for the elements being built. -->
270 <!-- ===================================================================== -->
271 <target name="postProcess">
david_williamsa3e48362007-08-22 04:21:50 +0000272 <condition property="logsAvailable">
david_williamsd913e922006-11-13 07:24:21 +0000273 <istrue value="${javacVerbose}" />
274 </condition>
david_williamsa3e48362007-08-22 04:21:50 +0000275 <antcall target="gatherLogs" />
david_williamsd913e922006-11-13 07:24:21 +0000276 </target>
ndaib8cedc82005-09-13 18:00:32 +0000277
278
david_williamsd913e922006-11-13 07:24:21 +0000279 <!-- ===================================================================== -->
280 <!-- Steps to do before running assemble. -->
david_williams7ebe2242007-09-06 02:10:39 +0000281 <!-- Note: in version 2.0 (and previous) we need to build the
282 explorer war file by invoking script. In 3.0 forward, we do not,
283 so this simple existence check allows us to use the same script for
284 both streams -->
david_williamsd913e922006-11-13 07:24:21 +0000285 <!-- ===================================================================== -->
david_williams7ebe2242007-09-06 02:10:39 +0000286 <property
287 name="buildwarfilename"
288 value="${buildDirectory}/plugins/org.eclipse.wst.ws.explorer/build-war.xml" />
289 <target
290 name="preAssemble"
291 depends="buildwar">
292 </target>
293
294 <target name="checkForBuildFile">
295 <condition property="buildFileExists">
296 <available file="${buildwarfilename}" />
297 </condition>
298 </target>
299
300 <target
301 name="buildwar"
302 depends="checkForBuildFile"
303 if="buildFileExists">
304 <ant antfile="${buildwarfilename}">
david_williams1cff0e92006-11-23 00:40:29 +0000305 <property
306 name="baseLocation"
307 value="${baseLocation}" />
308 <property
309 name="basedir"
310 value="${buildDirectory}/plugins/org.eclipse.wst.ws.explorer" />
311 <property
312 name="buildDirectory"
313 value="${buildDirectory}" />
314 </ant>
315 </target>
ndaib8cedc82005-09-13 18:00:32 +0000316
david_williamsd913e922006-11-13 07:24:21 +0000317 <!-- ===================================================================== -->
318 <!-- Steps to do after running assemble. -->
319 <!-- ===================================================================== -->
320 <target name="postAssemble">
ndaib8cedc82005-09-13 18:00:32 +0000321
david_williamsd913e922006-11-13 07:24:21 +0000322 </target>
ndaib8cedc82005-09-13 18:00:32 +0000323
david_williamsd913e922006-11-13 07:24:21 +0000324 <!-- ===================================================================== -->
325 <!-- Steps to do after the build is done. -->
326 <!-- ===================================================================== -->
327 <target name="postBuild"></target>
ndaib8cedc82005-09-13 18:00:32 +0000328
david_williamsd913e922006-11-13 07:24:21 +0000329 <!-- ===================================================================== -->
330 <!-- Steps to do to test the build results -->
331 <!-- ===================================================================== -->
332 <target name="test"></target>
ndaib8cedc82005-09-13 18:00:32 +0000333
david_williamsd913e922006-11-13 07:24:21 +0000334 <!-- ===================================================================== -->
335 <!-- Steps to do to publish the build results -->
336 <!-- ===================================================================== -->
337 <target name="publish"></target>
ndaib8cedc82005-09-13 18:00:32 +0000338
david_williamsd913e922006-11-13 07:24:21 +0000339 <!-- ===================================================================== -->
340 <!-- Helper targets -->
341 <!-- ===================================================================== -->
342 <target
343 name="gatherLogs"
344 if="logsAvailable">
345 <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
david_williams403beae2007-12-09 02:10:40 +0000346 <echo
347 level="debug"
348 message="logExtension: ${logExtension}" />
david_williamsd913e922006-11-13 07:24:21 +0000349 <antcall target="allElements">
350 <param
351 name="target"
352 value="gatherLogs" />
david_williams0b74c592007-04-09 06:11:35 +0000353 <param
354 name="logExtension"
355 value="${logExtension}" />
david_williamsd913e922006-11-13 07:24:21 +0000356 </antcall>
david_williamsd913e922006-11-13 07:24:21 +0000357 <unzip
358 dest="${buildDirectory}/${buildLabel}/compilelogs"
359 overwrite="true">
david_williamsa3e48362007-08-22 04:21:50 +0000360 <fileset
361 dir="${buildDirectory}/features/org.eclipse.wst.sdk">
david_williamsd913e922006-11-13 07:24:21 +0000362 <include name="**/*.log.zip" />
363 </fileset>
364 </unzip>
david_williams1cff0e92006-11-23 00:40:29 +0000365
david_williams0b74c592007-04-09 06:11:35 +0000366
david_williams1cff0e92006-11-23 00:40:29 +0000367 <!-- workaround: see https://bugs.eclipse.org/bugs/show_bug.cgi?id=156043 -->
368 <copy
369 todir="${buildDirectory}/${buildLabel}/compilelogs"
370 overwrite="true">
371 <fileset
372 dir="${buildDirectory}/features/org.eclipse.wst.common_ui.feature/feature.temp.folder" />
373 </copy>
374
375 <copy
376 todir="${buildDirectory}/${buildLabel}/compilelogs"
377 overwrite="true">
378 <fileset
379 dir="${buildDirectory}/features/org.eclipse.wst.server_ui.feature/feature.temp.folder" />
380 </copy>
381
382 <copy
383 todir="${buildDirectory}/${buildLabel}/compilelogs"
384 overwrite="true">
385 <fileset
386 dir="${buildDirectory}/features/org.eclipse.wst.xml_ui.feature/feature.temp.folder" />
387 </copy>
388
389 <copy
390 todir="${buildDirectory}/${buildLabel}/compilelogs"
391 overwrite="true">
392 <fileset
393 dir="${buildDirectory}/features/org.eclipse.wst.ws_ui.feature/feature.temp.folder" />
394 </copy>
395
396 <copy
397 todir="${buildDirectory}/${buildLabel}/compilelogs"
398 overwrite="true">
399 <fileset
400 dir="${buildDirectory}/features/org.eclipse.wst.web_ui.feature/feature.temp.folder" />
401 </copy>
402
david_williamsd913e922006-11-13 07:24:21 +0000403 </target>
ndaib8cedc82005-09-13 18:00:32 +0000404
david_williamsd913e922006-11-13 07:24:21 +0000405 <target
406 name="clean"
407 unless="noclean">
408 <antcall target="allElements">
409 <param
410 name="target"
411 value="cleanElement" />
412 </antcall>
413 </target>
ndaib8cedc82005-09-13 18:00:32 +0000414
david_williamsd913e922006-11-13 07:24:21 +0000415 <!-- ===================================================================== -->
416 <!-- Default target -->
417 <!-- ===================================================================== -->
418 <target name="noDefault">
david_williams403beae2007-12-09 02:10:40 +0000419 <echo
420 level="error"
david_williamsa3e48362007-08-22 04:21:50 +0000421 message="You must specify a target when invoking this file" />
david_williamsd913e922006-11-13 07:24:21 +0000422 </target>
ndaib8cedc82005-09-13 18:00:32 +0000423
david_williams403beae2007-12-09 02:10:40 +0000424 <target name="check.useLocalMaps">
425 <condition property="useLocalMaps">
426 <equals
427 arg1="${env.USE_LOCAL_MAPS}"
428 arg2="true" />
429 </condition>
david_williams5d9c9862007-11-19 04:42:55 +0000430 </target>
431
ndaib8cedc82005-09-13 18:00:32 +0000432</project>