new package: mutationpp (#11705)
* new package: mutationpp * Update package.py * flake8: correct package.py for flake8-python-style * Update package.py * modifications as requested by reviewer for #11705
This commit is contained in:
parent
537fa81c5d
commit
ef55319a9c
50
var/spack/repos/builtin/packages/mutationpp/package.py
Normal file
50
var/spack/repos/builtin/packages/mutationpp/package.py
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
|
||||||
|
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||||
|
|
||||||
|
from spack import *
|
||||||
|
import os
|
||||||
|
|
||||||
|
|
||||||
|
class Mutationpp(CMakePackage):
|
||||||
|
"""Mutation++ is an open-source library originally developed
|
||||||
|
at the von Karman Institute for Fluid Dynamics, designed to
|
||||||
|
couple with conventional computational fluid dynamics codes
|
||||||
|
to provide thermodynamic, transport, chemistry, and energy
|
||||||
|
transfer properties associated with subsonic to hypersonic flows."""
|
||||||
|
|
||||||
|
homepage = "https://github.com/mutationpp/Mutationpp"
|
||||||
|
url = "https://github.com/mutationpp/Mutationpp/archive/v0.3.1.tar.gz"
|
||||||
|
|
||||||
|
version('0.3.1', 'a6da2816e145ac9fcfbd8920595b7f65ce7bc8df0bec572b32647720758cbe69')
|
||||||
|
|
||||||
|
variant('fortran', default=True, description='Enable Fortran interface')
|
||||||
|
variant('data', default=True, description='Install default model data')
|
||||||
|
variant('examples', default=True, description='Install examples')
|
||||||
|
|
||||||
|
def cmake_args(self):
|
||||||
|
args = []
|
||||||
|
if '+fortran' in self.spec:
|
||||||
|
args.append('-DBUILD_FORTRAN_WRAPPER=ON')
|
||||||
|
return args
|
||||||
|
|
||||||
|
@run_after('install')
|
||||||
|
def install_data(self):
|
||||||
|
if '+data' in self.spec and os.path.isdir('data'):
|
||||||
|
install_tree('data', self.prefix.data)
|
||||||
|
|
||||||
|
@run_after('install')
|
||||||
|
def install_examples(self):
|
||||||
|
if '+examples' in self.spec and os.path.isdir('examples'):
|
||||||
|
install_tree('examples', self.prefix.examples)
|
||||||
|
|
||||||
|
def setup_environment(self, spack_env, run_env):
|
||||||
|
run_env.set('MPP_DIRECTORY', self.prefix)
|
||||||
|
if os.path.isdir(self.prefix.data):
|
||||||
|
run_env.set('MPP_DATA_DIRECTORY', self.prefix.data)
|
||||||
|
|
||||||
|
def setup_dependent_environment(self, spack_env, run_env):
|
||||||
|
spack_env.set('MPP_DIRECTORY', self.prefix)
|
||||||
|
if os.path.isdir(self.prefix.data):
|
||||||
|
spack_env.set('MPP_DATA_DIRECTORY', self.prefix.data)
|
Loading…
Reference in New Issue
Block a user