[Scons-dev] Documentation

Andrew C. Morrow andrew.c.morrow at gmail.com
Tue Apr 18 08:43:29 EDT 2017


As a word of caution, we did something similar in the MongoDB tree for a
new kind of "library":

https://github.com/mongodb/mongo/blob/master/site_scons/site_tools/thin_archive.py#L53-L55

However, it doesn't fully work, because the SCons internals expect to be
able to transmogrify Nodes between the Entry, File, and Dir subclasses at
will and without consideration as to any further sub-classing.

The result, in our experience, lead to very cryptic errors (see
https://jira.mongodb.org/browse/SERVER-27380), so we have disabled this
tool until we figure out how to do this right.

Andrew



On Tue, Apr 18, 2017 at 4:26 AM, Russel Winder <russel at winder.org.uk> wrote:

> On Mon, 2017-04-17 at 08:24 -0700, Bill Deegan wrote:
> > Can you share your work in progress on bitbucket?
>
> The experimental repository is at https://github.com/russel/SCons_D_Exp
> eriment
> Even though SCons is a Mercurial world, the D world is a Git/GitHub
> one. Given that Atlassian have turned BitBucket into a Git place to
> compete with GitHub, I could push it to BitBucket as well, but I am not
> sure the dilution would achieve anything.
>
> > On Mon, Apr 17, 2017 at 2:06 AM, Russel Winder <russel at winder.org.uk>
> > wrote:
> >
> > > On Sun, 2017-04-16 at 11:19 -0700, Bill Deegan wrote:
> > > > Not sure what you mean.. Can you explain?
> > >
> > > For the dub tool, I believe I need a target node that is not a
> > > SCons.Node.FS.File nor a SCons.Node.FS.Dir, but the builder
> > > infrastructure is demanding that this be the case. I thus wanted to
> > > create a _Library class that was a sub-class of SCons.Node.FS.File
> > > but
> > > with all the rest of the information carried as well. (I may be
> > > going
> > > up totally the wrong tree, but this is learning by hacking, seeking
> > > feedback.) So I was looking for documentation to find out how to
> > > call
> > > the superclass initialiser, i.e. SCons.Node.FS.File.__init__.
>
> In the end I created a Subclass of SCons.Node.FS.File focussing on
> representing the library archive created, but carrying lots of other
> knowledge. I eventually settled on calling the superclass constructor
> at the end of the subclass constructor (don't you just love Python :-)
> thus:
>
> SCons.Node.FS.File.__init__(self, name, env.Dir(location), self)
>
> but I am really not sure that last argument is right. It works but it
> doesn't feel right. However there is no documentation on the fs
> parameter that I can find. I think maybe I am just not looking hard
> enough.
>
> --
> Russel.
> ============================================================
> =================
> Dr Russel Winder      t: +44 20 7585 2200   voip:
> sip:russel.winder at ekiga.net
> 41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel at winder.org.uk
> London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder
>
> _______________________________________________
> 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/20170418/a476ac41/attachment.html>


More information about the Scons-dev mailing list