[Scons-users] Mark existing file as up-to-date

William Blevins wblevins001 at gmail.com
Fri May 9 10:36:00 EDT 2014


Would a custom decider help in this case? The default is timestamp but
base SCons package also provides MD5 sum and you can make your own.

V/R,
William
On May 9, 2014 4:22 AM, "Pedro Inácio" <pedromiragaia at gmail.com> wrote:


> @all, Thank you for your feedback.

>

> @William, the default build action is something like

> "foo $IN > $OUT"

> I can think of three situations where SCons flags $OUT to be rebuilt,

> 1. I might change the default build action for something like,

> "echo Building $OUT; foo $IN > $OUT"

> 2. I have recompiled foo, but I know that nothing changes in the output.

> 3. I may have changed input $IN, but I know that nothing changed in the

> output.

>

> In all three situations SCons is right. OUT should be rebuilt.

> However, I would like to have control and be able to tell SCons that in

> all three situations it does not need to rebuild the file.

>

> @Bill, good idea. I have tried this but it doesn't seem to work as

> expected. Perhaps I am doing something wrong. I believe the most pragmatic

> approach for me would be to ignore the entire build string.

> I replaced

> BarBuilder=Builder(action='''

> foo $SOURCE > $TARGET

> ''')

> with

> BarBuilder=Builder(action='''$(

> foo $SOURCE > $TARGET

> $)''')

> but for some reason SCons keeps flagging files for rebuild whenever I

> change the build action, despite the $( $).

>

>

>

> On 9 May 2014 00:35, Dirk Bächle <tshortik at gmx.de> wrote:

>

>> Hi Pedro,

>>

>>

>> On 08.05.2014 23:32, Pedro Inácio wrote:

>>

>>> I am using SCons for data processing.

>>> One of the perks is that, unlike traditional compilation projects, each

>>> file in my project might have required several hours to compute.

>>> Re-building existing files is, in general, not acceptable.

>>>

>>> [...

>>> Any ideas?

>>>

>>> I would simply split up your build into two single phases, something

>> like "SConstruct.preprocess" where you update all your precious files and

>> "SConstruct.postprocess" for all the build steps that use them as sources.

>> Then you can manually decide when it's efficient to run the preprocess

>> step again.

>>

>> Hope this helps.

>>

>> Best regards,

>>

>> Dirk

>>

>>

>> _______________________________________________

>> Scons-users mailing list

>> Scons-users at scons.org

>> http://four.pairlist.net/mailman/listinfo/scons-users

>>

>

>

> _______________________________________________

> Scons-users mailing list

> Scons-users at scons.org

> http://four.pairlist.net/mailman/listinfo/scons-users

>

>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://four.pairlist.net/pipermail/scons-users/attachments/20140509/867304be/attachment.htm


More information about the Scons-users mailing list