mmg : add variant to install private headers for parmmg packaged (#47386)

* update package : add variant to install private headers for parmmg package
* re-add maintainer
* renamed to +private_headers and only for 5.7:
   /cc @jcortial-safran
* fix style and code
* applied suggestions
  /cc @jcortial-safran @tldahlgren
* fix
This commit is contained in:
Christophe Prud'homme 2024-12-19 04:12:32 +01:00 committed by GitHub
parent 2b2538e82c
commit 83af81a14a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -7,6 +7,7 @@
import spack.build_systems.cmake
from spack.package import *
from spack.util.executable import which
class Mmg(CMakePackage):
@ -50,6 +51,7 @@ class Mmg(CMakePackage):
variant("scotch", default=True, description="Enable SCOTCH library support")
variant("doc", default=False, description="Build documentation")
variant("vtk", default=False, when="@5.5.0:", description="Enable VTK I/O support")
variant("private_headers", default=False, description="Enable private headers", when="@5.7.0:")
depends_on("scotch", when="+scotch")
depends_on("doxygen", when="+doc")
@ -59,9 +61,10 @@ class Mmg(CMakePackage):
class CMakeBuilder(spack.build_systems.cmake.CMakeBuilder):
def cmake_args(self):
shared_active = self.spec.satisfies("+shared")
return [
args = [
self.define_from_variant("USE_SCOTCH", "scotch"),
self.define_from_variant("USE_VTK", "vtk"),
self.define_from_variant("MMG_INSTALL_PRIVATE_HEADERS", "private_headers"),
self.define("BUILD_SHARED_LIBS", shared_active),
self.define("LIBMMG3D_SHARED", shared_active),
self.define("LIBMMG2D_SHARED", shared_active),
@ -72,6 +75,7 @@ def cmake_args(self):
self.define("LIBMMGS_STATIC", not shared_active),
self.define("LIBMMG_STATIC", not shared_active),
]
return args
# parmmg requires this for its build
@run_after("install")