aboutsummaryrefslogtreecommitdiffstats
path: root/org.openembedded.bc.feature/customTargets.xml
diff options
context:
space:
mode:
authorKen Gilmer <kgilmer@gmail.com>2010-05-18 21:51:02 -0400
committerKen Gilmer <kgilmer@gmail.com>2010-05-18 21:51:02 -0400
commite27a6dcce13930bfa711a6e72992597a8d1d07c5 (patch)
tree590b6b1783a16242e492e2cb58d7825827bb33bb /org.openembedded.bc.feature/customTargets.xml
parente558f6b45e50a521b27d243bc33f2d315225bf07 (diff)
downloadeclipsetools-e27a6dcce13930bfa711a6e72992597a8d1d07c5.tar.gz
org.openembedded.bc.feature: initial commit
Diffstat (limited to 'org.openembedded.bc.feature/customTargets.xml')
-rw-r--r--org.openembedded.bc.feature/customTargets.xml252
1 files changed, 252 insertions, 0 deletions
diff --git a/org.openembedded.bc.feature/customTargets.xml b/org.openembedded.bc.feature/customTargets.xml
new file mode 100644
index 0000000..c821a50
--- /dev/null
+++ b/org.openembedded.bc.feature/customTargets.xml
@@ -0,0 +1,252 @@
+<project name="Build specific targets and properties" default="noDefault">
+ <path id="svnant.classpath" >
+ <fileset dir="/usr/share/ant/lib/svn/" >
+ <include name="*.jar" />
+ </fileset>
+ </path>
+
+ <typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="svnant.classpath" />
+ <!-- ===================================================================== -->
+ <!-- Run a given ${target} on all elements being built -->
+ <!-- Add on <ant> task for each top level element being built. -->
+ <!-- ===================================================================== -->
+ <target name="allElements">
+ <ant antfile="${genericTargets}" target="${target}">
+ <property name="type" value="feature" />
+ <property name="id" value="${product}" />
+ </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.openebedded.bc.feature">
+ <ant antfile="${assembleScriptName}" dir="${buildDirectory}" />
+ </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">
+ <echo message="Checking out map for tag: ${build.level}" />
+ <property name="mapsCheckoutTag" value="${build.level}" />
+ <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" />
+ </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">
+ <property name="outputDir" location="${buildDirectory}/${buildLabel}" />
+ <property name="distDir" location="${buildDirectory}/../dist" />
+ <property name="UpdateSiteStagingLocation" value="${buildDirectory}/${updateSite}" />
+ <property name="sitePackagePrefix" value="${updateSite}" />
+ <property name="checkoutDir" location="${buildDirectory}/../../${updateSite}" />
+
+ <delete dir="${UpdateSiteStagingLocation}" />
+ <antcall target="generateUpdateSite" />
+
+ <copy todir="${distDir}">
+ <fileset dir="${outputDir}" />
+ </copy>
+
+ <copy todir="${UpdateSiteStagingLocation}">
+ <fileset dir="${checkoutDir}" />
+ </copy>
+
+ <mkdir dir="${distDir}/updatesite" />
+ <copy todir="${distDir}/updatesite">
+ <fileset dir="${UpdateSiteStagingLocation}" />
+ </copy>
+
+ <zip destfile="${distDir}/${updateSite}-${forceContextQualifier}.zip" basedir="${UpdateSiteStagingLocation}" excludes="CVS .project" />
+
+ <delete dir="${publishDir}" />
+ <mkdir dir="${publishDir}" />
+ <copy todir="${publishDir}">
+ <fileset dir="${distDir}" />
+ </copy>
+ <!--
+ <antcall target="remotePublish" />
+ -->
+ </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>
+ <antcall target="copySiteXmlFromCvs" />
+ <antcall target="updateSiteXml" />
+ </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>
+ <target name="copySiteXmlFromCvs" unless="isNightlyBuild">
+ <copy file="${buildDirectory}/../../${updateSite}/site.xml" tofile="${buildDirectory}/${updateSite}/site.xml"/>
+ <!--
+ <svn javahl="false">
+ <update dir="${buildDirectory}/${updateSite}" recurse="false" />
+ </svn>
+ -->
+ </target>
+
+ <!-- Now lets add the build number in here -->
+
+ <target name="updateSiteXml">
+ <echo message="ForceQualifier: ${forceContextQualifier}"/>
+ <replace file="${buildDirectory}/${updateSite}/site.xml" token="qualifier" value="${forceContextQualifier}" />
+ </target>
+
+ <!-- here is where we copy the updatesite to the local web server for outside access -->
+ <target name="remotePublish">
+ <copy todir="${CCBaseDirectory}/release/com.buglabs.dragonfly">
+ <fileset dir="${UpdateSiteStagingLocation}" />
+ </copy>
+ </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> \ No newline at end of file