gert, thanks for sticking w/ me on this. > > your build example could be done using call+force just as > readily in > > the past as you have it now. > > feel free to provide a sample to convince me, but I don't > think we will be change the new behaviour :-)
here's your example: <target name="clean" /> <target name="build-assembly" /> <target name="build-docs" /> <target name="debug" depends="clean, build-assembly, build-docs" /> <target name="release" depends="clean, build-assembly, build-docs" /> <target name="build"> <call target="debug" /> <call target="release" /> </target> #1, i don't see how your example works. there's no diff bet. target debug and target release, unless they init props in their bodies, in which case the depends= run too soon. what am i missing? #2 here's the equiv using call+force. just as legible, if slightly more verbose. <target name="clean" /> <target name="build-assembly" /> <target name="build-docs" /> <target name="doBuild" > <call force="true" target="clean" /> <call force="true" target="build-assembly" /> <call force="true" target="build-docs" /> </target> <target name="build"> <call target="initForDebug" /> <call target="DoBuild" force="true" /> <call target="initForRelease" /> <call target="DoBuild" force="true" /> </target> > > If you send me a simple example of your build file, I'd love > to help you out ... hopefully, the following example isn't too verbose to get the points across that 1) i have to use CALL to execute dodo* 2) in the new world order setProps will run several times altho it should only run once 3) i need setProps dependency so i can unit-test dodo1, dodo2, ... <target name="setProps" /> <target name="dodo1" depends="setProps" /> <target name="dodo2" depends="setProps" /> <target name="dodo3" depends="setProps" /> <target name="figure-it-all-out" > <property name="do1" value="false" /> <property name="do2" value="false" /> <property name="do3" value="false" /> <if uptodatefile="${File.App.Leap.Marker}" > <comparefiles> <includes name="${Dir.Leap.Xml}**.xml" /> <includes name="${Dir.Leap.Gsl}**.gsl" /> <includes name="${Dir.Leap.Commands}**.build" /> <includes name="${Dir.App}**.build" /> </comparefiles> <property name="do1" value="true" /> <property name="do2" value="true" /> </if> <if uptodatefile="${File.App.Leap.Marker}" > <comparefiles> <includes name="${Dir.Leap.Sql}**.sql" /> <includes name="${File.Version.Def.Spec}" /> </comparefiles> <property name="do2" value="true" /> <property name="do3" value="true" /> </if> <call if="${do1}" target="dodo1" /> <call if="${do2}" target="dodo2" /> <call if="${do3}" target="dodo3" /> ... </target> ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ Nant-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-users