diff options
Diffstat (limited to 'var/spack/repos/builtin/packages/p4est/package.py')
-rw-r--r-- | var/spack/repos/builtin/packages/p4est/package.py | 54 |
1 files changed, 30 insertions, 24 deletions
diff --git a/var/spack/repos/builtin/packages/p4est/package.py b/var/spack/repos/builtin/packages/p4est/package.py index 56c1ffbc93..ea26ee54f9 100644 --- a/var/spack/repos/builtin/packages/p4est/package.py +++ b/var/spack/repos/builtin/packages/p4est/package.py @@ -1,27 +1,8 @@ -############################################################################## -# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC. -# Produced at the Lawrence Livermore National Laboratory. +# Copyright 2013-2018 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. # -# This file is part of Spack. -# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved. -# LLNL-CODE-647188 -# -# For details, see https://github.com/spack/spack -# Please also see the NOTICE and LICENSE files for our notice and the LGPL. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License (as -# published by the Free Software Foundation) version 2.1, February 1999. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and -# conditions of the GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -############################################################################## +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + from spack import * @@ -36,6 +17,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 +28,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 +53,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 |