Login | Register
My pages Projects Community openCollabNet

Discussions > SCons Development (OBSOLETE) > Re: [scons-dev] call for pre-testing next release: 0.95.1 available

Project highlights:

14 Nov 2017: Release 3.0.1 is now available at the download page.

18 Sep 2017: Release 3.0.0 is now available at the download page.

03 Nov 2016: Release 2.5.1 is now available at the download page.

scons
Discussion topic

Back to topic list

Re: [scons-dev] call for pre-testing next release: 0.95.1 available

Author Charles Crain <chux at houston dot rr dot com>
Full name Charles Crain <chux at houston dot rr dot com>
Date 2004-06-17 12:07:21 PDT
Message > The problem with the above is that the paths to the source and target
> aren't there, and the .abspath modified on the source file isn't
> expanded and is instead replaced by _abspath. Maybe this isn't a bug
> either, but it surprised me.
>
I can at least explain this, since I wrote the code that does it. The
basic problem is that we don't want the names or paths of source files
to affect whether a target is rebuilt. We only care about the content
of the source files, or rather the bsig of the target file, which is
generated by the content of the source files.

The way we used to do this was to generate a dummy list of sources and
targets that we used for signature calculation. I think that the
sources were always [ '__s1__', '__s2__' ] and the targets were always [
'__t1__', '__t2__' ]. Well, when we started adding cool stuff like
command generators and so forth that might make assumptions about the
name or number of source or target files in a build (like the DLL
emitter in Windows which will crap out if there is not a target with a
".dll" suffix), then these dummy sources/targets broke down.

Then I changed it to use the actual name of the source and target nodes
with path information stripped. The idea was that we might rebuild if
the name of the source file changed but the content did not, but that
this was a very small corner case, and it was still correct anyway. And
that was good until we added the cool stuff like .base and .abspath and
all that, because those did not produce Node objects but rather strings
that were NOT stripped from signature calculation. Abspath was a
particular problem because now the path of the source or target was all
of a sudden affecting rebuilds, which was not so much a corner case.

So now what we do is we canonicalize the path, by appending the
attribute name (abspath, base, basename, whatever) to the file name with
no path information. Which works great. Except that this was never
intended for human consumption. And now that we have the new --debug
option, humans are consuming it. So we might need to pretty it up a
little. Maybe changing it to someting more obtuse looking like <source
tag: abspath(AbsTime.cpp) > or something like that would work? The
other option is to add extra logic to print the real path names for the
--debug info only, but still use the canonicalized versions for
signature calculation.

-Charles



--------------------​--------------------​--------------------​---------
To unsubscribe, e-mail: dev-unsubscribe@scon​s.tigris.org
For additional commands, e-mail: dev-help at scons dot tigris dot org

« Previous message in topic | 4 of 14 | Next message in topic »

Messages

Show all messages in topic

[scons-dev] call for pre-testing next release: 0.95.1 available stevenknight Steven Knight 2004-06-16 20:41:46 PDT
     Re: [scons-dev] call for pre-testing next release: 0.95.1 available timot Timothee Besset 2004-06-17 01:22:50 PDT
     Re: [scons-dev] call for pre-testing next release: 0.95.1 available Anthony Roach <aroach at electriceyeball dot com> Anthony Roach <aroach at electriceyeball dot com> 2004-06-17 07:11:05 PDT
         Re: [scons-dev] call for pre-testing next release: 0.95.1 available Charles Crain <chux at houston dot rr dot com> Charles Crain <chux at houston dot rr dot com> 2004-06-17 12:07:21 PDT
             Re: [scons-dev] call for pre-testing next release: 0.95.1 available Chad Austin <aegisk at vrac dot iastate dot edu> Chad Austin <aegisk at vrac dot iastate dot edu> 2004-06-20 18:49:31 PDT
                 Re: [scons-dev] call for pre-testing next release: 0.95.1 available broonie Mark Brown 2004-06-21 04:40:19 PDT
     Re: [scons-dev] call for pre-testing next release: 0.95.1 available Anthony Roach <aroach at electriceyeball dot com> Anthony Roach <aroach at electriceyeball dot com> 2004-06-17 13:55:44 PDT
         Re: [scons-dev] call for pre-testing next release: 0.95.1 available Charles Crain <chux at houston dot rr dot com> Charles Crain <chux at houston dot rr dot com> 2004-06-17 14:50:06 PDT
     Re: [scons-dev] call for pre-testing next release: 0.95.1 available Chad Austin <aegisk at vrac dot iastate dot edu> Chad Austin <aegisk at vrac dot iastate dot edu> 2004-06-18 23:41:04 PDT
     Re: [scons-dev] call for pre-testing next release: 0.95.1 available Anthony Roach <aroach at electriceyeball dot com> Anthony Roach <aroach at electriceyeball dot com> 2004-06-22 09:13:42 PDT
         Re: [scons-dev] call for pre-testing next release: 0.95.1 available stevenknight Steven Knight 2004-06-22 20:03:02 PDT
             Re: [scons-dev] call for pre-testing next release: 0.95.1 available Anthony Roach <aroach at electriceyeball dot com> Anthony Roach <aroach at electriceyeball dot com> 2004-06-23 09:52:58 PDT
     Re: [scons-dev] call for pre-testing next release: 0.95.1 available "Erling D dot Andersen" <e dot d dot andersen at mosek dot com> "Erling D dot Andersen" <e dot d dot andersen at mosek dot com> 2004-07-06 03:34:13 PDT
     Re: [scons-dev] call for pre-testing next release: 0.95.1 available Werner Schiendl <ws-news at gmx dot at> Werner Schiendl <ws-news at gmx dot at> 2004-07-13 09:51:03 PDT
Messages per page: