[Scons-dev] VariantDir source paths in .sonsign.dblite file
Jason Kenny
dragon512 at live.com
Thu Oct 1 17:36:23 EDT 2015
That is how i do it in Parts.
technically I added a node manager for all node. SCons only stores information about file/directory nodes. Aliases and Value nodes don't get stored. This is fine given the load all build file approach Scons has of rebuilding the tree every build. I needed to more for Parts try not to load stuff approach as a speed optimization.
You basically want to see if this is a src node or a variant node. I src_node is itself, a variant has a different source. You don't need to store information about source nodes, pointing to themselves. I should point out what you suggest will have a few possible issues as you have to take of details that i cannot fully recall. In my case i read data from my data structures, and don't mess with the node directly as the builders will update information as stuff loads back to the original state.
You seem to have a case of the repository feature in scons in which a builder can find output data in a directory you point to. You might find this more useful to look at vs trying to make your own data cache of information. Jason
From: jrosen at qti.qualcomm.com
To: scons-dev at scons.org
Date: Thu, 1 Oct 2015 20:58:35 +0000
Subject: Re: [Scons-dev] VariantDir source paths in .sonsign.dblite file
Hi Kenny,
Thank you for the suggestion.
I see that by doing so I will be able to retrieve the information I need – to re-establish the link from scrnode to Variant.
Julian
From: Scons-dev [mailto:scons-dev-bounces at scons.org]
On Behalf Of Jason Kenny
Sent: Thursday, October 01, 2015 1:53 PM
To: SCons developer list
Subject: Re: [Scons-dev] VariantDir source paths in .sonsign.dblite file
Hi Julian
The csig information stored in the SCons DB only contains information about the given Node. The relationship between a "srcnode" and the "Variant" is connected at runtime as the builders/scanner
set up the node tree. The way i have had to deal with this with my add to SCons ( called Parts) was to stored the ID of the src node to a given Variant node in my own DB. From this you can get the information you would want. I would suggest if you want this
information post build to do something else with it, you will need to store you own data to parse.
Jason
From:
jrosen at qti.qualcomm.com
To: scons-dev at scons.org
Date: Thu, 1 Oct 2015 20:37:25 +0000
Subject: Re: [Scons-dev] VariantDir source paths in .sonsign.dblite file
Hi Bill,
Feel free to switch this conversation over to the scons-users group.
In a nutshell – I need to establish dependency tree information with source paths.
This is for supporting builds shipped to customers where we need to re-establish artifacts that go into building a library – for example, where we may ship partial
source and partial *.o files.
The list of files fed into this API need to have “correct” paths – as in paths where they files actually reside.
Thx,
Julian
From: Scons-dev [mailto:scons-dev-bounces at scons.org]
On Behalf Of Bill Deegan
Sent: Thursday, October 01, 2015 1:24 PM
To: SCons developer list
Subject: Re: [Scons-dev] VariantDir source paths in .sonsign.dblite file
Julian,
What are you trying to do with the information?
BTW. This question is likely more appropriate for the scons-users group as the dev group is meant for use discussing the development of SCons itself, and the users mailing list for people building
build systems using SCons.
Thanks,
Bill
On Thu, Oct 1, 2015 at 1:12 PM, Rosenthal, Julian <jrosen at qti.qualcomm.com> wrote:
Hi,
Quick question regarding VariantDir paths for sources (*.c) stored in .sconsign.dblite files.
I'm very happy to see that dependency info can be retrieved this way.
Unfortunately, I have a need for the actual source paths rather than the VariantDir paths information in my case.
Is there an option for sconsign to output this information with actual source paths?
Is there a way to convert this information back to actual source paths (after the fact)?
I can see how I could convert this back knowing what VARIANTDIR is, but even then I have to make some assumptions as to the actual source path. (<PARTIAL SOURCE PATH> versus <SOURCE PATH> in the example below)
Example:
Following information is available in sconsign for an example source file:
<BUILD_ROOT>/<PARTIAL SOURCE PATH>/<VARIANTDIR>/<SOURCE FILE>
I need the info to be the following:
<BUILD_ROOT>/<SOURCE PATH>/<SOURCE FILE>
I need the location of the source file (*.c) before it is copied to VARIANTDIR.
Thx for any pointers.
Sincerely,
Julian Rosenthal
_______________________________________________
Scons-dev mailing list
Scons-dev at scons.org
https://pairlist2.pair.net/mailman/listinfo/scons-dev
_______________________________________________ Scons-dev mailing list
Scons-dev at scons.org
https://pairlist2.pair.net/mailman/listinfo/scons-dev
_______________________________________________
Scons-dev mailing list
Scons-dev at scons.org
https://pairlist2.pair.net/mailman/listinfo/scons-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist2.pair.net/pipermail/scons-dev/attachments/20151001/cf98ef59/attachment.html>
More information about the Scons-dev
mailing list