[Scons-users] CacheDir entries

Andrew C. Morrow andrew.c.morrow at gmail.com
Fri Oct 24 12:47:14 EDT 2014


Hi All -

What pieces of information are combined to identify a CacheDir entry?

I ask because I'm interested in setting up a CacheDir on a network share,
but it is not clear to me what I need to do to make this work with
heterogeneous client systems.

As a practical example, consider two otherwise identical linux
workstations, where the only difference is that one has GCC 4.8 and the
other has GCC 4.9, but both installed as /usr/bin/gcc. Would these
workstations share cache entries, assuming identical source files and tool
invocations? Why, or why not? Similar question for two machines with
varying contents of /usr/include/stdio.h or other system C and C++ headers
reached by translation units? For /usr/bin/ld?

The system I'm considering would have a few populations of mostly
homogeneous systems, so if necessary I could capture some information from
the external environment (contents of env['CC'] --version, contents of
/etc/lsb_release, etc.) to identify which population a given machine
belongs to. If I had such a machine fingerprint, what would be the best way
to inject it into the SCons view of the world such that cache entries with
different fingerprints were differentiated?

One obvious solution would be to have different subdirectories of the
network mount for each client fingerprint, but that seems clunky. Are any
contents of the Environment hashed into the cache id? If not, can I request
that an Environment entry be incorporated, so that I could have
env['MACHINE_FINGERPRINT'] = get_machine_fingerprint() and make that affect
the cache id? Are there other techniques for injecting this sort of
auxilliary information into the cache id for a node?

Thoughts on the above questions, comments from others who have attempted
this, or pointers to the relevant subsets of the SCons source would be
greatly appreciated.

Thanks, and apologies for the wall of questions,
Andrew
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20141024/cc36ea47/attachment.html>


More information about the Scons-users mailing list