blob: f2d59288cbc365251e7c141cf8c9f50c9c9bb6b1 [file] [log] [blame]
david_williamsd913e922006-11-13 07:24:21 +00001<project
2 name="Build specific targets and properties"
3 default="noDefault">
4
david_williamsa3e48362007-08-22 04:21:50 +00005 <property environment="env" />
6
david_williams5d9c9862007-11-19 04:42:55 +00007 <property
8 name="buildDirectory"
9 value="${buildDirectory}" />
10
david_williamsd913e922006-11-13 07:24:21 +000011 <!-- ===================================================================== -->
12 <!-- Run a given ${target} on all elements being built -->
13 <!-- Add on <ant> task for each top level element being built. -->
14 <!-- ===================================================================== -->
15 <target name="allElements">
david_williams7913a452007-08-26 02:43:50 +000016 <echo level="info" message="Target:${target} " />
17 <echo level="debug" message="basedir: ${basedir}" />
david_williams5d9c9862007-11-19 04:42:55 +000018 <echo level="debug" message="component: ${component}" />
david_williams7913a452007-08-26 02:43:50 +000019 <echo level="debug" message="buildDirectory: ${buildDirectory}" />
20 <echo level="debug" message="baseLocation: ${baseLocation}" />
21 <echo level="debug" message="generic target: ${genericTargets}" />
david_williamsd913e922006-11-13 07:24:21 +000022 <ant
23 antfile="${genericTargets}"
24 target="${target}">
25 <property
26 name="type"
27 value="feature" />
28 <property
29 name="id"
30 value="org.eclipse.wst.sdk" />
31 </ant>
32 </target>
33
34 <!-- ===================================================================== -->
35 <!-- Targets to assemble the built elements for particular configurations -->
36 <!-- These generally call the generated assemble scripts (named in -->
37 <!-- ${assembleScriptName}) but may also add pre and post processing -->
38 <!-- Add one target for each root element and each configuration -->
39 <!-- ===================================================================== -->
40
41 <target name="assemble.org.eclipse.wst.sdk">
42 <property
43 name="archiveName"
44 value="wtp-wst-sdk-${buildLabel}.zip" />
45 <ant
46 antfile="${assembleScriptName}"
47 dir="${buildDirectory}" />
48 </target>
49
50 <target name="prePackage" />
51
52 <target name="postPackage">
53
54 <property
55 name="archiveName"
56 value="wtp-wst-sdk-${buildLabel}.zip" />
57
58 <ant
59 antfile="${wtp.builder.home}/scripts/build/buildutilities.xml"
60 target="unpackUpdateJarsAndCreateZippedPackages">
61 <property
62 name="buildDirectory"
63 value="${buildDirectory}" />
64 <property
65 name="buildLabel"
66 value="${buildLabel}" />
67 <property
68 name="archiveName"
69 value="${archiveName}" />
70 </ant>
71
david_williams1cff0e92006-11-23 00:40:29 +000072 <ant
73 antfile="${wtp.builder.home}/scripts/build/buildutilities.xml"
74 target="createChecksums">
75 <property
76 name="buildDirectory"
77 value="${buildDirectory}" />
78 <property
79 name="buildLabel"
80 value="${buildLabel}" />
81 <property
82 name="archiveName"
83 value="${archiveName}" />
84 </ant>
85
86
87
david_williamsd913e922006-11-13 07:24:21 +000088 </target>
89
90 <!-- ===================================================================== -->
91 <!-- Check out map files from correct repository -->
92 <!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->
93 <!-- ===================================================================== -->
david_williams5d9c9862007-11-19 04:42:55 +000094 <target name="checkLocal" depends="check.useLocalMaps" if="useLocalMaps">
david_williamsd913e922006-11-13 07:24:21 +000095 <available
96 property="mapsLocal"
david_williams34163522007-11-18 00:18:20 +000097 file="${buildDirectory}/maps/${env.RELENG}" />
david_williamsd913e922006-11-13 07:24:21 +000098 </target>
99 <target
100 name="getMapFiles"
101 depends="checkLocal"
102 unless="mapsLocal">
103
104 <!-- *** change the repo info -->
105 <property
106 name="mapCvsRoot"
107 value=":${cvsProtocol}:${cvsUser}@${cvsServer}:${cvsRoot}" />
david_williams5d9c9862007-11-19 04:42:55 +0000108
109 <!-- if not otherwise set, assume HEAD -->
david_williamsd913e922006-11-13 07:24:21 +0000110 <property
111 name="mapVersionTag"
112 value="HEAD" />
david_williams5d9c9862007-11-19 04:42:55 +0000113
114 <echo level="info" message="${mapCvsRoot} ${mapVersionTag} "></echo>
david_williamsd913e922006-11-13 07:24:21 +0000115 <property
116 name="cvsPackage"
david_williams5d9c9862007-11-19 04:42:55 +0000117 value="${env.RELENGMAPS}" />
david_williams7913a452007-08-26 02:43:50 +0000118 <echo level="debug" message="${mapCvsRoot} ${mapVersionTag} " />
119 <echo level="debug" message="cvsPackage = ${cvsPackage} " />
david_williamsd913e922006-11-13 07:24:21 +0000120 <cvs
121 cvsRoot="${mapCvsRoot}"
122 package="${cvsPackage}"
123 dest="${buildDirectory}/maps"
david_williamsa3e48362007-08-22 04:21:50 +0000124 tag="${mapVersionTag}"
125 quiet="${env.CVS_QUIET}"
126 reallyquiet="${env.CVS_REALLY_QUIET}" />
david_williams5d9c9862007-11-19 04:42:55 +0000127<!--
128 <cvs
129 cvsRoot="${mapCvsRoot}"
130 package="${env.RELENGMAPS}"
131 dest="${buildDirectory}/maps"
132 tag="${mapVersionTag}"
133 quiet="${env.CVS_QUIET}"
134 reallyquiet="${env.CVS_REALLY_QUIET}" />
135-->
136
david_williamsd913e922006-11-13 07:24:21 +0000137 <!--tag the map files project-->
138 <antcall target="tagMapFiles">
139 <param
140 name="mapCvsRoot"
141 value="${mapCvsRoot}" />
142 </antcall>
david_williams5d9c9862007-11-19 04:42:55 +0000143
144 <!-- copy all maps to the same place. Be sure to copy only "maps", as there may be "dependancies" etc,
145 that could be out of date -->
146 <!-- turns out this "one flat directory" appears not needed!
147 <copy todir="${buildDirectory}/maps/${env.RELENG}/maps" flatten="true">
148 <fileset dir="${buildDirectory}/maps/">
149 <include name="**/*.map" />
150 </fileset>
151 </copy>
152 -->
153
david_williamsd913e922006-11-13 07:24:21 +0000154 </target>
155
156 <target
157 name="tagMapFiles"
158 if="tagMaps">
159 <cvs
160 cvsRoot="${mapCvsRoot}"
161 dest="${buildDirectory}/maps"
david_williamsa3e48362007-08-22 04:21:50 +0000162 command="tag v${buildType}${timestamp}"
163 quiet="${env.CVS_QUIET}"
164 reallyquiet="${env.CVS_REALLY_QUIET}" />
david_williamsd913e922006-11-13 07:24:21 +0000165 </target>
david_williamsf9aae9f2006-05-26 23:58:24 +0000166
ndaib8cedc82005-09-13 18:00:32 +0000167
david_williamsd913e922006-11-13 07:24:21 +0000168 <!-- ===================================================================== -->
169 <!-- Steps to do before setup -->
170 <!-- ===================================================================== -->
171 <target name="preSetup"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000172
david_williamsd913e922006-11-13 07:24:21 +0000173 <!-- ===================================================================== -->
174 <!-- Steps to do after setup but before starting the build proper -->
175 <!-- ===================================================================== -->
176 <target name="postSetup">
177 <dirname
178 file="${ant.file}"
179 property="component.dir" />
david_williams7913a452007-08-26 02:43:50 +0000180 <echo level="debug" message="ant.file: ${ant.file}" />
181 <echo level="debug" message="component.dir: ${component.dir}" />
david_williamsa0aec8e2006-05-23 00:29:00 +0000182
david_williamsd913e922006-11-13 07:24:21 +0000183 <ant
184 antfile="${component.dir}/dependency.xml"
185 target="get">
186 <property
187 name="dependency.properties"
david_williams771c0a12007-11-17 02:19:01 +0000188 value="${buildDirectory}/maps/${env.RELENG}/maps/dependencies.properties" />
david_williamsd913e922006-11-13 07:24:21 +0000189 <property
190 name="base.install.dir"
191 value="${buildRoot}" />
192 </ant>
david_williamsa0aec8e2006-05-23 00:29:00 +0000193
david_williamsd913e922006-11-13 07:24:21 +0000194 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000195
david_williamsd913e922006-11-13 07:24:21 +0000196 <!-- ===================================================================== -->
197 <!-- Steps to do before fetching the build elements -->
198 <!-- ===================================================================== -->
199 <target name="preFetch"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000200
david_williamsd913e922006-11-13 07:24:21 +0000201 <!-- ===================================================================== -->
202 <!-- Steps to do after fetching the build elements -->
203 <!-- ===================================================================== -->
204 <target name="postFetch"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000205
david_williamsd913e922006-11-13 07:24:21 +0000206 <!-- ===================================================================== -->
207 <!-- Steps to do before generating the build scripts. -->
208 <!-- ===================================================================== -->
david_williams0b74c592007-04-09 06:11:35 +0000209 <target name="postGenerate">
david_williamsa3e48362007-08-22 04:21:50 +0000210 <customizeAccessRules
211 bundleDirectory="${buildDirectory}/plugins"
212 defaultRules="+org/eclipse/wst/**/*, +org/eclipse/jst/**/*" />
david_williams0b74c592007-04-09 06:11:35 +0000213 </target>
david_williamsd913e922006-11-13 07:24:21 +0000214 <!-- ===================================================================== -->
215 <!-- Steps to do after generating the build scripts. -->
216 <!-- ===================================================================== -->
david_williams0b74c592007-04-09 06:11:35 +0000217 <target name="preGenerate"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000218
219
david_williamsd913e922006-11-13 07:24:21 +0000220 <!-- ===================================================================== -->
221 <!-- Steps to do before running the build.xmls for the elements being built. -->
222 <!-- ===================================================================== -->
223 <target name="preProcess">
224 <replace
225 dir="${buildDirectory}/plugins"
226 value="${timestamp}"
227 token="@build@">
228 <include name="**/about.mappings" />
229 </replace>
230 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000231
david_williamsd913e922006-11-13 07:24:21 +0000232 <!-- ===================================================================== -->
233 <!-- Steps to do after running the build.xmls for the elements being built. -->
234 <!-- ===================================================================== -->
235 <target name="postProcess">
david_williamsa3e48362007-08-22 04:21:50 +0000236 <condition property="logsAvailable">
david_williamsd913e922006-11-13 07:24:21 +0000237 <istrue value="${javacVerbose}" />
238 </condition>
david_williamsa3e48362007-08-22 04:21:50 +0000239 <antcall target="gatherLogs" />
david_williamsd913e922006-11-13 07:24:21 +0000240 </target>
ndaib8cedc82005-09-13 18:00:32 +0000241
242
david_williamsd913e922006-11-13 07:24:21 +0000243 <!-- ===================================================================== -->
244 <!-- Steps to do before running assemble. -->
david_williams7ebe2242007-09-06 02:10:39 +0000245 <!-- Note: in version 2.0 (and previous) we need to build the
246 explorer war file by invoking script. In 3.0 forward, we do not,
247 so this simple existence check allows us to use the same script for
248 both streams -->
david_williamsd913e922006-11-13 07:24:21 +0000249 <!-- ===================================================================== -->
david_williams7ebe2242007-09-06 02:10:39 +0000250 <property
251 name="buildwarfilename"
252 value="${buildDirectory}/plugins/org.eclipse.wst.ws.explorer/build-war.xml" />
253 <target
254 name="preAssemble"
255 depends="buildwar">
256 </target>
257
258 <target name="checkForBuildFile">
259 <condition property="buildFileExists">
260 <available file="${buildwarfilename}" />
261 </condition>
262 </target>
263
264 <target
265 name="buildwar"
266 depends="checkForBuildFile"
267 if="buildFileExists">
268 <ant antfile="${buildwarfilename}">
david_williams1cff0e92006-11-23 00:40:29 +0000269 <property
270 name="baseLocation"
271 value="${baseLocation}" />
272 <property
273 name="basedir"
274 value="${buildDirectory}/plugins/org.eclipse.wst.ws.explorer" />
275 <property
276 name="buildDirectory"
277 value="${buildDirectory}" />
278 </ant>
279 </target>
ndaib8cedc82005-09-13 18:00:32 +0000280
david_williamsd913e922006-11-13 07:24:21 +0000281 <!-- ===================================================================== -->
282 <!-- Steps to do after running assemble. -->
283 <!-- ===================================================================== -->
284 <target name="postAssemble">
ndaib8cedc82005-09-13 18:00:32 +0000285
david_williamsd913e922006-11-13 07:24:21 +0000286 </target>
ndaib8cedc82005-09-13 18:00:32 +0000287
david_williamsd913e922006-11-13 07:24:21 +0000288 <!-- ===================================================================== -->
289 <!-- Steps to do after the build is done. -->
290 <!-- ===================================================================== -->
291 <target name="postBuild"></target>
ndaib8cedc82005-09-13 18:00:32 +0000292
david_williamsd913e922006-11-13 07:24:21 +0000293 <!-- ===================================================================== -->
294 <!-- Steps to do to test the build results -->
295 <!-- ===================================================================== -->
296 <target name="test"></target>
ndaib8cedc82005-09-13 18:00:32 +0000297
david_williamsd913e922006-11-13 07:24:21 +0000298 <!-- ===================================================================== -->
299 <!-- Steps to do to publish the build results -->
300 <!-- ===================================================================== -->
301 <target name="publish"></target>
ndaib8cedc82005-09-13 18:00:32 +0000302
david_williamsd913e922006-11-13 07:24:21 +0000303 <!-- ===================================================================== -->
304 <!-- Helper targets -->
305 <!-- ===================================================================== -->
306 <target
307 name="gatherLogs"
308 if="logsAvailable">
309 <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
david_williams7913a452007-08-26 02:43:50 +0000310 <echo level="debug" message="logExtension: ${logExtension}" />
david_williamsd913e922006-11-13 07:24:21 +0000311 <antcall target="allElements">
312 <param
313 name="target"
314 value="gatherLogs" />
david_williams0b74c592007-04-09 06:11:35 +0000315 <param
316 name="logExtension"
317 value="${logExtension}" />
david_williamsd913e922006-11-13 07:24:21 +0000318 </antcall>
david_williamsd913e922006-11-13 07:24:21 +0000319 <unzip
320 dest="${buildDirectory}/${buildLabel}/compilelogs"
321 overwrite="true">
david_williamsa3e48362007-08-22 04:21:50 +0000322 <fileset
323 dir="${buildDirectory}/features/org.eclipse.wst.sdk">
david_williamsd913e922006-11-13 07:24:21 +0000324 <include name="**/*.log.zip" />
325 </fileset>
326 </unzip>
david_williams1cff0e92006-11-23 00:40:29 +0000327
david_williams0b74c592007-04-09 06:11:35 +0000328
david_williams1cff0e92006-11-23 00:40:29 +0000329 <!-- workaround: see https://bugs.eclipse.org/bugs/show_bug.cgi?id=156043 -->
330 <copy
331 todir="${buildDirectory}/${buildLabel}/compilelogs"
332 overwrite="true">
333 <fileset
334 dir="${buildDirectory}/features/org.eclipse.wst.common_ui.feature/feature.temp.folder" />
335 </copy>
336
337 <copy
338 todir="${buildDirectory}/${buildLabel}/compilelogs"
339 overwrite="true">
340 <fileset
341 dir="${buildDirectory}/features/org.eclipse.wst.server_ui.feature/feature.temp.folder" />
342 </copy>
343
344 <copy
345 todir="${buildDirectory}/${buildLabel}/compilelogs"
346 overwrite="true">
347 <fileset
348 dir="${buildDirectory}/features/org.eclipse.wst.xml_ui.feature/feature.temp.folder" />
349 </copy>
350
351 <copy
352 todir="${buildDirectory}/${buildLabel}/compilelogs"
353 overwrite="true">
354 <fileset
355 dir="${buildDirectory}/features/org.eclipse.wst.ws_ui.feature/feature.temp.folder" />
356 </copy>
357
358 <copy
359 todir="${buildDirectory}/${buildLabel}/compilelogs"
360 overwrite="true">
361 <fileset
362 dir="${buildDirectory}/features/org.eclipse.wst.web_ui.feature/feature.temp.folder" />
363 </copy>
364
david_williamsd913e922006-11-13 07:24:21 +0000365 </target>
ndaib8cedc82005-09-13 18:00:32 +0000366
david_williamsd913e922006-11-13 07:24:21 +0000367 <target
368 name="clean"
369 unless="noclean">
370 <antcall target="allElements">
371 <param
372 name="target"
373 value="cleanElement" />
374 </antcall>
375 </target>
ndaib8cedc82005-09-13 18:00:32 +0000376
david_williamsd913e922006-11-13 07:24:21 +0000377 <!-- ===================================================================== -->
378 <!-- Default target -->
379 <!-- ===================================================================== -->
380 <target name="noDefault">
david_williams7913a452007-08-26 02:43:50 +0000381 <echo level="error"
david_williamsa3e48362007-08-22 04:21:50 +0000382 message="You must specify a target when invoking this file" />
david_williamsd913e922006-11-13 07:24:21 +0000383 </target>
ndaib8cedc82005-09-13 18:00:32 +0000384
david_williams5d9c9862007-11-19 04:42:55 +0000385 <target name="check.useLocalMaps">
386 <condition property="useLocalMaps">
387 <equals arg1="${env.USE_LOCAL_MAPS}" arg2="true" />
388 </condition>
389 </target>
390
ndaib8cedc82005-09-13 18:00:32 +0000391</project>