blob: 7df8905da6520b4a2d3eff233fa7a560dd6e983d [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"
4 basedir=".">
david_williamsd913e922006-11-13 07:24:21 +00005
david_williamsa3e48362007-08-22 04:21:50 +00006 <property environment="env" />
7
david_williams5d9c9862007-11-19 04:42:55 +00008 <property
9 name="buildDirectory"
10 value="${buildDirectory}" />
11
david_williamsd913e922006-11-13 07:24:21 +000012 <!-- ===================================================================== -->
13 <!-- Run a given ${target} on all elements being built -->
14 <!-- Add on <ant> task for each top level element being built. -->
15 <!-- ===================================================================== -->
16 <target name="allElements">
david_williams7913a452007-08-26 02:43:50 +000017 <echo level="info" message="Target:${target} " />
18 <echo level="debug" message="basedir: ${basedir}" />
david_williams5d9c9862007-11-19 04:42:55 +000019 <echo level="debug" message="component: ${component}" />
david_williams7913a452007-08-26 02:43:50 +000020 <echo level="debug" message="buildDirectory: ${buildDirectory}" />
21 <echo level="debug" message="baseLocation: ${baseLocation}" />
22 <echo level="debug" message="generic target: ${genericTargets}" />
david_williamsd913e922006-11-13 07:24:21 +000023 <ant
24 antfile="${genericTargets}"
25 target="${target}">
26 <property
27 name="type"
28 value="feature" />
29 <property
30 name="id"
31 value="org.eclipse.wst.sdk" />
32 </ant>
33 </target>
34
35 <!-- ===================================================================== -->
36 <!-- Targets to assemble the built elements for particular configurations -->
37 <!-- These generally call the generated assemble scripts (named in -->
38 <!-- ${assembleScriptName}) but may also add pre and post processing -->
39 <!-- Add one target for each root element and each configuration -->
40 <!-- ===================================================================== -->
41
42 <target name="assemble.org.eclipse.wst.sdk">
43 <property
44 name="archiveName"
45 value="wtp-wst-sdk-${buildLabel}.zip" />
46 <ant
47 antfile="${assembleScriptName}"
48 dir="${buildDirectory}" />
49 </target>
50
51 <target name="prePackage" />
52
53 <target name="postPackage">
54
55 <property
56 name="archiveName"
57 value="wtp-wst-sdk-${buildLabel}.zip" />
58
59 <ant
60 antfile="${wtp.builder.home}/scripts/build/buildutilities.xml"
61 target="unpackUpdateJarsAndCreateZippedPackages">
62 <property
63 name="buildDirectory"
64 value="${buildDirectory}" />
65 <property
66 name="buildLabel"
67 value="${buildLabel}" />
68 <property
69 name="archiveName"
70 value="${archiveName}" />
71 </ant>
72
david_williams1cff0e92006-11-23 00:40:29 +000073 <ant
74 antfile="${wtp.builder.home}/scripts/build/buildutilities.xml"
75 target="createChecksums">
76 <property
77 name="buildDirectory"
78 value="${buildDirectory}" />
79 <property
80 name="buildLabel"
81 value="${buildLabel}" />
82 <property
83 name="archiveName"
84 value="${archiveName}" />
85 </ant>
86
87
88
david_williamsd913e922006-11-13 07:24:21 +000089 </target>
90
91 <!-- ===================================================================== -->
92 <!-- Check out map files from correct repository -->
93 <!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->
94 <!-- ===================================================================== -->
david_williams5d9c9862007-11-19 04:42:55 +000095 <target name="checkLocal" depends="check.useLocalMaps" if="useLocalMaps">
david_williamsd913e922006-11-13 07:24:21 +000096 <available
97 property="mapsLocal"
david_williams34163522007-11-18 00:18:20 +000098 file="${buildDirectory}/maps/${env.RELENG}" />
david_williamsd913e922006-11-13 07:24:21 +000099 </target>
100 <target
101 name="getMapFiles"
102 depends="checkLocal"
103 unless="mapsLocal">
104
105 <!-- *** change the repo info -->
106 <property
107 name="mapCvsRoot"
108 value=":${cvsProtocol}:${cvsUser}@${cvsServer}:${cvsRoot}" />
david_williams5d9c9862007-11-19 04:42:55 +0000109
110 <!-- if not otherwise set, assume HEAD -->
david_williamsd913e922006-11-13 07:24:21 +0000111 <property
112 name="mapVersionTag"
113 value="HEAD" />
david_williams5d9c9862007-11-19 04:42:55 +0000114
115 <echo level="info" message="${mapCvsRoot} ${mapVersionTag} "></echo>
david_williamsd913e922006-11-13 07:24:21 +0000116 <property
117 name="cvsPackage"
david_williams5d9c9862007-11-19 04:42:55 +0000118 value="${env.RELENGMAPS}" />
david_williams7913a452007-08-26 02:43:50 +0000119 <echo level="debug" message="${mapCvsRoot} ${mapVersionTag} " />
120 <echo level="debug" message="cvsPackage = ${cvsPackage} " />
david_williamsd913e922006-11-13 07:24:21 +0000121 <cvs
122 cvsRoot="${mapCvsRoot}"
123 package="${cvsPackage}"
124 dest="${buildDirectory}/maps"
david_williamsa3e48362007-08-22 04:21:50 +0000125 tag="${mapVersionTag}"
126 quiet="${env.CVS_QUIET}"
127 reallyquiet="${env.CVS_REALLY_QUIET}" />
david_williams5d9c9862007-11-19 04:42:55 +0000128<!--
129 <cvs
130 cvsRoot="${mapCvsRoot}"
131 package="${env.RELENGMAPS}"
132 dest="${buildDirectory}/maps"
133 tag="${mapVersionTag}"
134 quiet="${env.CVS_QUIET}"
135 reallyquiet="${env.CVS_REALLY_QUIET}" />
136-->
137
david_williamsd913e922006-11-13 07:24:21 +0000138 <!--tag the map files project-->
139 <antcall target="tagMapFiles">
140 <param
141 name="mapCvsRoot"
142 value="${mapCvsRoot}" />
143 </antcall>
david_williams5d9c9862007-11-19 04:42:55 +0000144
145 <!-- copy all maps to the same place. Be sure to copy only "maps", as there may be "dependancies" etc,
146 that could be out of date -->
147 <!-- turns out this "one flat directory" appears not needed!
148 <copy todir="${buildDirectory}/maps/${env.RELENG}/maps" flatten="true">
149 <fileset dir="${buildDirectory}/maps/">
150 <include name="**/*.map" />
151 </fileset>
152 </copy>
153 -->
154
david_williamsd913e922006-11-13 07:24:21 +0000155 </target>
156
157 <target
158 name="tagMapFiles"
159 if="tagMaps">
160 <cvs
161 cvsRoot="${mapCvsRoot}"
162 dest="${buildDirectory}/maps"
david_williamsa3e48362007-08-22 04:21:50 +0000163 command="tag v${buildType}${timestamp}"
164 quiet="${env.CVS_QUIET}"
165 reallyquiet="${env.CVS_REALLY_QUIET}" />
david_williamsd913e922006-11-13 07:24:21 +0000166 </target>
david_williamsf9aae9f2006-05-26 23:58:24 +0000167
ndaib8cedc82005-09-13 18:00:32 +0000168
david_williamsd913e922006-11-13 07:24:21 +0000169 <!-- ===================================================================== -->
170 <!-- Steps to do before setup -->
171 <!-- ===================================================================== -->
172 <target name="preSetup"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000173
david_williamsd913e922006-11-13 07:24:21 +0000174 <!-- ===================================================================== -->
175 <!-- Steps to do after setup but before starting the build proper -->
176 <!-- ===================================================================== -->
177 <target name="postSetup">
178 <dirname
179 file="${ant.file}"
180 property="component.dir" />
david_williams7913a452007-08-26 02:43:50 +0000181 <echo level="debug" message="ant.file: ${ant.file}" />
182 <echo level="debug" message="component.dir: ${component.dir}" />
david_williamsa0aec8e2006-05-23 00:29:00 +0000183
david_williamsd913e922006-11-13 07:24:21 +0000184 <ant
185 antfile="${component.dir}/dependency.xml"
186 target="get">
187 <property
188 name="dependency.properties"
david_williams771c0a12007-11-17 02:19:01 +0000189 value="${buildDirectory}/maps/${env.RELENG}/maps/dependencies.properties" />
david_williamsd913e922006-11-13 07:24:21 +0000190 <property
191 name="base.install.dir"
192 value="${buildRoot}" />
193 </ant>
david_williamsa0aec8e2006-05-23 00:29:00 +0000194
david_williamsd913e922006-11-13 07:24:21 +0000195 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000196
david_williamsd913e922006-11-13 07:24:21 +0000197 <!-- ===================================================================== -->
198 <!-- Steps to do before fetching the build elements -->
199 <!-- ===================================================================== -->
200 <target name="preFetch"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000201
david_williamsd913e922006-11-13 07:24:21 +0000202 <!-- ===================================================================== -->
203 <!-- Steps to do after fetching the build elements -->
204 <!-- ===================================================================== -->
205 <target name="postFetch"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000206
david_williamsd913e922006-11-13 07:24:21 +0000207 <!-- ===================================================================== -->
208 <!-- Steps to do before generating the build scripts. -->
209 <!-- ===================================================================== -->
david_williams0b74c592007-04-09 06:11:35 +0000210 <target name="postGenerate">
david_williamsa3e48362007-08-22 04:21:50 +0000211 <customizeAccessRules
212 bundleDirectory="${buildDirectory}/plugins"
213 defaultRules="+org/eclipse/wst/**/*, +org/eclipse/jst/**/*" />
david_williams0b74c592007-04-09 06:11:35 +0000214 </target>
david_williamsd913e922006-11-13 07:24:21 +0000215 <!-- ===================================================================== -->
216 <!-- Steps to do after generating the build scripts. -->
217 <!-- ===================================================================== -->
david_williams0b74c592007-04-09 06:11:35 +0000218 <target name="preGenerate"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000219
220
david_williamsd913e922006-11-13 07:24:21 +0000221 <!-- ===================================================================== -->
222 <!-- Steps to do before running the build.xmls for the elements being built. -->
223 <!-- ===================================================================== -->
224 <target name="preProcess">
225 <replace
226 dir="${buildDirectory}/plugins"
227 value="${timestamp}"
228 token="@build@">
229 <include name="**/about.mappings" />
230 </replace>
231 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000232
david_williamsd913e922006-11-13 07:24:21 +0000233 <!-- ===================================================================== -->
234 <!-- Steps to do after running the build.xmls for the elements being built. -->
235 <!-- ===================================================================== -->
236 <target name="postProcess">
david_williamsa3e48362007-08-22 04:21:50 +0000237 <condition property="logsAvailable">
david_williamsd913e922006-11-13 07:24:21 +0000238 <istrue value="${javacVerbose}" />
239 </condition>
david_williamsa3e48362007-08-22 04:21:50 +0000240 <antcall target="gatherLogs" />
david_williamsd913e922006-11-13 07:24:21 +0000241 </target>
ndaib8cedc82005-09-13 18:00:32 +0000242
243
david_williamsd913e922006-11-13 07:24:21 +0000244 <!-- ===================================================================== -->
245 <!-- Steps to do before running assemble. -->
david_williams7ebe2242007-09-06 02:10:39 +0000246 <!-- Note: in version 2.0 (and previous) we need to build the
247 explorer war file by invoking script. In 3.0 forward, we do not,
248 so this simple existence check allows us to use the same script for
249 both streams -->
david_williamsd913e922006-11-13 07:24:21 +0000250 <!-- ===================================================================== -->
david_williams7ebe2242007-09-06 02:10:39 +0000251 <property
252 name="buildwarfilename"
253 value="${buildDirectory}/plugins/org.eclipse.wst.ws.explorer/build-war.xml" />
254 <target
255 name="preAssemble"
256 depends="buildwar">
257 </target>
258
259 <target name="checkForBuildFile">
260 <condition property="buildFileExists">
261 <available file="${buildwarfilename}" />
262 </condition>
263 </target>
264
265 <target
266 name="buildwar"
267 depends="checkForBuildFile"
268 if="buildFileExists">
269 <ant antfile="${buildwarfilename}">
david_williams1cff0e92006-11-23 00:40:29 +0000270 <property
271 name="baseLocation"
272 value="${baseLocation}" />
273 <property
274 name="basedir"
275 value="${buildDirectory}/plugins/org.eclipse.wst.ws.explorer" />
276 <property
277 name="buildDirectory"
278 value="${buildDirectory}" />
279 </ant>
280 </target>
ndaib8cedc82005-09-13 18:00:32 +0000281
david_williamsd913e922006-11-13 07:24:21 +0000282 <!-- ===================================================================== -->
283 <!-- Steps to do after running assemble. -->
284 <!-- ===================================================================== -->
285 <target name="postAssemble">
ndaib8cedc82005-09-13 18:00:32 +0000286
david_williamsd913e922006-11-13 07:24:21 +0000287 </target>
ndaib8cedc82005-09-13 18:00:32 +0000288
david_williamsd913e922006-11-13 07:24:21 +0000289 <!-- ===================================================================== -->
290 <!-- Steps to do after the build is done. -->
291 <!-- ===================================================================== -->
292 <target name="postBuild"></target>
ndaib8cedc82005-09-13 18:00:32 +0000293
david_williamsd913e922006-11-13 07:24:21 +0000294 <!-- ===================================================================== -->
295 <!-- Steps to do to test the build results -->
296 <!-- ===================================================================== -->
297 <target name="test"></target>
ndaib8cedc82005-09-13 18:00:32 +0000298
david_williamsd913e922006-11-13 07:24:21 +0000299 <!-- ===================================================================== -->
300 <!-- Steps to do to publish the build results -->
301 <!-- ===================================================================== -->
302 <target name="publish"></target>
ndaib8cedc82005-09-13 18:00:32 +0000303
david_williamsd913e922006-11-13 07:24:21 +0000304 <!-- ===================================================================== -->
305 <!-- Helper targets -->
306 <!-- ===================================================================== -->
307 <target
308 name="gatherLogs"
309 if="logsAvailable">
310 <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
david_williams7913a452007-08-26 02:43:50 +0000311 <echo level="debug" message="logExtension: ${logExtension}" />
david_williamsd913e922006-11-13 07:24:21 +0000312 <antcall target="allElements">
313 <param
314 name="target"
315 value="gatherLogs" />
david_williams0b74c592007-04-09 06:11:35 +0000316 <param
317 name="logExtension"
318 value="${logExtension}" />
david_williamsd913e922006-11-13 07:24:21 +0000319 </antcall>
david_williamsd913e922006-11-13 07:24:21 +0000320 <unzip
321 dest="${buildDirectory}/${buildLabel}/compilelogs"
322 overwrite="true">
david_williamsa3e48362007-08-22 04:21:50 +0000323 <fileset
324 dir="${buildDirectory}/features/org.eclipse.wst.sdk">
david_williamsd913e922006-11-13 07:24:21 +0000325 <include name="**/*.log.zip" />
326 </fileset>
327 </unzip>
david_williams1cff0e92006-11-23 00:40:29 +0000328
david_williams0b74c592007-04-09 06:11:35 +0000329
david_williams1cff0e92006-11-23 00:40:29 +0000330 <!-- workaround: see https://bugs.eclipse.org/bugs/show_bug.cgi?id=156043 -->
331 <copy
332 todir="${buildDirectory}/${buildLabel}/compilelogs"
333 overwrite="true">
334 <fileset
335 dir="${buildDirectory}/features/org.eclipse.wst.common_ui.feature/feature.temp.folder" />
336 </copy>
337
338 <copy
339 todir="${buildDirectory}/${buildLabel}/compilelogs"
340 overwrite="true">
341 <fileset
342 dir="${buildDirectory}/features/org.eclipse.wst.server_ui.feature/feature.temp.folder" />
343 </copy>
344
345 <copy
346 todir="${buildDirectory}/${buildLabel}/compilelogs"
347 overwrite="true">
348 <fileset
349 dir="${buildDirectory}/features/org.eclipse.wst.xml_ui.feature/feature.temp.folder" />
350 </copy>
351
352 <copy
353 todir="${buildDirectory}/${buildLabel}/compilelogs"
354 overwrite="true">
355 <fileset
356 dir="${buildDirectory}/features/org.eclipse.wst.ws_ui.feature/feature.temp.folder" />
357 </copy>
358
359 <copy
360 todir="${buildDirectory}/${buildLabel}/compilelogs"
361 overwrite="true">
362 <fileset
363 dir="${buildDirectory}/features/org.eclipse.wst.web_ui.feature/feature.temp.folder" />
364 </copy>
365
david_williamsd913e922006-11-13 07:24:21 +0000366 </target>
ndaib8cedc82005-09-13 18:00:32 +0000367
david_williamsd913e922006-11-13 07:24:21 +0000368 <target
369 name="clean"
370 unless="noclean">
371 <antcall target="allElements">
372 <param
373 name="target"
374 value="cleanElement" />
375 </antcall>
376 </target>
ndaib8cedc82005-09-13 18:00:32 +0000377
david_williamsd913e922006-11-13 07:24:21 +0000378 <!-- ===================================================================== -->
379 <!-- Default target -->
380 <!-- ===================================================================== -->
381 <target name="noDefault">
david_williams7913a452007-08-26 02:43:50 +0000382 <echo level="error"
david_williamsa3e48362007-08-22 04:21:50 +0000383 message="You must specify a target when invoking this file" />
david_williamsd913e922006-11-13 07:24:21 +0000384 </target>
ndaib8cedc82005-09-13 18:00:32 +0000385
david_williams5d9c9862007-11-19 04:42:55 +0000386 <target name="check.useLocalMaps">
387 <condition property="useLocalMaps">
388 <equals arg1="${env.USE_LOCAL_MAPS}" arg2="true" />
389 </condition>
390 </target>
391
ndaib8cedc82005-09-13 18:00:32 +0000392</project>