diff options
-rw-r--r-- | var/spack/repos/builtin/packages/sombrero/package.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/sombrero/package.py b/var/spack/repos/builtin/packages/sombrero/package.py new file mode 100644 index 0000000000..e688ec974d --- /dev/null +++ b/var/spack/repos/builtin/packages/sombrero/package.py @@ -0,0 +1,34 @@ +# Copyright 2013-2021 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 llnl.util.filesystem import join_path +from spack import * + + +class Sombrero(MakefilePackage): + "A next-generation conjugate gradient benchmark from computational particle physics" + + homepage = "https://github.com/sa2c/sombrero" + url = "https://github.com/sa2c/sombrero/archive/refs/tags/1.0.tar.gz" + + version('1.0', sha256='423a631c86f0e5f14dea186228871099ca0374dc07bf1bb24b6be17f79784682') + + depends_on('mpi') + + def edit(self, spec, prefix): + # Make the `sombrero.sh` driver relocatable + sombrero_sh = FileFilter(join_path(self.stage.source_path, 'sombrero.sh')) + sombrero_dir = join_path(prefix.bin, 'sombrero') + sombrero_sh.filter('sombrero/', '{0}/'.format(sombrero_dir)) + + def install(self, spec, prefix): + sombrero_dir = join_path(prefix.bin, 'sombrero') + mkdirp(sombrero_dir) + # Install the shell driver + install('sombrero.sh', prefix.bin) + # Install all executables + for i in range(1, 7): + install(join_path('sombrero', 'sombrero{0}'.format(i)), + sombrero_dir) |