spack/var/spack/repos/builtin/packages/boxlib/package.py

60 lines
2.2 KiB
Python
Raw Normal View History

##############################################################################
# Copyright (c) 2013-2018, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# 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
##############################################################################
2015-05-28 08:39:17 +08:00
from spack import *
2016-08-10 16:50:00 +08:00
class Boxlib(CMakePackage):
2015-06-07 07:16:11 +08:00
"""BoxLib, a software framework for massively parallel
block-structured adaptive mesh refinement (AMR) codes."""
2015-05-28 08:39:17 +08:00
homepage = "https://ccse.lbl.gov/BoxLib/"
url = "https://github.com/BoxLib-Codes/BoxLib/archive/16.12.2.tar.gz"
2015-05-28 08:39:17 +08:00
version('16.12.2', 'a28d92a5ff3fbbdbbd0a776a59f18526')
2015-06-07 07:16:11 +08:00
depends_on('mpi')
Adding FASTMath uber package and missing FASTMath packages (#4120) * adding 0.5.1 and variant for uint8 bit stream word type * Revisions as per davydden * fixing style (flake8) issues * - switched to derive from MakefilePackage - fixed typo in variant check - Confirmed installs correctly with bswtuint8 variant * added build method; changed zfp_incdir to incdir * * Adding uber fastmath package to support 'spack install fastmath' * Adding dims variant boxlib to control compile-time spatial dimension count * Explicitly disabling many parts of moab to get lib to build. Don't need tools yet. * Add logic to spack/setup-env to not refer to $SYS_TYPE if its not defined. * adding mesquite package * * Added Chombo (still working on Fortran name mangling) * Made mesquite depend on mpi * Fixed use of boxlib's dims numerical variant * adding PUMI * flake8 compliance * adding phasta * fixing flake8 issues * undue $SYS_TYPE protection change * fixing install step for fastmath uber package; resolve issues requested by adamjstewart in PR * revisions as per adamjstewart * re-enabling trilinos and phasta dependencies * all changes requested modulu values= and assert statement * fixing cmake_args usage in pumi; fixing lib installs for chombo * first pass at numerical variant * fixing dims variant as per @adamjstewart * fixing func/var name collision * fixing means of disabling -Werror * fix name collision for cmake_args var/func * fixing chombo homepage/url; make FASTMath use chombo#3.2; remove extraneous comment about boxlib dim * remove dummy fastmath package; switch to @BarrySmith soln for install of dummy bundle * fix flake8 import os issue * remove extraneous comment * adding url for fastmath scidac site * final fixes as per @adamjstewart * adding 1 dims option for boxlib * switching make(all) to gmake(all)
2017-05-10 07:26:57 +08:00
variant('dims',
default='3',
values=('1', '2', '3'),
multi=False,
description='Number of spatial dimensions'
)
def cmake_args(self):
spec = self.spec
options = []
options.extend([
Adding FASTMath uber package and missing FASTMath packages (#4120) * adding 0.5.1 and variant for uint8 bit stream word type * Revisions as per davydden * fixing style (flake8) issues * - switched to derive from MakefilePackage - fixed typo in variant check - Confirmed installs correctly with bswtuint8 variant * added build method; changed zfp_incdir to incdir * * Adding uber fastmath package to support 'spack install fastmath' * Adding dims variant boxlib to control compile-time spatial dimension count * Explicitly disabling many parts of moab to get lib to build. Don't need tools yet. * Add logic to spack/setup-env to not refer to $SYS_TYPE if its not defined. * adding mesquite package * * Added Chombo (still working on Fortran name mangling) * Made mesquite depend on mpi * Fixed use of boxlib's dims numerical variant * adding PUMI * flake8 compliance * adding phasta * fixing flake8 issues * undue $SYS_TYPE protection change * fixing install step for fastmath uber package; resolve issues requested by adamjstewart in PR * revisions as per adamjstewart * re-enabling trilinos and phasta dependencies * all changes requested modulu values= and assert statement * fixing cmake_args usage in pumi; fixing lib installs for chombo * first pass at numerical variant * fixing dims variant as per @adamjstewart * fixing func/var name collision * fixing means of disabling -Werror * fix name collision for cmake_args var/func * fixing chombo homepage/url; make FASTMath use chombo#3.2; remove extraneous comment about boxlib dim * remove dummy fastmath package; switch to @BarrySmith soln for install of dummy bundle * fix flake8 import os issue * remove extraneous comment * adding url for fastmath scidac site * final fixes as per @adamjstewart * adding 1 dims option for boxlib * switching make(all) to gmake(all)
2017-05-10 07:26:57 +08:00
'-DBL_SPACEDIM=%d' % int(spec.variants['dims'].value),
'-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON',
'-DENABLE_FBASELIB=ON',
'-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
'-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
'-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc
])
return options