Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Invocation in SConstruct will look like this:

Code Block

allExternals = SConscript('allExternals.scons')

...


usedExternals = SConscript('externals.scons', exports = 'allExternals')

...


SConscript('processExternals.scons', exports = 'allExternals usedExternals')

The per-container externals.scons looks like this:

Wiki Markup
{{Import('allExternals')}} \\
{{usedExternals = \[ \]}} \\
<span style="color: red"> <code>&#35; several lines like the following, one for each external used by the container</code></span> \\
{{usedExternals.append(\{'name' : 'cfitsio', 'iversion' : 'v3060'\})}} \\
<span style="color: red"> <code>&#35; .. and finally <finally</code></span> \\
{{Return('usedExternals')}}

Target names

Separate out target names, probably into master file, to be kept somewhere in SConsFiles, and optional per-container file. These files would be accessible both to SCons itself and to GoGui. Format will be two lists (one or both of which may be empty). First is list of global targets (e.g. includes); second is list of generic per-package target names to which package name should be prepended (e.g. -includes, resulting in a target for each package in the container like facilities-includes)