[Scons-dev] Lightning talk about parts

William Deegan bill at baddogconsulting.com
Mon Mar 18 00:42:46 EDT 2013


Bummer.
I'm at pycon.
Didn't know any other SCons folks are here.

Anyone sprinting?

-Bill

On 03/17/2013 02:50 AM, anatoly techtonik wrote:

> Congratulations to Kenny with his lightning talk about parts on PyCon! =)

>

> Now I understand what's going on with it a little bit more and I like

> the stuff. It will be awesome to have these slides with examples

> online and linked from SCons website. http://parts.tigris.org

>

> I have a long standing idea of teaching SCons to understand the

> declarative format (like JSON) that can be used to describe and

> compile simple dependencies, such as zlib:

>

> http://wiki.openttd.org/Compiling_on_Windows_using_MinGW#Compiling_zlib

>

> Why the need of the declarative format? To know the inputs and outputs

> of the package like zlib and connect them to the inputs and outputs of

> other dependencies. Like I know the dependency graph of the package,

> but when I look into SCons - there is no way to get that high-level

> overview of these. Even low level dependency tree requires a dry run.

> Of course, the SCons powers are not squeezable into such format and it

> is impossible. But for the purpose of clarity and studying dependency

> problems, such format would be very welcome.

>

> For example, there are no _dependency level input_s for zlib - it is

> self-contained, but there are can be several outputs. Required output

> is affected by some generic (or specific) condition. As a user, I only

> know that a zlib is a library, and it is pretty dark to know the

> shared/unshared details. I understand that parts already cares about

> these underlying details automatically.

>

> So, the question - is it technically feasible with parts to fulfill

> this scenario:

> - take zlib description in JSON format

> - show input and output dependencies of the package

> - show user level info about possible outputs

> - show low level switches that affect the outputs

> - show how these switches are connected to other parts

> (dependencies), because some dependencies set these switches and they

> can not be changed

> - download and compile

>

> In the end it might look like (sorry, not time to polish this):

>

> [switches]

> +------+

> +------+ |

> +------+ | |

> | | | [outputs]

> [inputs] +----+-+-+-+ +-----------+

> +----+ +--shared-+ | |

> | part | +=====+ part |

> shared ---+ +==static=+=====+ | |

> lib +----------+ ^ +-----------+

> input |

> |

> +

> line powered when parts

> are connected

>

> --

> anatoly t.

>

>

> _______________________________________________

> Scons-dev mailing list

> Scons-dev at scons.org

> http://two.pairlist.net/mailman/listinfo/scons-dev


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://two.pairlist.net/pipermail/scons-dev/attachments/20130317/16c1fd0f/attachment.html>


More information about the Scons-dev mailing list