Versions Compared

Key

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

...

Each package contains a tool,  <package>Lib.py which defines a python function according to SCons' specific form.  The facilitiesLib.py file contains two functions:
generate which does the work, and exists which provides the ability to turn off the tool.

def generate(env, **kw):  dictionary of keywords, which is not used now for ST where single libraries are created but GR will create packages where libraries may have different dependencies.

Wiki Markup
evn.Tool('addLibrary', library=\['facilities'\])&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; to call a tool&nbsp;&nbsp;&nbsp; addLibrary was created by Navid.&nbsp; This adds the facilities to a list of libraries.

site_tools contains addLibrary
ordering in gcc matters for libs - can't find symbols otherwise.  The addLibrary tool  allows developers to avoid worrying about the order, and sets it up properly.   addLibrary makes sure the order is correct, if the item is not already the list, add it to the end, if it is already there, move it to the end.  Each library only appears once - this helps reduce the chance of creating a command line that is too long (which can occur when dealing with the Gaudi libraries).

Discussion

After building the libraries will exist in both the packages and in the installation lib directory.  After the build is completed, all we need is the include and lib directories for runtime. 

Jim reminded us that it would be helpful to provide a mechanism for tags such as rh9_gcc32 and rhel4, similarly for opt and debug builds.  Navid could