libmesh: add v1.7.1, and fixes (#45292)

* libmesh: add missing v1.7.1 release

* libmesh: avoid pulling in petsc if only +mpi or +metis is given

* libmesh: add shared variant

Co-authored-by: rbberger <rbberger@users.noreply.github.com>
This commit is contained in:
Richard Berger 2024-07-18 05:46:39 -06:00 committed by GitHub
parent 8d2a6d6744
commit 00ae96a7cb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -20,6 +20,7 @@ class Libmesh(AutotoolsPackage):
version("master", branch="master", submodules=True) version("master", branch="master", submodules=True)
version("1.7.1", sha256="0387d62773cf92356eb128ba92f767e56c298d78f4b97446e68bf288da1eb6b4")
version("1.4.1", sha256="67eb7d5a9c954d891ca1386b70f138333a87a141d9c44213449ca6be69a66414") version("1.4.1", sha256="67eb7d5a9c954d891ca1386b70f138333a87a141d9c44213449ca6be69a66414")
version("1.4.0", sha256="62d7fce89096c950d1b38908484856ea63df57754b64cde6582e7ac407c8c81d") version("1.4.0", sha256="62d7fce89096c950d1b38908484856ea63df57754b64cde6582e7ac407c8c81d")
version("1.3.1", sha256="638cf30d05c249315760f16cbae4804964db8857a04d5e640f37617bef17ab0f") version("1.3.1", sha256="638cf30d05c249315760f16cbae4804964db8857a04d5e640f37617bef17ab0f")
@ -119,6 +120,7 @@ class Libmesh(AutotoolsPackage):
values=("none", "pthreads", "tbb", "openmp"), values=("none", "pthreads", "tbb", "openmp"),
multi=False, multi=False,
) )
variant("shared", default=True, description="Enables the build of shared libraries")
conflicts( conflicts(
"+metaphysicl", "+metaphysicl",
@ -140,8 +142,8 @@ class Libmesh(AutotoolsPackage):
depends_on("mpi", when="+slepc") depends_on("mpi", when="+slepc")
# compilation dependencies depend on perl # compilation dependencies depend on perl
depends_on("perl") depends_on("perl")
depends_on("petsc+mpi", when="+mpi") depends_on("petsc+mpi", when="+petsc+mpi")
depends_on("petsc+metis", when="+metis") depends_on("petsc+metis", when="+petsc+metis")
depends_on("slepc", when="+slepc") depends_on("slepc", when="+slepc")
depends_on("petsc", when="+petsc") depends_on("petsc", when="+petsc")
depends_on("tbb", when="threads=tbb") depends_on("tbb", when="threads=tbb")
@ -150,6 +152,11 @@ class Libmesh(AutotoolsPackage):
def configure_args(self): def configure_args(self):
options = [] options = []
if "+shared" in self.spec:
options.extend(["--enable-shared", "--disable-static"])
else:
options.extend(["--disable-shared", "--enable-static"])
# GLIBCXX debugging is not, by default, supported by other libraries, # GLIBCXX debugging is not, by default, supported by other libraries,
# so unconditionally disable it for libmesh # so unconditionally disable it for libmesh
options.append("--enable-glibcxx-debugging=no") options.append("--enable-glibcxx-debugging=no")