1. Run exports post-qmake to ensure exports from generated bld.infs
2. Explicitly run qmake to save duplicate calls for iterative builds
--- a/sf-platform/compile.ant.xml Fri Apr 23 17:20:24 2010 +0100
+++ b/sf-platform/compile.ant.xml Mon Apr 26 13:17:00 2010 +0100
@@ -22,11 +22,16 @@
<!-- compile sbs.tools.config and sbs.config. tools built only if its not being unpacked first.
note: must be called from sf-os/s60-compile targets, as sys model input needed -->
- <target name="sf-do-compile" depends="sf-do-full-export">
+ <target name="sf-do-compile">
<echo message="INFO Using Helium 7+ for sf-do-compile"/>
-
+
<propertyregex property="sf.unpack.tools" override="true" input="${sf.spec.baseline.getenv_options}" regexp="-i tools" select="true" defaultValue="false" casesensitive="false"/>
-
+
+ <!-- perform initial exports -->
+ <antcall target="sf-do-full-export">
+ <param name="sf.export.stage.name" value="full_export"/>
+ </antcall>
+
<if> <!-- If tools baseline unpack has not been specified, or its not a "fast" build then try to build them -->
<or>
<isfalse value="${sf.unpack.tools}"/>
@@ -39,7 +44,6 @@
<!-- sf.spec.sbs.tools.config param used. do-target-build will decide to build sequentially/together -->
<antcall target="sf-do-target-compile" inheritAll="false" inheritRefs="true">
<param name="i.sf.spec.sbs.config" value="${sf.spec.sbs.tools.config}" />
- <param name="qmake.enabled" value="false"/> <!-- ensure qmake is not run, before its available -->
</antcall>
</then>
<else>
@@ -47,6 +51,16 @@
</else>
</if>
+ <!-- explicitly run qmake once, as iterative build will repeat the step -->
+ <antcall target="run-qmake">
+ <param name="qmake.enabled" value="true"/>
+ </antcall>
+
+ <!-- perform exports for bld.infs generated by qmake -->
+ <antcall target="sf-do-full-export">
+ <param name="sf.export.stage.name" value="post_qmake_export"/>
+ </antcall>
+
<!-- sf.spec.sbs.config param used. do-target-build will decide to build sequentially/together -->
<antcall target="sf-do-target-compile" inheritAll="false" inheritRefs="true">
<param name="i.sf.spec.sbs.config" value="${sf.spec.sbs.config}" />
@@ -63,8 +77,8 @@
<arg line="-k" />
<arg line="-j ${sf.spec.sbs.numberofjobs}"/>
<arg line="-t ${sf.spec.sbs.retry.limit}"/>
- <arg name="--logfile" value="${compile.log.dir}/${build.id}_${sf.spec.os.sysdef.clean.configurations.list}_compile_full_export.log" />
- <arg name="--makefile" value="${compile.log.dir}/${build.id}_${sf.spec.os.sysdef.clean.configurations.list}_compile_full_export_Makefile" />
+ <arg name="--logfile" value="${compile.log.dir}/${build.id}_${sf.spec.os.sysdef.clean.configurations.list}_compile_${sf.export.stage.name}.log" />
+ <arg name="--makefile" value="${compile.log.dir}/${build.id}_${sf.spec.os.sysdef.clean.configurations.list}_compile_${sf.export.stage.name}_Makefile" />
<arg line="--export-only"/>
</sbsOptions>
</hlm:sbsinput>
@@ -74,7 +88,6 @@
<antcall target="compile-main" inheritAll="false" inheritRefs="true">
<param name="build.system" value="${sf.spec.build.system}" />
<param name="sbs.inputs.list" value="sf.export"/>
- <param name="qmake.enabled" value="false"/> <!-- ensure qmake is not run, before its available -->
</antcall>
</target>