open-mpi / ompi

Open MPI main development repository
https://www.open-mpi.org
Other
2.13k stars 858 forks source link

SHMEM Fortran library only builds with --enable-oshmem #9764

Open bwbarrett opened 2 years ago

bwbarrett commented 2 years ago

While working on https://github.com/open-mpi/ompi/pull/9738, I discovered an unexpected behavior in the OSHMEM Fortran interface. The C interface will build if oshmem is enabled (either through autodetection or explicitly adding --enable-oshmem. However, the Fortran interface only builds if --enable-oshmem is explicitly added to the configure command line. The offending code is the AM conditional check:

AM_CONDITIONAL(OSHMEM_BUILD_FORTRAN_BINDINGS,                                                                                      
    [test "$enable_oshmem" = "yes" && \                                                                                            
     test "$ompi_fortran_happy" = "1" && \                                                                                         
     test "$OMPI_TRY_FORTRAN_BINDINGS" -gt "$OMPI_FORTRAN_NO_BINDINGS" && \                                                        
     test "$enable_oshmem_fortran" != "no"])   

enable_oshmem will not be yes unless the user explicitly requested oshmem.

tonycurtis commented 2 years ago

Is this because the Fortran interface was removed from the SHMEM spec?