<laugh> I don't see one. Probably should have some entry in the "building" area that describes their use.
On Jul 12, 2012, at 12:30 PM, Nathan Hjelm wrote: > I wouln't consider sourced variables being overritten by the sourcing > platform file a problem. I can update the platform file documentation to make > sure this behavior is clear. Can you point me at the right faq page? > > -Nathan > > On Mon, Jul 09, 2012 at 08:36:41PM -0700, Ralph Castain wrote: >> Okay, it took me awhile to grok thru all this, and I now understand how it >> is working. You do have a question, though, with duplicated entries. At the >> moment, we ignore any entry that is duplicated on the configure cmd line - >> i.e., if you set something in a platform file, and then attempt to also set >> it on the cmd line, we ignore the cmd line (without warning). In this case, >> an entry in the first file that is duplicated in the second file gets >> overwritten, also without warning. >> >> Dunno if that's an issue or not, but something to be aware of. >> >> >> On Jul 9, 2012, at 4:52 PM, Ralph Castain wrote: >> >>> I keep scratching my head over this, and I just cannot figure out how this >>> is going to do what you think. We "source" the platform file solely to >>> execute any envar settings that are in it - i.e., to capture the CFLAGS=... >>> and other such directives. We then read/parse the platform file to get all >>> the configure directives - e.g., enable_debug=yes. Sourcing the platform >>> file will set the envars, but won't capture the rest of the directives. >>> >>> Am I missing something here? It doesn't sound like you've really even tried >>> this yet - sure, chaining "source" commands will work, but do you actually >>> get the desired configuration?? >>> >>> Hence my comment about needing to modify the parser so it ALSO follows the >>> "source" directive. >>> >>> On Jul 9, 2012, at 3:58 PM, Nathan Hjelm wrote: >>> >>>> On Mon, Jul 09, 2012 at 03:31:33PM -0700, Ralph Castain wrote: >>>>> So if I understand this right, you would have multiple platform files, >>>>> each "sourcing" a common one that contains the base directives? It sounds >>>>> to me like you need more than the change below to make that work - you >>>>> would need to interpret the platform file itself to read and execute a >>>>> "source" directive inside it, wouldn't you? >>>> >>>> That is exactly what I want to do. The change in the RFC is the only one >>>> needed as platform files are sourced by ompi_load_platform.m4. This means >>>> platforms can contain arbitrary m4/shell code (including the source >>>> directive)! I tried my patch with a one line platform file that sourced an >>>> existing platform file and it worked as expected. >>>> >>>>> It would really help if your change (either comments or the RFC) actually >>>>> explained what the heck you are doing so I wouldn't have to waste hours >>>>> trying to figure out the impact of this patch :-/ >>>>> >>>> >>>> The RFC does explain what the patch does but I guess I could have >>>> elaborated on the implications. >>>> >>>> Before the patch we source the platform file then cd into the platform >>>> directory to find the mca parameters file. If a platform file were to have >>>> a source directive then it would have to be relative to the build >>>> directory (or absolute). By cding into the platform file's directory >>>> before sourcing the platform file and source directives are relative to >>>> the platform file's directory (or absolute). There is no impact outside of >>>> m4/shell commands within the platform file that read/write/stat files. >>>> >>>> I will add some additional comments before the commit (if there are no >>>> objects of course) elaborating on the change. >>>> >>>> -Nathan >>>> _______________________________________________ >>>> devel mailing list >>>> de...@open-mpi.org >>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel >>> >> >> >> _______________________________________________ >> devel mailing list >> de...@open-mpi.org >> http://www.open-mpi.org/mailman/listinfo.cgi/devel > _______________________________________________ > devel mailing list > de...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/devel