build.xml
author Simon Howkins <simonh@symbian.org>
Tue, 09 Feb 2010 17:49:27 +0000
changeset 892 24ecf67cba71
parent 737 12fc0aa86db9
child 899 d80a65072ed8
permissions -rw-r--r--
Bug 1661: Improve build speed with better caching strategy Changed the way that the cache is located, so the same code can run on any build machine without any configuration. Made work around for Bug 419 the only option, as we're not using the alternative anyway, and I don't want to commit completely untested code! Changed caching algorithm, to improve build times.

<?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"/>
  
  <!-- import job properties -->
  <import file="${sf.project.location}/${sf.project.name}_props.ant.xml" optional="yes"/>
  
  <!-- 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"/>
  
  <!-- set sf.spec.job.name and sf.spec.job.codeline if they are not specified in the project's job_props.ant.xml -->
  <path id="lib.path">
    <fileset dir="${helium.dir}/external/antlibs" includes="**/*.jar"/>
  </path>
  <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="lib.path"/>
  <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>