[Scons-users] Mark existing file as up-to-date
Dirk Bächle
tshortik at gmx.de
Mon May 12 12:51:21 EDT 2014
Pedro,
thanks a lot for the feedback, good to hear that things seem to have
worked out for you.
On 12.05.2014 11:22, Pedro Inácio wrote:
> [...]
>
>
> I would like to leave a final thought regarding,
>
> @Dirk, "Picking up these kind of dependencies is one of SCons'
> strongest points, that's why it takes control for you usually. If
> you want to be in charge, what exactly do you want SCons to do for
> you (what's left that a script couldn't do)? This may seem strange
> to hear it on the SCons user ML, but maybe you're using the wrong
> tool for the job...just sayin'."
>
>
> In my original email I started by stating that I was using SCons for
> data processing.
> I am a researcher and for my work I deal with processing satellite
> data. I begin with raw data collected by the satellite and proceed to
> apply a series of processing steps until we obtain the final data
> products.
> Until now I did this using traditional bash scripts, but it is obvious
> that using a tool like SCons has multiple advantages to ensure the
> reproducibility and correctness of the final data products.
> This is even more critical taking into account that the processing
> time requires several days on large computers.
> You are right, and at first sight, it might seem that I am using the
> wrong tool for the job.
> But only because 99% of SCons (and other build tools) are used for
> software compilation.
> Fundamentally, compilation is a very specific case of data processing.
> SCons is a program which builds a graph and goes through it to build
> only what is necessary.
Let me just quickly state that I'm definitely not trying to drive anyone
away from SCons. You seem to have given your current usage some thought,
so everything's cool. I'm perfectly fine with that...
But sometimes people are so affectionate that they try to make SCons do
everything under the sun, even against its design. Then I simply feel
it's my responsibility to tell them "Look there's a door at the other
side of the room. Maybe you don't have to continue banging your head
against this wall to get out." ;)
I agree with you that SCons has great potential handling dependency
graphs in a very general way (that has in fact been a driving force
behind its design). As you state above, it "builds only what is
necessary"...and is doing this based on the notion of "changed" sources.
Per default this means, when the contents (MD5 hashsum) of a source
changes, a target gets rebuilt.
This is a good thing, because as a user I don't have to care anymore
about when I should update my target. I call SCons and let it figure out
the rest.
In your case, you want to have some manual control back over when
special targets are built or not. So, for these output files, you're
putting yourself back into the position where you have a simple script
with the build steps, and are solely responsible for calling it at the
right time. You then have the control, but also the responsibility for
properly updating the targets in question.
Anyway, thanks a lot for using SCons and being so positive about it.
Best regards,
Dirk
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://four.pairlist.net/pipermail/scons-users/attachments/20140512/34c349e4/attachment.html
More information about the Scons-users
mailing list