spack/var/spack/repos/builtin/packages/spiral-package-simt/package.py
Patrick Broderick 57cd822fb7
FFTX: replace extends with variants (#39701)
The spiral-software package had a number of extensions, but does not
work unless they actually exist in the spiral software prefix (creating
a view is not sufficient). With the removal of "spack activate"
(different from "spack env activate"), a new approach is needed to
support optional components of `spiral-software` . This commit updates
the spiral-software package to copy the dependency installations into
its own prefix.

This commit also adds versions for `fftx` and `spiral-software`, as
well as an optional `spiral-software-jit` package.
2023-09-06 16:35:33 -04:00

32 lines
1.3 KiB
Python

# Copyright 2013-2023 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.package import *
class SpiralPackageSimt(Package):
"""This is the SPIRAL package for SIMT: SIMT, single instruction multiple
threads, is used to generate code for GPUs and multi-threading aplications."""
homepage = "https://spiralgen.com"
url = "https://github.com/spiral-software/spiral-package-simt/archive/refs/tags/1.1.0.tar.gz"
git = "https://github.com/spiral-software/spiral-package-simt.git"
maintainers("spiralgen")
# Although this package 'extends("spiral-software")' don't declare it as
# such. If this package is required spiral-software should be installed
# with the +simt variant active
version("develop", branch="develop")
version("main", branch="main")
version("1.1.0", sha256="4d6a5e586889b9e000968c99f3068ba86a12cc389665c6deadc4734117ef7a95")
version("1.0.0", sha256="888ca01aa8fd5df80d6ae1bd64eb1b1e70240b6a36bc3437eb48f5a4b59c2d07")
# SIMT package is an extension for Spiral (spec: spiral-software).
def install(self, spec, prefix):
spiral_pkgs = join_path(prefix, "namespaces", "packages", "simt")
install_tree(".", spiral_pkgs)