build.xml
author Simon Howkins <simonh@symbian.org>
Tue, 10 Aug 2010 18:11:17 +0100
changeset 1186 4518bca1baf0
parent 1110 488afbbbaebd
permissions -rw-r--r--
Improved diagnostic output: when the build fails because a package cannot be cloned into the build drive, it says which package and the repo source and destination. Improved caching logic, so that it doesn't depend on network availability as much. Improved indentation.

<?xml version="1.0" encoding="UTF-8"?>
<project name="SF-CONFIG" xmlns:hlm="http://www.nokia.com/helium">
  <!-- location of this config -->
  <dirname property="sf.config.dir" file="${ant.file.SF-CONFIG}"/>
  
  <property name="sf.subproject.path" value=""/>
  <property name="sf.project.location" value="${sf.config.dir}/../build/config/${sf.subproject.path}"/>
  <property name="sf.project.name" value="job"/>
  
  <!-- Override Helium defaults to allow winscw builds without RVCT -->
  <target name="check-env-arm-license"/>
  <target name="get-arm-license"/>
  <target name="set-arm-version"/>

  <!-- import helium task definitions to allow usage of ant-contrib tasks -->
  <import file="${helium.dir}/helium_preinclude.ant.xml"/>
   
  <!-- import job properties -->
  <if><isfalse value="${sf.production.build}"/>
    <then>
      <if><available file="${sf.project.location}/public_override_props.ant.xml"/>
      <then>
          <echo message="INFO Using Public properties defined in ${sf.project.location}/public_override_props.ant.xml"/>
          <import file="${sf.project.location}/public_override_props.ant.xml" optional="yes"/>
      </then>
      </if>
    </then>
  </if>
  <import file="${sf.project.location}/${sf.project.name}_props.ant.xml" optional="yes"/>
  
  <!-- set sf.spec.job.name and sf.spec.job.codeline if they are not specified in the project's job_props.ant.xml -->
  <propertyregex override="yes" property="jobname" input="${sf.subproject.path}" regexp=".*[\\/]([^\\^/]+)" replace="\1"/>
  <property name="jobname" value="${sf.subproject.path}"/>
  <propertyregex override="yes" property="codeline" input="${sf.subproject.path}" regexp="^([^\\^/]+)[\\/].*" replace="\1"/>
  <property name="codeline" value="default"/>
  <property name="sf.spec.job.name" value="${jobname}"/>
  <property name="sf.spec.job.codeline" value="${codeline}"/>
  
  <!-- import project properties/targets/references -->
  <import file="sf-${sf.project.type}/build.xml" />
  
  <!-- import job references -->
  <import file="${sf.project.location}/${sf.project.name}_refs.ant.xml" optional="yes"/>
  
</project>