From 61dbd3182d6c48f9c32ad67360cf32e9d248d937 Mon Sep 17 00:00:00 2001 From: Paschalis Korosoglou Date: Sun, 17 Dec 2017 04:37:20 +0200 Subject: [PATCH] Add clanguage variant for petsc (#6689) --- var/spack/repos/builtin/packages/petsc/package.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/var/spack/repos/builtin/packages/petsc/package.py b/var/spack/repos/builtin/packages/petsc/package.py index 838369f4e47..bdc3d30c92e 100644 --- a/var/spack/repos/builtin/packages/petsc/package.py +++ b/var/spack/repos/builtin/packages/petsc/package.py @@ -83,6 +83,9 @@ class Petsc(Package): description='Activates support for Trilinos (only parallel)') variant('int64', default=False, description='Compile with 64bit indices') + variant('clanguage', default='C', values=('C', 'C++'), + description='Specify C (recommended) or C++ to compile PETSc', + multi=False) # 3.8.0 has a build issue with MKL - so list this conflict explicitly conflicts('^intel-mkl', when='@3.8.0') @@ -199,6 +202,11 @@ def install(self, spec, prefix): if 'trilinos' in spec: options.append('--with-cxx-dialect=C++11') + if self.spec.satisfies('clanguage=C++'): + options.append('--with-clanguage=C++') + else: + options.append('--with-clanguage=C') + # Help PETSc pick up Scalapack from MKL: if 'scalapack' in spec: scalapack = spec['scalapack'].libs