sf-package/build.xml
author MattD <mattd@symbian.org>
Fri, 16 Oct 2009 14:57:32 +0100
changeset 684 6d65abb8bba1
parent 637 3effbd6728d4
child 711 7a9d3b010a52
permissions -rw-r--r--
sf-run-evalid - minor change to make sure that evalid is run at the root of the build drive, which can stop the MD5s from being generated. (evalid requires dirs to be relative and not absolute)

<?xml version="1.0" encoding="UTF-8"?>
<project name="SF-PACKAGE-CONFIG" xmlns:hlm="http://www.nokia.com/helium">
  <!-- location of this config -->
  <dirname property="sf.package.config.dir" file="${ant.file.SF-PACKAGE-CONFIG}"/>
  
  <!-- import codeline-specific properties -->
  <import file="${sf.package.config.dir}/${sf.spec.job.codeline}_props.ant.xml" optional="yes"/>
  
  <!-- import package properties -->
  <import file="${sf.package.config.dir}/package_props.ant.xml" />
  
  <!-- import common properties/targets/references -->
  <import file="../common/build.xml" />
  
  <!-- import package references -->
  <import file="${sf.package.config.dir}/package_refs.ant.xml" />
  
  <target name="sf-compile">
  
    <!-- Check that package_definition is not in v 3.0.0 otherwise transforms it to 2.0.1 -->
    <echo message="Check that model file is in a version usable by Raptor"/>
    <exec executable="perl" dir="${sf.common.config.dir}/sysdefdowngrade" failonerror="false" output="${build.log.dir}/sysdefdowngrade.log">
      <arg value="sysdefdowngrade.pl"/>
      <arg value="--model=${build.drive}/${sf.spec.systemdefinition.location}"/>
      <arg value="--sources=${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/>
    </exec>
    
    <runtarget target="sf-package-compile"/>
  </target>
  
  <target name="sf-package-compile" depends="sf-compile-options">
        
    <!-- BUILD tools2_rel CLEAN -->
    <!--
    <hlm:argSet id="sbs.tools2_rel.clean.var">
      <hlm:arg name="config" value="tools2_rel" />
      <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}"/>
      <hlm:arg name="command" value="CLEAN"/>
    </hlm:argSet>
    <antcall target="compile-main" inheritAll="false" inheritRefs="true">
      <param name="build.system" value="${sf.spec.build.system}" />
      <param name="sysdef.configurations.list" value="${sf.spec.sysdef.configurations.list}" />
      <reference refid="sbs.tools2_rel.clean.var" torefid="sbs.var" />
      <reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
      <reference refid="sf.spec.system.definition.files" torefid="system.definition.files" />
    </antcall>
    -->
    
    <!-- BUILD tools2_rel -->
    <hlm:argSet id="sbs.tools2_rel.var">
      <hlm:arg name="config" value="tools2_rel.whatlog" />
      <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
    </hlm:argSet>
    <antcall target="compile-main" inheritAll="false" inheritRefs="true">
      <param name="build.system" value="${sf.spec.build.system}" />
      <param name="sysdef.configurations.list" value="${sf.spec.sysdef.configurations.list}" />
      <reference refid="sbs.tools2_rel.var" torefid="sbs.var" />
      <reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
      <reference refid="sf.spec.system.definition.files" torefid="system.definition.files" />
    </antcall>
    
    <!-- BUILD tools CLEAN -->
    <!-- 
    <hlm:argSet id="sbs.tools.clean.var">
      <hlm:arg name="config" value="tools"/>
      <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
      <hlm:arg name="command" value="CLEAN"/>
    </hlm:argSet>
    <antcall target="compile-main" inheritAll="false" inheritRefs="true">
      <param name="build.system" value="${sf.spec.build.system}" />
      <param name="sysdef.configurations.list" value="${sf.spec.sysdef.configurations.list}" />
      <reference refid="sbs.tools.clean.var" torefid="sbs.var" />
      <reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
      <reference refid="sf.spec.system.definition.files" torefid="system.definition.files" />
    </antcall>
    -->
    
    <!-- BUILD tools -->
    <!-- 
    <hlm:argSet id="sbs.tools.var">
      <hlm:arg name="config" value="tools.whatlog"/>
      <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
    </hlm:argSet>
    <antcall target="compile-main" inheritAll="false" inheritRefs="true">
      <param name="build.system" value="${sf.spec.build.system}" />
      <param name="sysdef.configurations.list" value="${sf.spec.sysdef.configurations.list}" />
      <reference refid="sbs.tools.var" torefid="sbs.var" />
      <reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
      <reference refid="sf.spec.system.definition.files" torefid="system.definition.files" />
    </antcall>
    -->
    
    <!-- BUILD winscw CLEAN -->
    <!--
    <hlm:argSet id="sbs.winscw.clean.var">
      <hlm:arg name="config" value="winscw" />
      <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
      <hlm:arg name="command" value="CLEAN"/>
    </hlm:argSet>
    <antcall target="compile-main" inheritAll="false" inheritRefs="true">
      <param name="build.system" value="${sf.spec.build.system}" />
      <param name="sysdef.configurations.list" value="${sf.spec.sysdef.configurations.list}" />
      <reference refid="sbs.winscw.clean.var" torefid="sbs.var" />
      <reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
      <reference refid="sf.spec.system.definition.files" torefid="system.definition.files" />
    </antcall>
    -->
    
    <!-- BUILD winscw -->
    <hlm:argSet id="sbs.winscw.var">
      <hlm:arg name="config" value="winscw.whatlog" />
      <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
    </hlm:argSet>
    <antcall target="compile-main" inheritAll="false" inheritRefs="true">
      <param name="build.system" value="${sf.spec.build.system}" />
      <param name="sysdef.configurations.list" value="${sf.spec.sysdef.configurations.list}" />
      <reference refid="sbs.winscw.var" torefid="sbs.var" />
      <reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
      <reference refid="sf.spec.system.definition.files" torefid="system.definition.files" />
    </antcall>
    
    <!-- BUILD armv5 CLEAN -->
    <!--
    <hlm:argSet id="sbs.armv5.clean.var">
      <hlm:arg name="config" value="armv5" />
      <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
      <hlm:arg name="command" value="CLEAN"/>
    </hlm:argSet>
    <antcall target="compile-main" inheritAll="false" inheritRefs="true">
      <param name="build.system" value="${sf.spec.build.system}" />
      <param name="sysdef.configurations.list" value="${sf.spec.sysdef.configurations.list}" />
      <reference refid="sbs.armv5.clean.var" torefid="sbs.var" />
      <reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
      <reference refid="sf.spec.system.definition.files" torefid="system.definition.files" />
    </antcall>
    -->
    
    <!-- BUILD armv5 -->
    <hlm:argSet id="sbs.armv5.var">
      <hlm:arg name="config" value="armv5.whatlog" />
      <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
    </hlm:argSet>
    <antcall target="compile-main" inheritAll="false" inheritRefs="true">
      <param name="build.system" value="${sf.spec.build.system}" />
      <param name="sysdef.configurations.list" value="${sf.spec.sysdef.configurations.list}" />
      <reference refid="sbs.armv5.var" torefid="sbs.var" />
      <reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
      <reference refid="sf.spec.system.definition.files" torefid="system.definition.files" />
    </antcall>
    
    <!-- CHECK -->
    <exec executable="cmd" dir="${build.drive}/" output="${build.drive}/output\logs\build_check_compile.log">
      <arg value="/c sbs.bat -s ${build.drive}/output\build\canonical_system_definition_SF.xml -k -c tools2_rel -c winscw -c armv5 -j 32 --check -m ${build.drive}/output\logs\build_check_Makefile"/>
      <!-- argument of -j option can be parameterized with: ${number.of.threads} -->
    </exec>
    
  </target>
  
</project>