blob: 879e1d7581b2a900452c7dac7c1c670403175b98 [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_williamsc253e572009-08-04 07:09:44 +000025 <fail message="dependency.properties must be specified by distribution script"
david_williams82a6c642008-10-08 14:52:33 +000026 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.sdk" />
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.sdk">
82 <property
83 name="archiveName"
84 value="wtp-jst-sdk-${buildLabel}.zip" />
85 <ant
86 antfile="${assembleScriptName}"
87 dir="${buildDirectory}" />
88 </target>
ndaib8cedc82005-09-13 18:00:32 +000089
david_williamsd913e922006-11-13 07:24:21 +000090 <target name="prePackage" />
david_williamsa0aec8e2006-05-23 00:29:00 +000091
david_williamsd913e922006-11-13 07:24:21 +000092 <target name="postPackage">
david_williamsa0aec8e2006-05-23 00:29:00 +000093
david_williamsd913e922006-11-13 07:24:21 +000094 <property
95 name="archiveName"
96 value="wtp-jst-sdk-${buildLabel}.zip" />
david_williamsa0aec8e2006-05-23 00:29:00 +000097
david_williamsd913e922006-11-13 07:24:21 +000098 <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>
david_williamsa0aec8e2006-05-23 00:29:00 +0000111
david_williamsd913e922006-11-13 07:24:21 +0000112 </target>
david_williamsa0aec8e2006-05-23 00:29:00 +0000113
david_williamsb641ce32008-07-01 03:36:40 +0000114 <!--
115 Check out map files from repository
116 -->
117 <target name="getMapFiles">
ndaib8cedc82005-09-13 18:00:32 +0000118
david_williamsb641ce32008-07-01 03:36:40 +0000119 <!-- for now, get all, at once. May componetize later. -->
david_williams5ad66ff2007-07-01 03:35:33 +0000120
david_williamsb641ce32008-07-01 03:36:40 +0000121 <ant
122 antfile="${wtp.builder.home}/scripts/build/maptasks.xml"
123 target="fetchAllMaps" />
david_williams5ad66ff2007-07-01 03:35:33 +0000124
david_williamsd913e922006-11-13 07:24:21 +0000125 </target>
126
ndaib8cedc82005-09-13 18:00:32 +0000127
david_williamsb641ce32008-07-01 03:36:40 +0000128 <!--
129 Steps to do before setup
130 -->
david_williamsd913e922006-11-13 07:24:21 +0000131 <target name="preSetup"></target>
ndaib8cedc82005-09-13 18:00:32 +0000132
david_williamsb641ce32008-07-01 03:36:40 +0000133 <!--
134 Steps to do after setup but before starting the build proper
135 -->
david_williamsd913e922006-11-13 07:24:21 +0000136 <target name="postSetup">
137 <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}" />
ndaidab24cb2006-07-28 15:22:38 +0000146
david_williams82a6c642008-10-08 14:52:33 +0000147 <!-- Get the dependencies -->
148 <antcall target="getDependencies" />
149
150 </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}" />
163 </ant>
david_williamsd913e922006-11-13 07:24:21 +0000164 </target>
ndaidab24cb2006-07-28 15:22:38 +0000165
david_williamsb641ce32008-07-01 03:36:40 +0000166 <!--
167 Steps to do before fetching the build elements
168 -->
david_williamsd913e922006-11-13 07:24:21 +0000169 <target name="preFetch"></target>
ndaib8cedc82005-09-13 18:00:32 +0000170
david_williamsb641ce32008-07-01 03:36:40 +0000171 <!--
172 Steps to do after fetching the build elements
173 -->
david_williamsd913e922006-11-13 07:24:21 +0000174 <target name="postFetch"></target>
ndaib8cedc82005-09-13 18:00:32 +0000175
david_williamsb641ce32008-07-01 03:36:40 +0000176 <!--
177 Steps to do before generating the build scripts.
178 -->
david_williams82a6c642008-10-08 14:52:33 +0000179 <target name="preGenerate"></target>
180
181 <!--
182 Steps to do after generating the build scripts.
183 -->
david_williams403beae2007-12-09 02:10:40 +0000184 <target name="postGenerate">
david_williamsb641ce32008-07-01 03:36:40 +0000185 <echo message="buildDirectory: ${buildDirectory}" />
david_williams5ad66ff2007-07-01 03:35:33 +0000186 <customizeAccessRules
187 bundleDirectory="${buildDirectory}/plugins"
188 defaultRules="+org/eclipse/wst/**/*, +org/eclipse/jst/**/*" />
david_williams0b74c592007-04-09 06:11:35 +0000189 </target>
ndaib8cedc82005-09-13 18:00:32 +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_williamsd913e922006-11-13 07:24:21 +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>
ndaib8cedc82005-09-13 18:00:32 +0000203
david_williamsb641ce32008-07-01 03:36:40 +0000204 <!--
205 Steps to do after running the build.xmls for the elements being built.
206 -->
david_williamsd913e922006-11-13 07:24:21 +0000207 <target name="postProcess">
208 <condition property="logsAvailable">
209 <istrue value="${javacVerbose}" />
210 </condition>
david_williams5ad66ff2007-07-01 03:35:33 +0000211 <antcall target="gatherLogs" />
david_williamsd913e922006-11-13 07:24:21 +0000212 </target>
ndaib8cedc82005-09-13 18:00:32 +0000213
214
david_williamsb641ce32008-07-01 03:36:40 +0000215 <!--
216 Steps to do before running assemble.
217 -->
218 <target name="preAssemble"></target>
ndaib8cedc82005-09-13 18:00:32 +0000219
david_williamsb641ce32008-07-01 03:36:40 +0000220 <!--
221 Steps to do after running assemble.
222 -->
223 <target name="postAssemble"></target>
ndaib8cedc82005-09-13 18:00:32 +0000224
david_williamsb641ce32008-07-01 03:36:40 +0000225 <!--
226 Steps to do after the build is done.
227 -->
david_williamsd913e922006-11-13 07:24:21 +0000228 <target name="postBuild"></target>
ndaib8cedc82005-09-13 18:00:32 +0000229
david_williamsb641ce32008-07-01 03:36:40 +0000230 <!--
231 Steps to do to test the build results
232 -->
david_williamsd913e922006-11-13 07:24:21 +0000233 <target name="test"></target>
david_williams3696f6f2005-12-30 07:59:43 +0000234
david_williamsb641ce32008-07-01 03:36:40 +0000235 <!--
236 Steps to do to publish the build results
237 -->
david_williamsd913e922006-11-13 07:24:21 +0000238 <target name="publish"></target>
david_williams3696f6f2005-12-30 07:59:43 +0000239
david_williamsb641ce32008-07-01 03:36:40 +0000240 <!--
241 Helper targets
242 -->
david_williamsd913e922006-11-13 07:24:21 +0000243 <target
244 name="gatherLogs"
245 if="logsAvailable">
246 <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
david_williams403beae2007-12-09 02:10:40 +0000247 <echo
248 level="debug"
249 message="logExtension: ${logExtension}" />
david_williamsd913e922006-11-13 07:24:21 +0000250 <antcall target="allElements">
251 <param
252 name="target"
253 value="gatherLogs" />
david_williams803b3cd2007-12-13 07:37:16 +0000254 <param
255 name="logExtension"
256 value="${logExtension}" />
david_williamsd913e922006-11-13 07:24:21 +0000257 </antcall>
david_williams2cfd2972009-11-03 19:09:58 +0000258
david_williams0b74c592007-04-09 06:11:35 +0000259
david_williamse450be72007-02-24 01:58:16 +0000260 <!-- workaround: see https://bugs.eclipse.org/bugs/show_bug.cgi?id=156043 -->
261 <!-- and https://bugs.eclipse.org/bugs/show_bug.cgi?id=172361 -->
262 <copy
263 todir="${buildDirectory}/${buildLabel}/compilelogs"
david_williams93e4d972009-11-03 21:26:49 +0000264 overwrite="false"
265 flatten="true">
david_williams9b218102009-11-03 20:33:57 +0000266 <!--
267 we want all @dot.xml files, but assumes a certain structure, to include
268 directory for name of plugin
269 -->
david_williamse450be72007-02-24 01:58:16 +0000270 <fileset
david_williams9b218102009-11-03 20:33:57 +0000271 dir="${buildDirectory}/features/" >
272
273 <include name="**/feature.temp.folder/"/>
274
275 </fileset>
276
david_williamse450be72007-02-24 01:58:16 +0000277 </copy>
278
david_williams0b74c592007-04-09 06:11:35 +0000279
david_williamsd913e922006-11-13 07:24:21 +0000280 </target>
david_williams3696f6f2005-12-30 07:59:43 +0000281
david_williamsd913e922006-11-13 07:24:21 +0000282 <target
283 name="clean"
284 unless="noclean">
285 <antcall target="allElements">
286 <param
287 name="target"
288 value="cleanElement" />
289 </antcall>
290 </target>
david_williams3696f6f2005-12-30 07:59:43 +0000291
david_williamsb641ce32008-07-01 03:36:40 +0000292 <!--
293 Default target
294 -->
david_williamsd913e922006-11-13 07:24:21 +0000295 <target name="noDefault">
david_williams403beae2007-12-09 02:10:40 +0000296 <echo
297 level="error"
david_williams5ad66ff2007-07-01 03:35:33 +0000298 message="You must specify a target when invoking this file" />
david_williamsd913e922006-11-13 07:24:21 +0000299 </target>
ndaib8cedc82005-09-13 18:00:32 +0000300
ndaib8cedc82005-09-13 18:00:32 +0000301</project>