You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Per discussion from
https://github.com/open-mpi/ompi/wiki/Meeting-2025-03-14, we would
like to make relocating an Open MPI installation easier.
Specifically, if we can avoid the need to propagate various *_PREFIX
environment variables / command line options down through multiple
layers and subsystems (OMPI, PRRTE, PMIx), that would
eliminate/simplify a bunch of our code.
Text help files are something that Open MPI currently has to find in
the install tree filesystem at run-time.
This commit is a proposal:
1. Developers still maintain help messages in the various help_*.txt
files around the code base.
Maintaining descriptive, user-friendly help messages in text files
(instead of manually hand-coding long strings in C) has proven to
be quite useful. We do not want to lose this capability.
2. During "make", those help_*.txt files are encoded into .c and .h
files where the individual messages are assigned to unique C
variables (properly prefixed per the prefix rule).
3. These strings can then be passed to a slightly modified
opal_show_help*() function for rendering and deduplication
**NOTE:** In this commit, updating opal_show_help() is simulated by
creating a new opal_showhelp2() function just so that we
can update one component without yet disturbing the rest
of the code base.
This commit converts the TCP BTL to the proposed system so that the
developer community can comment and discuss. Once a final system is
decided upon, it can be propagated to the rest of the code base.
Changes that will need to be made wherever a help_*.txt file is used
(e.g., in components, but also in various base directories):
* Update Makefile.am:
* Remove the help_*.txt file from dist_opaldata_DATA, add to
EXTRA_DIST
* Invoke $(OMPI_HELP_GEN) (i.e., a Python script) to generate the .c
and .h files containing the help strings / variable declarations
* Add the generated .c and .h files to the list of source files
* Add the generated .c and .h files to MAINTAINERCLEANFILES
* At existing call sites to opal_show_help*():
* #include the relevant .h file(s) declaring the help file strings
* Remove the filename from the call to opal_show_help()
* Add a prefix string to the topic name (e.g., "btl_tcp:") to
guarantee uniqueness
* Add the C variable containing the help message as the 2nd param
**NOTE:** If this proposal is accepted, *all* help-*.txt files and
calls to opal_show_help*() will be converted to the new
system. The intent is that *no* text help files will be
installed; *all* function calls to display help messages
will use the new encoded-in-C-variables-at-"make"-time
scheme.
This work is intended for main / v6.0.x -- not for v5.0.x.
Signed-off-by: Jeff Squyres <[email protected]>
0 commit comments