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