blob: e59f6288426fc6c6315e15e0b209feedcfefa72c [file] [log] [blame]
<project name="Build specific targets and properties" default="noDefault">
<!-- ===================================================================== -->
<!-- Run a given ${target} on all elements being built -->
<!-- Add on <ant> task for each top level element being built. -->
<!-- ===================================================================== -->
<property name="allElementsFile" value="${builder}/allElements.xml"/>
<import file="${allElementsFile}" />
<target name="allElements">
<antcall target="allElementsDelegator" />
</target>
<!-- ===================================================================== -->
<!-- ===================================================================== -->
<target name="getBaseComponents" depends="checkLocalBase" unless="skipBase">
<get src="${eclipseBaseURL}" dest="${buildDirectory}/../temp-base.zip" />
<unzip dest="${base}" overwrite="true" src="${buildDirectory}/../temp-base.zip" />
</target>
<target name="checkLocalBase">
<available file="${base}" property="skipBase" />
</target>
<!-- ===================================================================== -->
<!-- Check out map files from correct repository -->
<!-- Replace values for mapsCheckoutTag as desired. -->
<!-- ===================================================================== -->
<target name="getMapFiles" depends="checkLocalMaps" unless="skipMaps">
<property name="mapsCheckoutTag" value="HEAD" />
<cvs cvsRoot="${mapsRepo}" package="${mapsRoot}" dest="${buildDirectory}/maps" tag="${mapsCheckoutTag}" />
</target>
<target name="checkLocalMaps">
<available property="skipMaps" file="${buildDirectory}/maps" />
</target>
<target name="tagMapFiles" if="tagMaps">
<cvs dest="${buildDirectory}/maps/${mapsRoot}" command="tag ${mapsTagTag}" />
</target>
<!-- ===================================================================== -->
<target name="clean" unless="noclean">
<antcall target="allElements">
<param name="target" value="cleanElement" />
</antcall>
</target>
<target name="gatherLogs">
<mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
<antcall target="allElements">
<param name="target" value="gatherLogs" />
</antcall>
<unzip dest="${buildDirectory}/${buildLabel}/compilelogs" overwrite="true">
<fileset dir="${buildDirectory}/features">
<include name="**/*.log.zip" />
</fileset>
</unzip>
</target>
<!-- ===================================================================== -->
<!-- Steps to do before setup -->
<!-- ===================================================================== -->
<target name="preSetup">
</target>
<!-- ===================================================================== -->
<!-- Steps to do after setup but before starting the build proper -->
<!-- ===================================================================== -->
<target name="postSetup">
<antcall target="getBaseComponents" />
<mkdir dir="${buildDirectory}/features"/>
<mkdir dir="${buildDirectory}/plugins"/>
<copy todir="${buildDirectory}/features/org.eclipse.ajdt">
<fileset dir="${builder}/../org.eclipse.ajdt-feature"/>
</copy>
<copy todir="${buildDirectory}/features/org.eclipse.aspectj.feature_tests">
<fileset dir="${builder}/../org.eclipse.aspectj.feature_tests"/>
</copy>
<copy todir="${buildDirectory}/features/org.eclipse.contribution.xref">
<fileset dir="${builder}/../org.eclipse.contribution.xref-feature"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.aspectj">
<fileset dir="${builder}/../org.eclipse.aspectj"/>
</copy>
<replace file="${buildDirectory}/plugins/org.eclipse.aspectj/about.mappings"
token="@AJVERSION@" value="${ajde.version}"/>
<copy todir="${buildDirectory}/plugins/org.aspectj.runtime">
<fileset dir="${builder}/../org.aspectj.runtime"/>
</copy>
<replace file="${buildDirectory}/plugins/org.aspectj.runtime/META-INF/MANIFEST.MF"
token="92.2.29" value="${ajde.version}"/>
<copy todir="${buildDirectory}/plugins/org.aspectj.weaver">
<fileset dir="${builder}/../org.aspectj.weaver"/>
</copy>
<replace file="${buildDirectory}/plugins/org.aspectj.weaver/META-INF/MANIFEST.MF"
token="92.2.29" value="${ajde.version}"/>
<copy todir="${buildDirectory}/plugins/org.aspectj.ajde">
<fileset dir="${builder}/../org.aspectj.ajde"/>
</copy>
<replace file="${buildDirectory}/plugins/org.aspectj.ajde/META-INF/MANIFEST.MF"
token="92.2.29" value="${ajde.version}"/>
<copy todir="${buildDirectory}/plugins/org.eclipse.ajdt.core">
<fileset dir="${builder}/../org.eclipse.ajdt.core"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.ajdt.core.tests">
<fileset dir="${builder}/../org.eclipse.ajdt.core.tests"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.ajdt.ui">
<fileset dir="${builder}/../org.eclipse.ajdt.ui"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.ajdt.mylyn.ui">
<fileset dir="${builder}/../org.eclipse.ajdt.mylyn.ui"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.ajdt.doc.user">
<fileset dir="${builder}/../org.eclipse.ajdt.doc.user"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.ajdt.ui.tests">
<fileset dir="${builder}/../org.eclipse.ajdt.ui.tests"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.ajdt.ui.visual.tests">
<fileset dir="${builder}/../org.eclipse.ajdt.ui.visual.tests"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.ajdt.examples">
<fileset dir="${builder}/../org.eclipse.ajdt.examples"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.contribution.visualiser">
<fileset dir="${builder}/../org.eclipse.contribution.visualiser"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.contribution.visualiser.tests">
<fileset dir="${builder}/../org.eclipse.contribution.visualiser.tests"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.contribution.xref.core">
<fileset dir="${builder}/../org.eclipse.contribution.xref.core"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.contribution.xref.core.tests">
<fileset dir="${builder}/../org.eclipse.contribution.xref.core.tests"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.contribution.xref.ui">
<fileset dir="${builder}/../org.eclipse.contribution.xref.ui"/>
</copy>
<copy todir="${buildDirectory}/plugins/org.eclipse.contribution.xref.ui.tests">
<fileset dir="${builder}/../org.eclipse.contribution.xref.ui.tests"/>
</copy>
</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">
<antcall target="clean" />
</target>
<!-- ===================================================================== -->
<!-- Steps to do before running the build.xmls for the elements being built. -->
<!-- ===================================================================== -->
<target name="preProcess">
</target>
<!-- ===================================================================== -->
<!-- Steps to do after running the build.xmls for the elements being built. -->
<!-- ===================================================================== -->
<target name="postProcess">
</target>
<!-- ===================================================================== -->
<!-- Steps to do before running assemble. -->
<!-- ===================================================================== -->
<target name="preAssemble">
</target>
<!-- ===================================================================== -->
<!-- Steps to do after running assemble. -->
<!-- ===================================================================== -->
<target name="postAssemble">
</target>
<!-- ===================================================================== -->
<!-- Steps to do before running package. -->
<!-- ===================================================================== -->
<target name="prePackage">
</target>
<!-- ===================================================================== -->
<!-- Steps to do after running package. -->
<!-- ===================================================================== -->
<target name="postPackage">
</target>
<!-- ===================================================================== -->
<!-- Steps to do after the build is done. -->
<!-- ===================================================================== -->
<target name="postBuild">
<antcall target="gatherLogs" />
<property name="UpdateSiteStagingLocation" value="${buildDirectory}/updateSite"/>
<antcall target="generateUpdateSite"/>
</target>
<target name="generateUpdateSite">
<!-- Create the directory structure -->
<mkdir dir="${UpdateSiteStagingLocation}"/>
<mkdir dir="${UpdateSiteStagingLocation}/features"/>
<mkdir dir="${UpdateSiteStagingLocation}/plugins"/>
<!-- Build the jar files -->
<antcall target="allElements">
<param name="genericTargets" value="${builder}/customTargets.xml"/>
<param name="target" value="updateSiteExport"/>
</antcall>
<!-- add site.xml -->
<copy file="${builder}/site.xml" tofile="${UpdateSiteStagingLocation}/site.xml"/>
</target>
<target name="updateSiteExport">
<ant antfile="build.xml" dir="${buildDirectory}/features/${id}/" target="build.update.jar">
<property name="feature.destination" value="${UpdateSiteStagingLocation}/features"/>
<property name="plugin.destination" value="${UpdateSiteStagingLocation}/plugins"/>
</ant>
</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>
<!-- ===================================================================== -->
<!-- Default target -->
<!-- ===================================================================== -->
<target name="noDefault">
<echo message="You must specify a target when invoking this file" />
</target>
</project>