Title: Message
Apologies if this is a repeat... 
 
 The parent property problem is resolvable if you define the property in the parent script (probably as <property name="testresult.string" value=""/> or something). You can then reset it in nested scripts (I assume that's what you're talking about when you say a controlling project? A script that calls others?). Even better, just pick them all up from a separate config file from your main script using: 
 
<include buildfile="build.config"/>
 
If you're not already doing something like that. Without just copying in my scripts, I'll try and outline what I'm trying to explain (badly :) as a solution to your original problem). This is not even attempting to be syntactically correct :)
 
<target name="Main">
    <call target="Check_Option_Explicit" failonerror="false"/>
    <call target="build_report"/>
    <if propertytrue="fail.string">
        <fail>.</fail>
    </if>
</target>
 
<target name="build_report">
    <script>
       
    Build resulted in this many option explicit problems (this script checks for all the conditions using the OptionExplicit.Results property etc)
    It then sets fail.string accordingly.
 
    It can also echo some nice looking results to the command line etc etc.
   
    <script>
</target>
 
<target name="Check_Option_Explicit">
    <!-- sets this property from script using Project.properties["OptionExplicit.Results"]-->
</target>
 
You see that you could call many targets like Check_Option_Explicit and create many properties (in your case propertyexists may not be the best way to do this)
 
I've grossly oversimplified this, so I apologise in advance - I'm just trying to get the general idea across as we use it quite successfully :) As for the fork stuff - I've done similar, but had to write my own spawn task to do so - which I use a lot in case you're wondering : ) 


"This communication is intended solely for the addressee and is confidential and not for third party unauthorised distribution."

Reply via email to