Red Hat Bugzilla – Bug 465921
openmpi is missing BR gcc4-gfortran
Last modified: 2013-11-03 20:37:15 EST
Description of problem:
Openmpi can't be rebuild under mock because of missing BR.
Version-Release number of selected component (if applicable):
How to fix:
add missing build requirement to spec
I think this is not correct fix, but this was minimum change in build environment to get package build.
Adding gcc4-gfortran breaks the build (well, the build succeeds, but it is missing fortran support entirely because of the mix of g77 and gfortran in the build process). You can only have one of gcc-g77 or gcc4-gfortran used to build the package, and since all previous versions have used gcc-g77, switching to gcc4-gfortran would break compatibility with existing, compiled fortran programs. As such I can't add gcc4-gfortran to the build requirements. If you are having problems building in a mock environment, it's likely caused by some difference between your initial mock environment and ours. The build requires that this package currently has are correct for our particular build environment. As such, I'm closing as NOTABUG.
OK, due to a change in the build system, packages that were previously not giving a specific buildrequires of gcc4-gfortran were getting it anyway. The build system recently changed such that this no longer happens. If I were to allow openmpi to be build using gcc-g77 instead, then programs that were built with the old packages wouldn't run after an upgrade. So, I've done what's necessary to make the package build with a specific buildrequires on gcc4-gfortran. Therefore I'm reopening this bug as it specifically *must* be fixed in order to avoid breaking existing openmpi applications.
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.