blob: 332ef39f7ae46f36ff6d144c16a53a39188abb00 [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=".">
5
david_williamsb641ce32008-07-01 03:36:40 +00006 <!-- = = = standard properties pattern = = =
david_williams886167e2007-12-13 04:42:37 +00007
david_williams886167e2007-12-13 04:42:37 +00008 Note to be cross-platform, "environment variables" are only appropriate for
9 some variables, e.g. ones we set, since properties are case sensitive, even if
10 the environment variables on your operating system are not, e.g. it will
11 be ${env.Path} not ${env.PATH} on Windows -->
12 <property environment="env" />
13
14 <!--
15 Let users override standard properties, if desired.
16 If directory, file, or some properties do not exist,
17 then standard properties will be used.
18 -->
19 <property
20 file="${env.LOCAL_BUILD_PROPERTIES_DIR}/${ant.project.name}.properties" />
21
22 <!-- let this project specify properties, if not already set -->
23 <property file="build.properties" />
24
david_williams82a6c642008-10-08 14:52:33 +000025 <fail message="dependancy.properties must be specified by distribution script"
26 unless="dependency.properties" />
27
28
29
david_williamsb641ce32008-07-01 03:36:40 +000030 <fail
31 unless="buildDirectory"
32 message="buildDirectory must be set" />
33 <echo message="buildDirectory: ${buildDirectory}" />
david_williams403beae2007-12-09 02:10:40 +000034
david_williamsb641ce32008-07-01 03:36:40 +000035 <!--
36 Run a given ${target} on all elements being built
37 Add on <ant> task for each top level element being built.
38 -->
david_williamsd913e922006-11-13 07:24:21 +000039 <target name="allElements">
david_williams403beae2007-12-09 02:10:40 +000040 <echo
41 level="info"
42 message="Target:${target} " />
43 <echo
44 level="debug"
45 message="basedir: ${basedir}" />
46 <echo
david_williamsb641ce32008-07-01 03:36:40 +000047 level="info"
david_williams403beae2007-12-09 02:10:40 +000048 message="component: ${component}" />
49 <echo
50 level="debug"
51 message="buildDirectory: ${buildDirectory}" />
52 <echo
53 level="debug"
54 message="baseLocation: ${baseLocation}" />
55 <echo
56 level="debug"
57 message="generic target: ${genericTargets}" />
david_williamsb641ce32008-07-01 03:36:40 +000058 <echo
59 message="compilerArg: ${compilerArg}" />
60 <echo
61 message="individualSourceBundles: ${individualSourceBundles}" />
david_williamsd913e922006-11-13 07:24:21 +000062 <ant
63 antfile="${genericTargets}"
64 target="${target}">
65 <property
66 name="type"
67 value="feature" />
68 <property
69 name="id"
70 value="org.eclipse.jst" />
71 </ant>
72 </target>
ndaib8cedc82005-09-13 18:00:32 +000073
david_williamsb641ce32008-07-01 03:36:40 +000074 <!--
75 Targets to assemble the built elements for particular configurations
76 These generally call the generated assemble scripts (named in
77 ${assembleScriptName}) but may also add pre and post processing
78 Add one target for each root element and each configuration
79 -->
ndaib8cedc82005-09-13 18:00:32 +000080
david_williamsd913e922006-11-13 07:24:21 +000081 <target name="assemble.org.eclipse.jst">
82 <property
83 name="archiveName"
84 value="wtp-jst-${buildLabel}.zip" />
85 <ant
86 antfile="${assembleScriptName}"
87 dir="${buildDirectory}" />
ndaib8cedc82005-09-13 18:00:32 +000088
david_williamsd913e922006-11-13 07:24:21 +000089 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +000090
david_williamsd913e922006-11-13 07:24:21 +000091 <target name="prePackage" />
david_williamsa0aec8e2006-05-23 00:29:00 +000092
david_williamsd913e922006-11-13 07:24:21 +000093 <target name="postPackage">
david_williamsa0aec8e2006-05-23 00:29:00 +000094
david_williamsd913e922006-11-13 07:24:21 +000095 <property
96 name="archiveName"
97 value="wtp-jst-${buildLabel}.zip" />
david_williamsa0aec8e2006-05-23 00:29:00 +000098
david_williamsd913e922006-11-13 07:24:21 +000099 <ant
100 antfile="${wtp.builder.home}/scripts/build/buildutilities.xml"
101 target="unpackUpdateJarsAndCreateZippedPackages">
102 <property
103 name="buildDirectory"
104 value="${buildDirectory}" />
105 <property
106 name="buildLabel"
107 value="${buildLabel}" />
108 <property
109 name="archiveName"
110 value="${archiveName}" />
111 </ant>
ndaib8cedc82005-09-13 18:00:32 +0000112
david_williamsb641ce32008-07-01 03:36:40 +0000113 </target>
ndaib8cedc82005-09-13 18:00:32 +0000114
david_williamsb641ce32008-07-01 03:36:40 +0000115 <!--
116 Check out map files from repository
117 -->
118 <target name="getMapFiles">
david_williams3696f6f2005-12-30 07:59:43 +0000119
david_williamsb641ce32008-07-01 03:36:40 +0000120 <!-- for now, get all, at once. May componetize later. -->
david_williams3696f6f2005-12-30 07:59:43 +0000121
david_williamsb641ce32008-07-01 03:36:40 +0000122 <ant
123 antfile="${wtp.builder.home}/scripts/build/maptasks.xml"
124 target="fetchAllMaps" />
david_williams3696f6f2005-12-30 07:59:43 +0000125
david_williamsd913e922006-11-13 07:24:21 +0000126 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000127
david_williamsa0aec8e2006-05-23 00:29:00 +0000128
david_williamsb641ce32008-07-01 03:36:40 +0000129 <!--
130 Steps to do before setup
131 -->
david_williamsd913e922006-11-13 07:24:21 +0000132 <target name="preSetup"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000133
david_williamsb641ce32008-07-01 03:36:40 +0000134 <!--
135 Steps to do after setup but before starting the build proper
136 -->
david_williamsd913e922006-11-13 07:24:21 +0000137 <target name="postSetup">
138 <dirname
139 file="${ant.file}"
140 property="component.dir" />
david_williams403beae2007-12-09 02:10:40 +0000141 <echo
142 level="debug"
143 message="ant.file: ${ant.file}" />
144 <echo
145 level="debug"
146 message="component.dir: ${component.dir}" />
david_williams5d9c9862007-11-19 04:42:55 +0000147
david_williams82a6c642008-10-08 14:52:33 +0000148 <!-- Get the dependencies -->
149 <antcall target="getDependencies" />
150
151 </target>
152
153 <!-- ===================================================================== -->
154 <!-- Get the dependencies based on releng maps -->
155 <!-- ===================================================================== -->
156 <target name="getDependencies">
157
david_williamsd913e922006-11-13 07:24:21 +0000158 <ant
159 antfile="${component.dir}/dependency.xml"
160 target="get">
161 <property
david_williamsd913e922006-11-13 07:24:21 +0000162 name="base.install.dir"
163 value="${buildRoot}" />
164 </ant>
165 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000166
david_williamsb641ce32008-07-01 03:36:40 +0000167 <!--
168 Steps to do before fetching the build elements
169 -->
david_williamsd913e922006-11-13 07:24:21 +0000170 <target name="preFetch"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000171
david_williamsb641ce32008-07-01 03:36:40 +0000172 <!--
173 Steps to do after fetching the build elements
174 -->
david_williamsd913e922006-11-13 07:24:21 +0000175 <target name="postFetch"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000176
david_williamsb641ce32008-07-01 03:36:40 +0000177 <!--
178 Steps to do before generating the build scripts.
179 -->
180 <target name="preGenerate"></target>
181
182 <!--
183 Steps to do after generating the build scripts.
184 -->
david_williams5b401202007-06-07 23:49:38 +0000185 <target name="postGenerate">
david_williamsb641ce32008-07-01 03:36:40 +0000186 <echo message="buildDirectory: ${buildDirectory}" />
david_williams5b401202007-06-07 23:49:38 +0000187 <customizeAccessRules
188 bundleDirectory="${buildDirectory}/plugins"
189 defaultRules="+org/eclipse/wst/**/*, +org/eclipse/jst/**/*" />
190 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000191
192
david_williamsb641ce32008-07-01 03:36:40 +0000193
194 <!--
195 Steps to do before running the build.xmls for the elements being built.
196 -->
david_williamsd913e922006-11-13 07:24:21 +0000197 <target name="preProcess">
198 <replace
199 dir="${buildDirectory}/plugins"
200 value="${timestamp}"
201 token="@build@">
202 <include name="**/about.mappings" />
203 </replace>
204 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000205
david_williamsb641ce32008-07-01 03:36:40 +0000206 <!--
207 Steps to do after running the build.xmls for the elements being built.
208 -->
david_williamsd913e922006-11-13 07:24:21 +0000209 <target name="postProcess">
210 <condition property="logsAvailable">
211 <istrue value="${javacVerbose}" />
212 </condition>
david_williams5b401202007-06-07 23:49:38 +0000213 <antcall target="gatherLogs" />
david_williamsd913e922006-11-13 07:24:21 +0000214 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000215
216
david_williamsb641ce32008-07-01 03:36:40 +0000217 <!--
218 Steps to do before running assemble.
219 -->
david_williamsd913e922006-11-13 07:24:21 +0000220 <target name="preAssemble"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000221
david_williamsb641ce32008-07-01 03:36:40 +0000222 <!--
223 Steps to do after running assemble.
224 -->
david_williamsd913e922006-11-13 07:24:21 +0000225 <target name="postAssemble"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000226
david_williamsb641ce32008-07-01 03:36:40 +0000227 <!--
228 Steps to do after the build is done.
229 -->
david_williamsd913e922006-11-13 07:24:21 +0000230 <target name="postBuild"></target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000231
david_williamsb641ce32008-07-01 03:36:40 +0000232 <!--
233 Steps to do to test the build results
234 -->
david_williamsd913e922006-11-13 07:24:21 +0000235 <target name="test"></target>
david_williams3696f6f2005-12-30 07:59:43 +0000236
david_williamsb641ce32008-07-01 03:36:40 +0000237 <!--
238 Steps to do to publish the build results
239 -->
david_williamsd913e922006-11-13 07:24:21 +0000240 <target name="publish"></target>
david_williams3696f6f2005-12-30 07:59:43 +0000241
david_williamsb641ce32008-07-01 03:36:40 +0000242 <!--
243 Helper targets
244 -->
david_williamsd913e922006-11-13 07:24:21 +0000245 <target
246 name="gatherLogs"
247 if="logsAvailable">
248 <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
david_williams403beae2007-12-09 02:10:40 +0000249 <echo
250 level="debug"
251 message="logExtension: ${logExtension}" />
david_williamsd913e922006-11-13 07:24:21 +0000252 <antcall target="allElements">
253 <param
254 name="target"
255 value="gatherLogs" />
david_williams803b3cd2007-12-13 07:37:16 +0000256 <param
257 name="logExtension"
258 value="${logExtension}" />
david_williamsd913e922006-11-13 07:24:21 +0000259 </antcall>
david_williamsd913e922006-11-13 07:24:21 +0000260 <unzip
261 dest="${buildDirectory}/${buildLabel}/compilelogs"
262 overwrite="true">
david_williamsb641ce32008-07-01 03:36:40 +0000263 <fileset
264 dir="${buildDirectory}/features/org.eclipse.jst">
david_williamsd913e922006-11-13 07:24:21 +0000265 <include name="**/*.log.zip" />
266 </fileset>
267 </unzip>
david_williams0b74c592007-04-09 06:11:35 +0000268
david_williamsfa8809c2007-02-24 00:15:31 +0000269 <!-- workaround: see https://bugs.eclipse.org/bugs/show_bug.cgi?id=156043 -->
270 <!-- and https://bugs.eclipse.org/bugs/show_bug.cgi?id=172361 -->
271 <copy
272 todir="${buildDirectory}/${buildLabel}/compilelogs"
273 overwrite="true">
274 <fileset
275 dir="${buildDirectory}/features/org.eclipse.jst.enterprise_ui.feature/feature.temp.folder" />
276 </copy>
277
278 <copy
279 todir="${buildDirectory}/${buildLabel}/compilelogs"
280 overwrite="true">
281 <fileset
282 dir="${buildDirectory}/features/org.eclipse.jst.server_ui.feature/feature.temp.folder" />
283 </copy>
284
285 <copy
286 todir="${buildDirectory}/${buildLabel}/compilelogs"
287 overwrite="true">
288 <fileset
david_williamse450be72007-02-24 01:58:16 +0000289 dir="${buildDirectory}/features/org.eclipse.jst.web_ui.feature/feature.temp.folder" />
david_williamsfa8809c2007-02-24 00:15:31 +0000290 </copy>
291
david_williams0b74c592007-04-09 06:11:35 +0000292
293
david_williamsd913e922006-11-13 07:24:21 +0000294 </target>
david_williams3696f6f2005-12-30 07:59:43 +0000295
david_williamsd913e922006-11-13 07:24:21 +0000296 <target
297 name="clean"
298 unless="noclean">
299 <antcall target="allElements">
300 <param
301 name="target"
302 value="cleanElement" />
303 </antcall>
304 </target>
david_williams3696f6f2005-12-30 07:59:43 +0000305
david_williamsb641ce32008-07-01 03:36:40 +0000306 <!--
307 Default target
308 -->
david_williamsd913e922006-11-13 07:24:21 +0000309 <target name="noDefault">
david_williams403beae2007-12-09 02:10:40 +0000310 <echo
311 level="error"
david_williams5b401202007-06-07 23:49:38 +0000312 message="You must specify a target when invoking this file" />
david_williamsd913e922006-11-13 07:24:21 +0000313 </target>
ndaib8cedc82005-09-13 18:00:32 +0000314
ndaib8cedc82005-09-13 18:00:32 +0000315</project>