| <project |
| name="PDECustomTargets" |
| default="noDefault" |
| basedir="."> |
| |
| <property |
| name="patchFeature" |
| value="org.eclipse.wtp.patch.assembly.feature" /> |
| |
| |
| <!-- = = = standard properties pattern = = = --> |
| |
| <!-- |
| Note to be cross-platform, "environment variables" are only appropriate for |
| some variables, e.g. ones we set, since properties are case sensitive, even if |
| the environment variables on your operating system are not, e.g. it will |
| be ${env.Path} not ${env.PATH} on Windows --> |
| <property environment="env" /> |
| |
| <!-- |
| Let users override standard properties, if desired. |
| If directory, file, or some properties do not exist, |
| then standard properties will be used. |
| --> |
| <property |
| file="${env.LOCAL_BUILD_PROPERTIES_DIR}/${ant.project.name}.properties" /> |
| |
| <!-- let this project specify properties, if not already set --> |
| <property file="build.properties" /> |
| |
| <fail unless="buildDirectory" message="buildDirectory must be set" /> |
| <echo message="buildDirectory: ${buildDirectory}" /> |
| |
| <property |
| name="cvsProtocol" |
| value="${env.BUILD_CVS_WRITE_PROTOCOL}" /> |
| <property |
| name="cvsUser" |
| value="${env.BUILD_CVS_WRITE_USER}" /> |
| <property |
| name="cvsServer" |
| value="${env.BUILD_CVS_SERVER}" /> |
| <property |
| name="cvsRoot" |
| value="${env.BUILD_CVS_ROOT}" /> |
| |
| <!-- ===================================================================== --> |
| <!-- Run a given ${target} on all elements being built --> |
| <!-- Add on <ant> task for each top level element being built. --> |
| <!-- ===================================================================== --> |
| <target name="allElements"> |
| <echo |
| level="info" |
| message="Target:${target} " /> |
| <echo |
| level="debug" |
| message="basedir: ${basedir}" /> |
| <echo |
| level="debug" |
| message="component: ${component}" /> |
| <echo |
| level="debug" |
| message="buildDirectory: ${buildDirectory}" /> |
| <echo |
| level="debug" |
| message="baseLocation: ${baseLocation}" /> |
| <echo |
| level="debug" |
| message="patchFeature: ${patchFeature}" /> |
| <ant |
| antfile="${genericTargets}" |
| target="${target}"> |
| <property |
| name="type" |
| value="feature" /> |
| <property |
| name="id" |
| value="${patchFeature}" /> |
| </ant> |
| </target> |
| |
| |
| <!-- ===================================================================== --> |
| <!-- Targets to assemble the built elements for particular configurations --> |
| <!-- These generally call the generated assemble scripts (named in --> |
| <!-- ${assembleScriptName}) but may also add pre and post processing --> |
| <!-- Add one target for each root element and each configuration --> |
| <!-- ===================================================================== --> |
| |
| <target name="assemble.org.eclipse.wtp.patch.assembly.feature"> |
| <property |
| name="archiveName" |
| value="wtp-${buildLabel}.zip" /> |
| <ant |
| antfile="${assembleScriptName}" |
| dir="${buildDirectory}" /> |
| |
| </target> |
| |
| <target name="prePackage" /> |
| |
| <target name="postPackage"> |
| <property |
| name="archiveName" |
| value="wtp-${buildLabel}.zip" /> |
| |
| <ant |
| antfile="${wtp.builder.home}/scripts/build/buildutilities.xml" |
| target="unpackUpdateJarsAndCreateZippedPackages"> |
| <property |
| name="buildDirectory" |
| value="${buildDirectory}" /> |
| <property |
| name="buildLabel" |
| value="${buildLabel}" /> |
| <property |
| name="archiveName" |
| value="${archiveName}" /> |
| </ant> |
| |
| |
| </target> |
| |
| |
| |
| <!-- ===================================================================== --> |
| <!-- Check out map files from correct repository --> |
| <!-- Replace values for cvsRoot, package and mapVersionTag as desired. --> |
| <!-- ===================================================================== --> |
| <target |
| name="checkLocal" |
| depends="check.useLocalMaps" |
| if="useLocalMaps"> |
| <available |
| property="mapsLocal" |
| file="${buildDirectory}/maps/${env.RELENG}" /> |
| </target> |
| <target |
| name="getMapFiles" |
| depends="checkLocal" |
| unless="mapsLocal"> |
| |
| <!-- *** change the repo info --> |
| <property |
| name="mapCvsRoot" |
| value=":${cvsProtocol}:${cvsUser}@${cvsServer}:${cvsRoot}" /> |
| |
| <!-- if not otherwise set, assume HEAD --> |
| <property |
| name="mapVersionTag" |
| value="HEAD" /> |
| |
| |
| <echo |
| level="info" |
| message="${mapCvsRoot} ${mapVersionTag} "> |
| </echo> |
| <property |
| name="cvsPackage" |
| value="${env.RELENGMAPS}" /> |
| <echo |
| level="debug" |
| message="${mapCvsRoot} ${mapVersionTag} " /> |
| <echo |
| level="debug" |
| message="cvsPackage = ${cvsPackage} " /> |
| <cvs |
| cvsRoot="${mapCvsRoot}" |
| package="${cvsPackage}" |
| dest="${buildDirectory}/maps" |
| tag="${mapVersionTag}" |
| quiet="${env.CVS_QUIET}" |
| reallyquiet="${env.CVS_REALLY_QUIET}" /> |
| <!-- |
| <cvs |
| cvsRoot="${mapCvsRoot}" |
| package="${env.RELENGMAPS}" |
| dest="${buildDirectory}/maps" |
| tag="${mapVersionTag}" |
| quiet="${env.CVS_QUIET}" |
| reallyquiet="${env.CVS_REALLY_QUIET}" /> |
| --> |
| <!--tag the map files project--> |
| <antcall target="tagMapFiles"> |
| <param |
| name="mapCvsRoot" |
| value="${mapCvsRoot}" /> |
| </antcall> |
| |
| <!-- copy all maps to the same place. Be sure to copy only "maps", as there may be "dependancies" etc, |
| that could be out of date --> |
| <!-- turns out this "one flat directory" appears not needed! |
| <copy todir="${buildDirectory}/maps/${env.RELENG}/maps" flatten="true"> |
| <fileset dir="${buildDirectory}/maps/"> |
| <include name="**/*.map" /> |
| </fileset> |
| </copy> |
| --> |
| </target> |
| |
| <target |
| name="tagMapFiles" |
| if="tagMaps"> |
| <cvs |
| cvsRoot="${mapCvsRoot}" |
| dest="${buildDirectory}/maps" |
| command="tag v${buildType}${timestamp}" |
| quiet="${env.CVS_QUIET}" |
| reallyquiet="${env.CVS_REALLY_QUIET}" /> |
| </target> |
| |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do before setup --> |
| <!-- ===================================================================== --> |
| <target name="preSetup"></target> |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do after setup but before starting the build proper --> |
| <!-- ===================================================================== --> |
| <target name="postSetup"> |
| <dirname |
| file="${ant.file}" |
| property="component.dir" /> |
| <echo |
| level="debug" |
| message="ant.file: ${ant.file}" /> |
| <echo |
| level="debug" |
| message="component.dir: ${component.dir}" /> |
| |
| <ant |
| antfile="${component.dir}/dependency.xml" |
| target="get"> |
| <property |
| name="dependency.properties" |
| value="${buildDirectory}/maps/${env.RELENG}/maps/dependencies.properties" /> |
| <property |
| name="base.install.dir" |
| value="${buildRoot}" /> |
| </ant> |
| |
| </target> |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do before fetching the build elements --> |
| <!-- ===================================================================== --> |
| <target name="preFetch"></target> |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do after fetching the build elements --> |
| <!-- ===================================================================== --> |
| <target name="postFetch"></target> |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do before generating the build scripts. --> |
| <!-- ===================================================================== --> |
| <target name="preGenerate"></target> |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do after generating the build scripts. --> |
| <!-- ===================================================================== --> |
| <target name="postGenerate"></target> |
| |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do before running the build.xmls for the elements being built. --> |
| <!-- ===================================================================== --> |
| <target name="preProcess"> |
| <replace |
| dir="${buildDirectory}/plugins" |
| value="${timestamp}" |
| token="@build@"> |
| <include name="**/about.mappings" /> |
| </replace> |
| </target> |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do after running the build.xmls for the elements being built. --> |
| <!-- ===================================================================== --> |
| <target name="postProcess"> |
| <condition property="logsAvailable"> |
| <istrue value="${javacVerbose}" /> |
| </condition> |
| <antcall target="gatherLogs" /> |
| </target> |
| |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do before running assemble. --> |
| <!-- Note: in version 2.0 (and previous) we need to build the |
| explorer war file by invoking script. In 3.0 forward, we do not, |
| so this simple existence check allows us to use the same script for |
| both streams --> |
| <!-- ===================================================================== --> |
| <property |
| name="buildwarfilename" |
| value="${buildDirectory}/plugins/org.eclipse.wst.ws.explorer/build-war.xml" /> |
| <target |
| name="preAssemble" |
| depends="buildwar"> |
| </target> |
| |
| <target name="checkForBuildFile"> |
| <condition property="buildFileExists"> |
| <available file="${buildwarfilename}" /> |
| </condition> |
| </target> |
| |
| <target |
| name="buildwar" |
| depends="checkForBuildFile" |
| if="buildFileExists"> |
| <ant antfile="${buildwarfilename}"> |
| <property |
| name="baseLocation" |
| value="${baseLocation}" /> |
| <property |
| name="basedir" |
| value="${buildDirectory}/plugins/org.eclipse.wst.ws.explorer" /> |
| <property |
| name="buildDirectory" |
| value="${buildDirectory}" /> |
| </ant> |
| </target> |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do after running assemble. --> |
| <!-- ===================================================================== --> |
| <target name="postAssemble"></target> |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do after the build is done. --> |
| <!-- ===================================================================== --> |
| <target name="postBuild"></target> |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do to test the build results --> |
| <!-- ===================================================================== --> |
| <target name="test"></target> |
| |
| <!-- ===================================================================== --> |
| <!-- Steps to do to publish the build results --> |
| <!-- ===================================================================== --> |
| <target name="publish"></target> |
| |
| |
| <!-- ===================================================================== --> |
| <!-- Helper targets --> |
| <!-- ===================================================================== --> |
| <target |
| name="gatherLogs" |
| if="logsAvailable"> |
| <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" /> |
| <echo |
| level="debug" |
| message="logExtension: ${logExtension}" /> |
| <antcall target="allElements"> |
| <param |
| name="target" |
| value="gatherLogs" /> |
| <param |
| name="logExtension" |
| value="${logExtension}" /> |
| |
| </antcall> |
| |
| <unzip |
| dest="${buildDirectory}/${buildLabel}/compilelogs" |
| overwrite="true"> |
| <fileset dir="${buildDirectory}/features/${patchFeature}"> |
| <include name="**/*.log.zip" /> |
| </fileset> |
| </unzip> |
| |
| </target> |
| |
| <target |
| name="clean" |
| unless="noclean"> |
| <antcall target="allElements"> |
| <param |
| name="target" |
| value="cleanElement" /> |
| </antcall> |
| </target> |
| |
| <!-- ===================================================================== --> |
| <!-- Default target --> |
| <!-- ===================================================================== --> |
| <target name="noDefault"> |
| <echo |
| level="error" |
| message="You must specify a target when invoking this file" /> |
| </target> |
| |
| <target name="check.useLocalMaps"> |
| <condition property="useLocalMaps"> |
| <equals |
| arg1="${env.USE_LOCAL_MAPS}" |
| arg2="true" /> |
| </condition> |
| </target> |
| |
| </project> |