gromacs: @2018:2020: add #include <limits> for newer %gcc builds (#26678)

gromacs@2018:2020.6 is fixed to build with gcc@11.2.0
by adding #include <limits> to a few header files.

Thanks to Maciej Wójcik <w8jcik@gmail.com> for testing versions.
This commit is contained in:
Bernhard Kaindl 2021-10-12 19:39:09 +02:00 committed by GitHub
parent 50a2316a15
commit 862ce517ce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -172,6 +172,20 @@ class Gromacs(CMakePackage):
relative_root=os.path.join('share', 'cmake', 'gromacs'))
def patch(self):
# Otherwise build fails with GCC 11 (11.2)
if self.spec.satisfies('@2018:2020.6'):
filter_file('#include <vector>', '#include <vector>\n#include <limits>',
'src/gromacs/awh/biasparams.h')
if self.spec.satisfies('@2018:2018.8'):
filter_file('#include <vector>', '#include <vector>\n#include <limits>',
'src/gromacs/mdlib/minimize.cpp')
if self.spec.satisfies('@2019:2019.6,2020:2020.6'):
filter_file('#include <vector>', '#include <vector>\n#include <limits>',
'src/gromacs/mdrun/minimize.cpp')
if self.spec.satisfies('@2020:2020.6'):
filter_file('#include <queue>', '#include <queue>\n#include <limits>',
'src/gromacs/modularsimulator/modularsimulator.h')
if '+plumed' in self.spec:
self.spec['plumed'].package.apply_patch(self)