sf-platform/build.xml
changeset 828 f19c94ca8982
parent 827 b671b85a0863
child 830 d7e0043062fc
--- a/sf-platform/build.xml	Tue Dec 08 16:31:16 2009 +0000
+++ b/sf-platform/build.xml	Tue Dec 08 17:42:29 2009 +0000
@@ -17,7 +17,7 @@
    -->
 
   <!-- MattD - workaround until generating a model from package definitions works-->
-  <target name="sf-build-noprep" depends="sf-platform-bootstrap,sf-compile,sf-postbuild">
+  <target name="sf-build-noprep" depends="sf-platform-bootstrap,sf-compile">
     <echo>[SF-BUILD-NOPREP] (platform)</echo>
     <echo>[SF-BUILD-NOPREP] WARNING: Not generating model from packages</echo>
   </target>
@@ -215,47 +215,63 @@
         <echo message="INFO [FAST COMPILE] Skipping Tools/Tools2 builds"/>
       </then>
       <else>
-        <!-- OS tools2 build first-->
-        <hlm:argSet id="sbs.tools2.var">
-          <hlm:arg name="config" value="tools2_rel.whatlog" />
-          <hlm:arg name="singlejob" value="false" />
-          <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
-          <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}" />
-        </hlm:argSet>
-        <antcall target="compile-main" inheritAll="false" inheritRefs="true">
-          <param name="build.system" value="${sf.spec.build.system}" />
-          <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}" />
-          <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
-          <param name="sf.spec.sysdef.version" value ="${sf.spec.os.sysdef.version}"/>
-          <reference refid="sbs.tools2.var" torefid="sbs.var" />
-          <reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
-          <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
-        </antcall>
+      
+        <for list="${sf.spec.sbs.tools.config}" delimiter="," param="sf.spec.sbs.tools.splitconfig">
+          <sequential>
+            <echo message="INFO [Iterative tools compile] @{sf.spec.sbs.tools.splitconfig}"/>
+            <propertyregex property="sf.building.tools2" override="true" input="@{sf.spec.sbs.tools.splitconfig}" regexp="^tools2" select="true" defaultValue="false"/>
 
-        <antcall target="sf-list-dir" inheritAll="false">
-          <param name="sf.list.name" value="post-build-tools2"/>
-        </antcall>
+            <if>
+              <istrue value="${sf.building.tools2}"/>
+              <then>
+                <!-- "tools2" build -->
+                <hlm:argSet id="sbs.tools2.var">
+                  <hlm:arg name="config" value="@{sf.spec.sbs.tools.splitconfig}" />
+                  <hlm:arg name="singlejob" value="false" />
+                  <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
+                  <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}" />
+                </hlm:argSet>
+                <antcall target="compile-main" inheritAll="false" inheritRefs="true">
+                  <param name="build.system" value="${sf.spec.build.system}" />
+                  <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}" />
+                  <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
+                  <param name="sf.spec.sysdef.version" value ="${sf.spec.os.sysdef.version}"/>
+                  <reference refid="sbs.tools2.var" torefid="sbs.var" />
+                  <reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
+                  <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
+                </antcall>
 
-        <!-- OS tools build after tools2 -->
-        <hlm:argSet id="sbs.tools.var">
-          <hlm:arg name="config" value="tools_rel.whatlog" />
-          <hlm:arg name="singlejob" value="true" />
-          <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
-          <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}" />
-        </hlm:argSet>
-        <antcall target="compile-main" inheritAll="false" inheritRefs="true">
-          <param name="build.system" value="${sf.spec.build.system}" />
-          <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}" />
-          <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
-          <param name="sf.spec.sysdef.version" value ="${sf.spec.os.sysdef.version}"/>
-          <reference refid="sbs.tools.var" torefid="sbs.var" />
-          <reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
-          <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
-        </antcall>
+                <antcall target="sf-list-dir" inheritAll="false">
+                  <param name="sf.list.name" value="post-build-tools2"/>
+                </antcall>
+              </then>
 
-        <antcall target="sf-list-dir" inheritAll="false">
-          <param name="sf.list.name" value="post-build-tools"/>
-        </antcall>
+              <else>
+                <!-- "tools" build -->
+                <hlm:argSet id="sbs.tools.var">
+                  <hlm:arg name="config" value="@{sf.spec.sbs.tools.splitconfig}" />
+                  <hlm:arg name="singlejob" value="true" />
+                  <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
+                  <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}" />
+                </hlm:argSet>
+                <antcall target="compile-main" inheritAll="false" inheritRefs="true">
+                  <param name="build.system" value="${sf.spec.build.system}" />
+                  <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}" />
+                  <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
+                  <param name="sf.spec.sysdef.version" value ="${sf.spec.os.sysdef.version}"/>
+                  <reference refid="sbs.tools.var" torefid="sbs.var" />
+                  <reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
+                  <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
+                </antcall>
+
+                <antcall target="sf-list-dir" inheritAll="false">
+                  <param name="sf.list.name" value="post-build-tools"/>
+                </antcall>
+              </else>
+	    </if>
+          </sequential>    
+        </for>
+
       </else>
     </if>