More robust installation and MPI handling
Bug fixes
- #359: Under some circumstances the installation was getting confused
about which MPI implementation to use, especially whenmpiexec
was
not inPATH
. A more robust solution was implemented, fixing this
bug, and additional checks were added to expose any similar issues in
the future. - #317:
co_reduce
would segfault on some systems (Fedora 25, maybe
others) because the MPI compiler wrappers were adding
-wl,-z,noexecstack
. This is also reported as GCC bug 71729. If
the build system detects-z noexecstack
is being passed to the
liker, it will replace it with-z execstack
, thereby fixing this
bug. - A typo in the top level CMakeLists.txt was fixed that could cause
additional problems with MPI integration in some rare
cases. - #365:
caf_single.c
is maintained by and included in
GFortran. Duplication in OpenCoarrays was an unneeded maintenance
burden and caused some confusion for OpenCoarrays package
maintainers.
Minimum allowable CMake was updated from 3.0 to 3.2
This was done because CMake 3.2 has
- Better support for Fortran
- Better capabilities for finding and integrating with MPI
Default MPICH installation was upgraded to 3.2
This was done in anticipation of supporting Fortran 2015 failed-image features that are currently available with the following:
- MPICH 3.2 or later,
- GCC 7.1 or later,
- OpenCoarrays vehre/failed-images branch.
The OpenCorrays installer patches the MPICH source to address a known MPICH issue. A new OpenCoarrays release will be produced after merging the failed-image support into the master branch by merging pull request #370 .
Miscellaneous
- Further enhancements to make the install system more robust in it's
handling of MPI. - Various typos and broken links in documentation were
corrected. Thanks to @ocaisa for pointing some of these out. - Other changes to README.md and documentation including fixing links,
improved formatting and aesthetics, and SEO
Installation
Please see the installation instructions for more details on how to build and install this version of OpenCoarrays