Hi Ralph,

On Tue, 7 May 2013, Ralph Castain wrote:

2) Avoid adding "ignored" frameworks to the autogenerated "frameworks.h"
   header file.

This simply applies the same ignored() function that is used elsewhere in
the autogen.pl script for omitting "ignored" MCA directories from the
processing. This just picks up the ".ompi_ignore" (and/or ".ompi_unignore) files. The intent being that if you ignore a component (subdir) that will
be removed from the list, but you could also remove an entire framework if
you put the ignore file in the top-level of the framework.


That is new - I would suggest not doing that as it behaves differently than
you might expect. The .ompi_ignore in a component prevents that component
from building at all, so it won't ever be opened etc. However, the
framework *must* build the base code no matter what - and that means the
framework will be opened, selected, and closed at the minimum.


I would prefer we keep ompi_ignore cleanly defined. You can ignore all components by simply putting --enable-mca-no-build=<framework> on your configure line.

The intent being that if for whatever reason you ignore a framework in the
"${project}/mca/" space, you will not have it automatically show up in the
project's "frameworks.h" file.

On Tue, 7 May 2013, Ralph Castain wrote:

We use the frameworks.h file to "discover" the frameworks in
ompi_info.  Even if no components are built for that framework,
there still are MCA params relating to the base of that framework.
Sounds silly, I know - but there may be reasons to access those
params - e.g., to set verbosity to verify that no components are
being selected.

I think we need those frameworks to be listed...


Ok, I didn't realize the 'ompi_info' aspect.  Good to know.
However, I think honouring the ignore behavior is good in this case
b/c if you drop an ignore file in a framework, you won't get any
other autogen touches (i.e., no Makefile's are autogenerated).  So
it seems that having no Makefiles but including the framework in the
"framework.h" would break regardless.  Again, this is more of a
safety guard.

Actually, I disagree. As stated above, the framework will *always* build the
base code and be opened, selected, and closed - so you at least need
access to the verbosity parameter so you can verify those operations.
Keeping it in ompi_info is of value.


I guess I misunderstood the scope of use for the ".ompi_ignore" file.  I
thought that it could be placed at the top of the framework and it would
ignore the entire directory.

I just did a quick test with the earlier version of autogen.pl (r28241) and
it does indeed generate the Makefiles for that directory.  So it does seem
reasonable that if autogen.pl processes the directory for Makefile stuff*,
that it should process it for the "frameworks.h" entry.

I'll revert that part of the changeset to previous functionality.

Sorry, my bad,
--tjn

 _________________________________________________________________________
  Thomas Naughton                                      naught...@ornl.gov
  Research Associate                                   (865) 576-4184

Reply via email to