ADD New package revocap-refiner (#16499)

* ADD New package revocap-refiner
    """The University of Tokyo, CISS Project:
        Geometric processing, mesh processing, mesh generation"""

* Modify     homepage = "https://github.com/FrontISTR/REVOCAP_Refiner"
Modify    version('master', branch='master')
Modify    depends_on('swig', type='build')
Modify        install_tree('Refiner', prefix.include.refine)
Delete         mkdirp(prefix.include)
This commit is contained in:
h-denpo 2020-05-07 22:44:23 +09:00 committed by GitHub
parent 762e74e1e3
commit 4b65efa8ae
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -0,0 +1,57 @@
# Copyright 2013-2020 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 *
class RevocapRefiner(MakefilePackage):
"""The University of Tokyo, CISS Project:
Geometric processing, mesh processing, mesh generation"""
homepage = "https://github.com/FrontISTR/REVOCAP_Refiner"
git = "https://github.com/FrontISTR/REVOCAP_Refiner.git"
version('master', branch='master')
depends_on('ruby', type='build')
depends_on('mpi')
depends_on('doxygen', type='build')
depends_on('swig', type='build')
parallel = False
def edit(self, spec, prefix):
cflags = ['-O']
cxxflags = ['-O', self.compiler.pic_flag]
fflags = ['']
ldshare = ['']
libs = ['-lstdc++']
if spec.satisfies('%gcc'):
ldshare.append('g++ -shared -s')
m = FileFilter('MakefileConfig.in')
m.filter(r'CC\s=.*$', 'CC={0}'.format(spec['mpi'].mpicc))
m.filter(r'CFLAGS\s=.*$', 'CFLAGS={0}'.format(' '.join(cflags)))
m.filter(r'CXX\s*=.*$', 'CXX={0}'.format(spec['mpi'].mpicxx))
m.filter(r'CXXFLAGS\s*=.*$',
'CXXFLAGS={0}'.format(' '.join(cxxflags)))
m.filter(r'AR\s*=.*$', 'AR=ar')
m.filter(r'ARFLAGS\s*=.*$', 'ARFLAGS=rsv')
m.filter(r'LD\s*=.*$', 'LD={0}'.format(spack_fc))
m.filter(r'LDFLAGS\s*=.*$',
'LDFLAGS={0}'.format(' '.join(fflags)))
m.filter(r'LDSHARE\s*=.*$',
'LDSHARE={0}'.format(' '.join(ldshare)))
m.filter(r'LIBS\s*=.*$', 'LIBS={0}'.format(' '.join(libs)))
m.filter(r'LIBPATH\s*=.*$', 'LIBPATH= ')
m.filter(r'RM\s*=.*$', 'RM=rm -f')
m.filter(r'DOXYGEN\s*=.*$', 'DOXYGEN=doxygen')
m.filter(r'TAR\s*=.*$', 'TAR=tar')
m.filter(r'SWIG\s*=.*$', 'SWIG=swig')
def install(self, spec, prefix):
install_tree('bin', prefix.bin)
install_tree('lib', prefix.lib)
install_tree('Refiner', prefix.include.refine)