Jump to: navigation, search

Difference between revisions of "Common Build Infrastructure/Getting Started/Bootstrapping"

(New page: If building on build.eclipse.org, the infrastructure needed to do an Athena build is already in place. However, if you want to use a different version of basebuilder or common.releng, or i...)
 
Line 4: Line 4:
  
 
  <project default="run">
 
  <project default="run">
<target name="run">
+
  <target name="run">
<ant antfile="bootstrap.xml" target="init">
+
    <ant antfile="bootstrap.xml" target="init">
<property name="basebuilderTag" value="r35x_v20090811" />
+
      <property name="basebuilderTag" value="r35x_v20090811" />
<property name="commonrelengTag" value="HEAD" />
+
      <property name="commonrelengTag" value="HEAD" />
<property name="ANTCONTRIB_VERSION" value="1.0b2" />
+
      <property name="ANTCONTRIB_VERSION" value="1.0b2" />
<property name="ANT4ECLIPSE_VERSION" value="1.0.0.M3" />
+
      <property name="ANT4ECLIPSE_VERSION" value="1.0.0.M3" />
<property name="build.properties" value="build.properties" />
+
      <property name="build.properties" value="build.properties" />
</ant>
+
    </ant>
...
+
    ...
<condition property="JAVA_HOME" value="${java.home}" else="${java.home}/..">
+
    <condition property="JAVA_HOME" value="${java.home}" else="${java.home}/..">
<available file="${java.home}/bin/javac" type="file" />
+
      <available file="${java.home}/bin/javac" type="file" />
</condition>
+
    </condition>
...
+
    ...
<property name="build.properties" value="build.properties" />
+
    <property name="build.properties" value="build.properties" />
<property file="${build.properties}" />
+
    <property file="${build.properties}" />
<ant antfile="${relengCommonBuilderDir}/build.xml" />
+
    <ant antfile="${relengCommonBuilderDir}/build.xml" />
</target>
+
  </target>
 
  </project>
 
  </project>
  
 
Note that all properties and even the target are optional; can simply do <code>&lt;ant antfile="bootstrap.xml"/></code> to use defaults.
 
Note that all properties and even the target are optional; can simply do <code>&lt;ant antfile="bootstrap.xml"/></code> to use defaults.

Revision as of 14:30, 15 April 2010

If building on build.eclipse.org, the infrastructure needed to do an Athena build is already in place. However, if you want to use a different version of basebuilder or common.releng, or if you want to use a different Hudson instance, you'll need to bootstrap your build in its workspace.

To run a self-contained and automatically bootstrapped build, you need to call bootstrap.xml from your build.xml script.

<project default="run">
  <target name="run">
    <ant antfile="bootstrap.xml" target="init">
      <property name="basebuilderTag" value="r35x_v20090811" />
      <property name="commonrelengTag" value="HEAD" />
      <property name="ANTCONTRIB_VERSION" value="1.0b2" />
      <property name="ANT4ECLIPSE_VERSION" value="1.0.0.M3" />
      <property name="build.properties" value="build.properties" />
    </ant>
    ...
    <condition property="JAVA_HOME" value="${java.home}" else="${java.home}/..">
      <available file="${java.home}/bin/javac" type="file" />
    </condition>
    ...
    <property name="build.properties" value="build.properties" />
    <property file="${build.properties}" />
    <ant antfile="${relengCommonBuilderDir}/build.xml" />
  </target>
</project>

Note that all properties and even the target are optional; can simply do <ant antfile="bootstrap.xml"/> to use defaults.