summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/rocm-smi/package.py
blob: 0cc265c8497c07a4ef227d5da51c1c8e4aafa30a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# Copyright 2013-2024 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)


import os

from spack.package import *


class RocmSmi(MakefilePackage):
    """This tool exposes functionality for clock and temperature
    management of your ROCm enabled system

    Note: After ROCm 3.9, this project moved to
          https://github.com/RadeonOpenCompute/rocm_smi_lib/tree/master/python_smi_tools
          The spack package is called: rocm-smi-lib"""

    homepage = "https://github.com/RadeonOpenCompute/ROC-smi"
    url = "https://github.com/RadeonOpenCompute/ROC-smi/archive/rocm-4.1.0.tar.gz"

    maintainers("srekolam", "renjithravindrankannath")
    tags = ["rocm"]

    version(
        "4.1.0",
        sha256="5f9f551f93f673f4b508f47a7f24bce903288ffb08fa9e4c8e0956a4a57865c2",
        deprecated=True,
    )
    version(
        "4.0.0",
        sha256="bf8738ae81c0a02d83eb9437b93dc153fb63f659f3b04d454024e30678b43575",
        deprecated=True,
    )
    version(
        "3.10.0",
        sha256="b1c7e529e8fcc53fb6b40a4126651da0ab07bcb91faac99519ba9660412ea4ed",
        deprecated=True,
    )
    version(
        "3.9.0",
        sha256="af3cc6d5e2296f47b1873339faad2d27cf2f24725771bf34c7f644d20cc6ef3b",
        deprecated=True,
    )
    version(
        "3.8.0",
        sha256="248d9bddc3353c74defd57f203df0648278a4613f2af7fb838d92a4bc8de575d",
        deprecated=True,
    )
    version(
        "3.7.0",
        sha256="4e34b3b4e409bb89677882f47d9988d56bc2d9bb9893f0712c22a4b73789e06a",
        deprecated=True,
    )
    version(
        "3.5.0",
        sha256="4f46e947c415a4ac12b9f6989f15a42afe32551706b4f48476fba3abf92e8e7c",
        deprecated=True,
    )

    depends_on("python@3:", type="run")

    def install(self, spec, prefix):
        filter_file(
            "^#!/usr/bin/python3",
            "#!/usr/bin/env {0}".format(os.path.basename(self.spec["python"].command.path)),
            "rocm_smi.py",
        )
        mkdir(prefix.bin)
        copy("rocm_smi.py", prefix.bin)
        symlink("rocm_smi.py", prefix.bin.rocm_smi)