blob: 318486d4c4d9c2c65b2a3389e55e9dbaea7770fd [file] [log] [blame]
david_williamsae0e4cb2006-11-11 02:55:51 +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_williams886167e2007-12-13 04:42:37 +00006
david_williamsb641ce32008-07-01 03:36:40 +00007 <!-- = = = standard properties pattern = = =
david_williams886167e2007-12-13 04:42:37 +00008
david_williams886167e2007-12-13 04:42:37 +00009 Note to be cross-platform, "environment variables" are only appropriate for
10 some variables, e.g. ones we set, since properties are case sensitive, even if
11 the environment variables on your operating system are not, e.g. it will
12 be ${env.Path} not ${env.PATH} on Windows -->
13 <property environment="env" />
14
15 <!--
16 Let users override standard properties, if desired.
17 If directory, file, or some properties do not exist,
18 then standard properties will be used.
19 -->
20 <property
21 file="${env.LOCAL_BUILD_PROPERTIES_DIR}/${ant.project.name}.properties" />
22
23 <!-- let this project specify properties, if not already set -->
24 <property file="build.properties" />
25
david_williams82a6c642008-10-08 14:52:33 +000026 <fail message="dependancy.properties must be specified by distribution script"
27 unless="dependency.properties" />
david_williams93e3fb52008-10-08 06:15:10 +000028
29
30
david_williamsb641ce32008-07-01 03:36:40 +000031 <fail
32 unless="buildDirectory"
33 message="buildDirectory must be set" />
34 <echo message="buildDirectory: ${buildDirectory}" />
david_williamsa3e48362007-08-22 04:21:50 +000035
david_williamsb641ce32008-07-01 03:36:40 +000036 <!--
37 Run a given ${target} on all elements being built
38 Add on <ant> task for each top level element being built.
39 -->
david_williamsae0e4cb2006-11-11 02:55:51 +000040 <target name="allElements">
david_williams403beae2007-12-09 02:10:40 +000041 <echo
42 level="info"
43 message="Target:${target} " />
44 <echo
45 level="debug"
46 message="basedir: ${basedir}" />
47 <echo
david_williamsb641ce32008-07-01 03:36:40 +000048 level="info"
49 message="component: ${component}" />
50 <echo
david_williams403beae2007-12-09 02:10:40 +000051 level="debug"
52 message="buildDirectory: ${buildDirectory}" />
53 <echo
54 level="debug"
55 message="baseLocation: ${baseLocation}" />
56 <echo
57 level="debug"
58 message="generic target: ${genericTargets}" />
david_williamsb641ce32008-07-01 03:36:40 +000059 <echo
60 message="compilerArg: ${compilerArg}" />
61 <echo
62 message="individualSourceBundles: ${individualSourceBundles}" />
david_williamsd913e922006-11-13 07:24:21 +000063 <ant
64 antfile="${genericTargets}"
65 target="${target}">
66 <property
67 name="type"
68 value="feature" />
69 <property
70 name="id"
tle47e6b1c2008-06-26 00:38:51 +000071 value="org.eclipse.jpt_sdk.assembly.feature" />
david_williamsae0e4cb2006-11-11 02:55:51 +000072 </ant>
73 </target>
74
david_williamsb641ce32008-07-01 03:36:40 +000075 <!--
76 Targets to assemble the built elements for particular configurations
77 These generally call the generated assemble scripts (named in
78 ${assembleScriptName}) but may also add pre and post processing
79 Add one target for each root element and each configuration
80 -->
david_williamsae0e4cb2006-11-11 02:55:51 +000081
tle47e6b1c2008-06-26 00:38:51 +000082 <target name="assemble.org.eclipse.jpt_sdk.assembly.feature">
david_williamsd913e922006-11-13 07:24:21 +000083 <property
84 name="archiveName"
david_williamseb49d082007-05-01 03:03:15 +000085 value="wtp-jpt-sdk-${buildLabel}.zip" />
david_williamsd913e922006-11-13 07:24:21 +000086 <ant
87 antfile="${assembleScriptName}"
88 dir="${buildDirectory}" />
89 </target>
90
91 <target name="prePackage" />
92
93 <target name="postPackage">
94 <property
95 name="archiveName"
david_williamseb49d082007-05-01 03:03:15 +000096 value="wtp-jpt-sdk-${buildLabel}.zip" />
david_williamsd913e922006-11-13 07:24:21 +000097
98 <ant
99 antfile="${wtp.builder.home}/scripts/build/buildutilities.xml"
100 target="unpackUpdateJarsAndCreateZippedPackages">
101 <property
102 name="buildDirectory"
103 value="${buildDirectory}" />
104 <property
105 name="buildLabel"
106 value="${buildLabel}" />
107 <property
108 name="archiveName"
109 value="${archiveName}" />
110 </ant>
111
112 </target>
david_williamsae0e4cb2006-11-11 02:55:51 +0000113
david_williamsb641ce32008-07-01 03:36:40 +0000114 <!--
115 Check out map files from repository
david_williams8f11ee72007-06-30 08:22:55 +0000116 -->
david_williamsb641ce32008-07-01 03:36:40 +0000117 <target name="getMapFiles">
david_williams0b74c592007-04-09 06:11:35 +0000118
david_williamsb641ce32008-07-01 03:36:40 +0000119 <!-- for now, get all, at once. May componetize later. -->
david_williams8f11ee72007-06-30 08:22:55 +0000120
david_williamsb641ce32008-07-01 03:36:40 +0000121 <ant
122 antfile="${wtp.builder.home}/scripts/build/maptasks.xml"
123 target="fetchAllMaps" />
david_williams8f11ee72007-06-30 08:22:55 +0000124
david_williamsae0e4cb2006-11-11 02:55:51 +0000125 </target>
126
david_williams6ac0ea22007-02-28 02:25:23 +0000127
david_williamsb641ce32008-07-01 03:36:40 +0000128 <!--
129 Steps to do before setup
130 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000131 <target name="preSetup"></target>
132
david_williamsb641ce32008-07-01 03:36:40 +0000133 <!--
134 Steps to do after setup but before starting the build proper
135 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000136 <target name="postSetup">
david_williamsd913e922006-11-13 07:24:21 +0000137 <dirname
138 file="${ant.file}"
139 property="component.dir" />
david_williams403beae2007-12-09 02:10:40 +0000140 <echo
141 level="debug"
142 message="ant.file: ${ant.file}" />
143 <echo
144 level="debug"
145 message="component.dir: ${component.dir}" />
david_williamsae0e4cb2006-11-11 02:55:51 +0000146
david_williams8f11ee72007-06-30 08:22:55 +0000147 <!-- Get the dependencies -->
148 <antcall target="getDependencies" />
149
david_williams8f11ee72007-06-30 08:22:55 +0000150 </target>
151
152 <!-- ===================================================================== -->
153 <!-- Get the dependencies based on releng maps -->
154 <!-- ===================================================================== -->
155 <target name="getDependencies">
156
david_williamsd913e922006-11-13 07:24:21 +0000157 <ant
158 antfile="${component.dir}/dependency.xml"
159 target="get">
160 <property
david_williamsd913e922006-11-13 07:24:21 +0000161 name="base.install.dir"
162 value="${buildRoot}" />
david_williamsae0e4cb2006-11-11 02:55:51 +0000163 </ant>
david_williams8f11ee72007-06-30 08:22:55 +0000164 </target>
david_williamsd913e922006-11-13 07:24:21 +0000165
david_williamsb641ce32008-07-01 03:36:40 +0000166 <!--
167 Steps to do before fetching the build elements
168 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000169 <target name="preFetch"></target>
170
david_williamsb641ce32008-07-01 03:36:40 +0000171 <!--
172 Steps to do after fetching the build elements
173 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000174 <target name="postFetch"></target>
175
david_williamsb641ce32008-07-01 03:36:40 +0000176 <!--
177 Steps to do before generating the build scripts.
178 -->
david_williams93e3fb52008-10-08 06:15:10 +0000179 <target name="preGenerate"></target>
180
181 <!--
182 Steps to do after generating the build scripts.
183 -->
david_williams8f11ee72007-06-30 08:22:55 +0000184 <target name="postGenerate">
david_williamsb641ce32008-07-01 03:36:40 +0000185 <echo message="buildDirectory: ${buildDirectory}" />
david_williams8f11ee72007-06-30 08:22:55 +0000186 <customizeAccessRules
187 bundleDirectory="${buildDirectory}/plugins"
188 defaultRules="+org/eclipse/wst/**/*, +org/eclipse/jst/**/*" />
189 </target>
david_williamsae0e4cb2006-11-11 02:55:51 +0000190
191
david_williamsb641ce32008-07-01 03:36:40 +0000192 <!--
193 Steps to do before running the build.xmls for the elements being built.
194 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000195 <target name="preProcess">
196 <replace
197 dir="${buildDirectory}/plugins"
198 value="${timestamp}"
199 token="@build@">
200 <include name="**/about.mappings" />
201 </replace>
202 </target>
203
david_williamsb641ce32008-07-01 03:36:40 +0000204 <!--
205 Steps to do after running the build.xmls for the elements being built.
206 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000207 <target name="postProcess">
208 <condition property="logsAvailable">
209 <istrue value="${javacVerbose}" />
210 </condition>
211 <antcall target="gatherLogs" />
david_williams0b74c592007-04-09 06:11:35 +0000212
david_williamsae0e4cb2006-11-11 02:55:51 +0000213 </target>
214
215
david_williamsb641ce32008-07-01 03:36:40 +0000216 <!--
217 Steps to do before running assemble.
218 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000219 <target name="preAssemble"></target>
220
david_williamsb641ce32008-07-01 03:36:40 +0000221 <!--
222 Steps to do after running assemble.
223 -->
david_williamsd913e922006-11-13 07:24:21 +0000224 <target name="postAssemble"></target>
david_williamsae0e4cb2006-11-11 02:55:51 +0000225
david_williamsb641ce32008-07-01 03:36:40 +0000226 <!--
227 Steps to do after the build is done.
228 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000229 <target name="postBuild"></target>
230
david_williamsb641ce32008-07-01 03:36:40 +0000231 <!--
232 Steps to do to test the build results
233 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000234 <target name="test"></target>
235
david_williamsb641ce32008-07-01 03:36:40 +0000236 <!--
237 Steps to do to publish the build results
238 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000239 <target name="publish"></target>
240
david_williamsb641ce32008-07-01 03:36:40 +0000241 <!--
242 Helper targets
243 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000244 <target
245 name="gatherLogs"
246 if="logsAvailable">
247 <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
david_williams403beae2007-12-09 02:10:40 +0000248 <echo
249 level="debug"
250 message="logExtension: ${logExtension}" />
david_williamsae0e4cb2006-11-11 02:55:51 +0000251 <antcall target="allElements">
252 <param
253 name="target"
254 value="gatherLogs" />
david_williams803b3cd2007-12-13 07:37:16 +0000255 <param
256 name="logExtension"
257 value="${logExtension}" />
david_williamsae0e4cb2006-11-11 02:55:51 +0000258 </antcall>
david_williamsae0e4cb2006-11-11 02:55:51 +0000259 <unzip
260 dest="${buildDirectory}/${buildLabel}/compilelogs"
261 overwrite="true">
david_williams8f11ee72007-06-30 08:22:55 +0000262 <fileset
tle47e6b1c2008-06-26 00:38:51 +0000263 dir="${buildDirectory}/features/org.eclipse.jpt_sdk.assembly.feature">
david_williamsae0e4cb2006-11-11 02:55:51 +0000264 <include name="**/*.log.zip" />
265 </fileset>
266 </unzip>
267 </target>
268
269 <target
270 name="clean"
271 unless="noclean">
272 <antcall target="allElements">
273 <param
274 name="target"
275 value="cleanElement" />
276 </antcall>
277 </target>
278
david_williamsb641ce32008-07-01 03:36:40 +0000279 <!--
280 Default target
281 -->
david_williamsae0e4cb2006-11-11 02:55:51 +0000282 <target name="noDefault">
david_williams403beae2007-12-09 02:10:40 +0000283 <echo
284 level="error"
david_williams8f11ee72007-06-30 08:22:55 +0000285 message="You must specify a target when invoking this file" />
david_williamsae0e4cb2006-11-11 02:55:51 +0000286 </target>
287
288</project>