summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorRicardo Silva <ricardo.d.silva@gmail.com>2018-10-01 22:43:40 +0200
committerMassimiliano Culpo <massimiliano.culpo@gmail.com>2018-10-01 22:43:40 +0200
commitd031bd7461159da78ad6c65c8acee01cd65c589d (patch)
tree605c994d4d88a8d112bb0b615e4b454446d9aecc /var
parent57236fa2ce136ded8f9fdaaa36fbd8f46ab98666 (diff)
downloadspack-d031bd7461159da78ad6c65c8acee01cd65c589d.tar.gz
spack-d031bd7461159da78ad6c65c8acee01cd65c589d.tar.bz2
spack-d031bd7461159da78ad6c65c8acee01cd65c589d.tar.xz
spack-d031bd7461159da78ad6c65c8acee01cd65c589d.zip
patching p4est to select the proper openmp lib (#9381)
* patching p4est to select the proper openmp lib * For when compiler.openmp_flag isn't supported * authored by @nrichart, I only tested it * Adding openmp variant Signed-off-by: Ricardo Silva <ricardo.silva@epfl.ch>
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/p4est/package.py27
1 files changed, 26 insertions, 1 deletions
diff --git a/var/spack/repos/builtin/packages/p4est/package.py b/var/spack/repos/builtin/packages/p4est/package.py
index e14061d126..e0b3478edb 100644
--- a/var/spack/repos/builtin/packages/p4est/package.py
+++ b/var/spack/repos/builtin/packages/p4est/package.py
@@ -36,6 +36,8 @@ class P4est(AutotoolsPackage):
version('2.0', 'c522c5b69896aab39aa5a81399372a19a6b03fc6200d2d5d677d9a22fe31029a')
version('1.1', '37ba7f4410958cfb38a2140339dbf64f')
+ variant('openmp', default=False, description='Enable OpenMP')
+
# build dependencies
depends_on('automake', type='build')
depends_on('autoconf', type='build')
@@ -45,8 +47,20 @@ class P4est(AutotoolsPackage):
depends_on('mpi')
depends_on('zlib')
+ # from sc upstream, correct the default libraries
+ patch('https://github.com/cburstedde/libsc/commit/b506aab224b988fec210cc212469f2c4f58b2d04.patch',
+ sha256='e9418b1a9347a409be241cd185519b31950e42a7f55b6fb80ce53097657098ee',
+ working_dir='sc')
+ patch('https://github.com/cburstedde/libsc/commit/b45a51a7ef97883a3d4dcbd05cb2c77890a76f75.patch',
+ sha256='8fb829e34e3a1e28afdd6e56e0bdc1d377af569b7ccb9e9d8da0eeb5829ed27e',
+ working_dir='sc')
+
+ def autoreconf(self, spec, prefix):
+ bootstrap = Executable('./bootstrap')
+ bootstrap()
+
def configure_args(self):
- return [
+ args = [
'--enable-mpi',
'--enable-shared',
'--disable-vtk-binary',
@@ -58,3 +72,14 @@ class P4est(AutotoolsPackage):
'FC=%s' % self.spec['mpi'].mpifc,
'F77=%s' % self.spec['mpi'].mpif77
]
+
+ if '+openmp' in self.spec:
+ try:
+ args.append(
+ '--enable-openmp={0}'.format(self.compiler.openmp_flag))
+ except UnsupportedCompilerFlag:
+ args.append('--enable-openmp')
+ else:
+ args.append('--disable-openmp')
+
+ return args