[Chapel Merge] Add a Lua/Lmod modulefile for Chapel on XC and EX

Branch: refs/heads/master
Revision: f2cd87e
Author: gbtitus
Log Message:

Merge pull request #17028 from gbtitus/dup-41f7a64

Add a Lua/Lmod modulefile for Chapel on XC and EX systems.

(Duplicate PR #16718 from 1.23-for-EX to master.)

(Original PR co-developed (python) and reviewed by @ronawho.)

The Programming Environment on HPE Cray EX and XC systems has added a
Lua/Lmod hierarchical module system to the existing flat Tcl-based one.
Here, add a Lua modulefile for Chapel to work with that.

(The original PR only targeted EX systems in order to to match up with
their delivery schedules. Now that it’s in the main line of development
it will target XC systems as well.)

While here, this also expands the number of configurations built into
the EX module.

A related change is that instead of using shell syntax to parameterize
here-documents to produce the modulefiles, this starts with standalone
template files and parameterizes those using a general-purpose python
script. This seems a much cleaner and more readable technique.

Modified Files:
A util/build_configs/cray-internal/chapel.modulefile.lua.template
A util/build_configs/cray-internal/chapel.spec.template
A util/build_configs/cray-internal/process-template.py
R util/build_configs/cray-internal/generate-rpmspec.bash
M doc/rst/platforms/cray.rst
M util/build_configs/cray-internal/README.md
M util/build_configs/cray-internal/chapel_package-cray.bash
M util/chplenv/chpl_gmp.py
M util/config/gather-cray-prgenv-arguments.bash
M util/config/gather-pe-chapel-pkgconfig-libs.bash

Compare: Comparing 118399930924...f2cd87ee80c5 · chapel-lang/chapel · GitHub