diff options
author | suzannepaterno <129112900+suzannepaterno@users.noreply.github.com> | 2024-10-01 10:12:02 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-01 16:12:02 +0200 |
commit | cbbdf38f4f6f242977a2d8a2439837ef540242c1 (patch) | |
tree | f0c9d39ef958eee67b3d5f3c25476b283ce1d7bd /var | |
parent | 44618e31c8a9d2fc193ac64af1aa859f0942917a (diff) | |
download | spack-cbbdf38f4f6f242977a2d8a2439837ef540242c1.tar.gz spack-cbbdf38f4f6f242977a2d8a2439837ef540242c1.tar.bz2 spack-cbbdf38f4f6f242977a2d8a2439837ef540242c1.tar.xz spack-cbbdf38f4f6f242977a2d8a2439837ef540242c1.zip |
totalview: add v2024.1-linux-arm64 -> v2024.2-x86-64 (#45490)
* Update package.py
Update to pull Totalview tar files from AWS instead of requiring the user to download ahead of time. Use new license type, RLM license. Only allow for installs of versions using the new license type. 2024.1 and 2024.2. User selects the platform with the version as it is down from the TotalView downloads website.
* Update package.py
Update to pass style test
* Update package.py
fixing syle
* Updating to pass style check
removing more spaces to pass style check
* final style fixes
fixing the last 2 style errors
* Typo
Typo correction to pass style check
* REmove new line
removing new line character
* Ran black to reformat
Ran black to clear errors
* Changing to use sha256
Updating to use sha256 checksums for all TotalView files.
Diffstat (limited to 'var')
-rw-r--r-- | var/spack/repos/builtin/packages/totalview/package.py | 214 |
1 files changed, 38 insertions, 176 deletions
diff --git a/var/spack/repos/builtin/packages/totalview/package.py b/var/spack/repos/builtin/packages/totalview/package.py index ea1c84b9e6..fa209ce916 100644 --- a/var/spack/repos/builtin/packages/totalview/package.py +++ b/var/spack/repos/builtin/packages/totalview/package.py @@ -3,184 +3,61 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -import os - from spack.package import * class Totalview(Package): """Totalview parallel debugger. - Source must be made available to Spack - externally, either by having the tarballs in the current working directory - or having the tarballs in a Spack mirror. - - The documentation tarball will - be used as the primary source and the architecture appropriate tarball will - be downloaded as a resource.""" + Select the version associated with your machine architecture' + '.""" homepage = "https://totalview.io" - maintainers("dshrader", "petertea") - manual_download = True + maintainers("dshrader", "petertea", "suzannepaterno", "elliebinkley") license_required = True license_comment = "#" - license_files = ["licenses/license.dat", "licenses/tv_license_file"] - license_vars = ["LM_LICENSE_FILE", "TV_LICENSE_FILE"] + license_files = ["tv_license/license.lic"] + license_vars = ["RLM_LICENSE"] # As the install of Totalview is via multiple tarballs, the base install # will be the documentation. The architecture-specific tarballs are added # as resources dependent on the specific architecture used. - version("2022.3.6", sha256="3f60714b8c885c562433e30c8bcde7e6383b3517664f37f25da7bf7f9110f308") - version("2022.2.13", sha256="4bf625c760454e532fe66666f2f5479d38f36f569f104bbe3341c0f48cbc8766") - version("2022.1.11", sha256="0042afdbb024b99350c395decf2606b6913479ab0117bfd7bd4252d91843ef69") - version("2021.4.10", sha256="c476288ebe1964e0803c7316975c71a957e52f45187b135bc1dc3b65491bb61d") - version("2021.3.9", sha256="fd947ce755e76a6a06747755aa61bedd0c1428999a46e920db9498ac930ddc29") - - # Distributed with Totalview - variant("memoryscape", default=True, description="Install memoryscape") - - # Because the actual source tarball is architecture dependent, the main - # download is the documentation tarball and the source is downloaded as a - # resource once the target architecture is known. - - # Version 2022.3.6 - resource( - name="x86-64", - url="file://totalview.2022.3.6-linux-x86-64.tar", - destination=".", - sha256="a2639c52bfd4c7484b728d6a0158239074ff0e0c52208a5452b12b878016a519", - when="@2022.3.6 platform=linux target=x86_64:", - ) - resource( - name="ppcle", - url="file://totalview_2022.3.6_linux_powerle.tar", - destination=".", - sha256="93771a6ce99cff6d11e8172ff57da16aed76ab8ad1804e1d18186fba6de945f7", - when="@2022.3.6 platform=linux target=ppc64le:", - ) - resource( - name="aarch64", - url="file://totalview_2022.3.6_linux_arm64.tar", - destination=".", - sha256="5c18a9a187196980f9bd0fbbb77bb8e5c1d51442188ca44d58a9c49329c98783", - when="@2022.3.6 platform=linux target=aarch64:", - ) - resource( - name="darwinx86", - url="file://totalview.2022.3.6-darwin-x86.tar", - destination=".", - sha256="f558877f7debbeeef200f587edf4cbba41b6bc8db5a0166757445cc652de8a33", - when="@2022.3.6 platform=darwin target=x86_64:", - ) - # Version 2022.2.13 - resource( - name="x86-64", - url="file://totalview.2022.2.13-linux-x86-64.tar", - destination=".", - sha256="aebd11b837ce18b8200859ea762caa56e2cea346daa114f2841aa0f05a422309", - when="@2022.2.13 platform=linux target=x86_64:", - ) - resource( - name="ppcle", - url="file://totalview_2022.2.13_linux_powerle.tar", - destination=".", - sha256="0136be160576b51b03e6409b06d6cc22b5535380894e0fdc6569e2238e12120e", - when="@2022.2.13 platform=linux target=ppc64le:", - ) - resource( - name="aarch64", - url="file://totalview_2022.2.13_linux_arm64.tar", - destination=".", - sha256="d82154222e1ae5fce0bb7abd19b6782494ecb1f76a9a5f38a19e9dcd40bd42aa", - when="@2022.2.13 platform=linux target=aarch64:", - ) - resource( - name="darwinx86", - url="file://totalview.2022.2.13-darwin-x86.tar", - destination=".", - sha256="abcad08e80967959f556cb9f2a7d6dfa7f38e33213fe56f7f3198ff94cd9f3fe", - when="@2022.2.13 platform=darwin target=x86_64:", + version( + "2024.2-x86-64", + sha256="b6d9cfd804ff1f6641fbd92f9730b34f62062ead9b1324eaf44f34ea78c69ef1", + url="https://dslwuu69twiif.cloudfront.net/totalview/2024.2/totalview_2024.2.11_linux_x86-64.tar", ) - # Version 2022.1.11 - resource( - name="x86-64", - url="file://totalview.2022.1.11-linux-x86-64.tar", - destination=".", - sha256="3ec9a7d702572dbbafa41726a036c94b549f9a5911ed6fd6aa55f7b377554bac", - when="@2022.1.11 platform=linux target=x86_64:", - ) - resource( - name="ppcle", - url="file://totalview_2022.1.11_linux_powerle.tar", - destination=".", - sha256="4c49546508f7e0b1a91bea3ea8d71f6f9dc76989c69a4fd78012a4ae8fa44aa6", - when="@2022.1.11 platform=linux target=ppc64le:", - ) - resource( - name="aarch64", - url="file://totalview_2022.1.11_linux_arm64.tar", - destination=".", - sha256="89407c043679d161b6e204fc4ad5686b7ac18742081a045f19388c7294e5ddbe", - when="@2022.1.11 platform=linux target=aarch64:", - ) - resource( - name="darwinx86", - url="file://totalview.2022.1.11-darwin-x86.tar", - destination=".", - sha256="3a99eda8b7be225e0b7596b3c52032809378c86ea736c88e915c0a0e8efedbe4", - when="@2022.1.11 platform=darwin target=x86_64:", + version( + "2024.2-powerle", + sha256="2bc1ef377e95f6f09d1f221a1dcc2f79415bad9e1e8403c647f38e2d383524d6", + url="https://dslwuu69twiif.cloudfront.net/totalview/2024.2/totalview_2024.2.11_linux_powerle.tar", ) - # Version 2021.4.10 - resource( - name="x86-64", - url="file://totalview.2021.4.10-linux-x86-64.tar", - destination=".", - sha256="7e5509b2cfb219100b0032304bdad7d422657c0736c386ba64bdb1bf11d10a1d", - when="@2021.4.10 platform=linux target=x86_64:", - ) - resource( - name="ppcle", - url="file://totalview_2021.4.10_linux_powerle.tar", - destination=".", - sha256="79e812d1cd600172c5ea29c4aa6fb660d293300683419af36dd0e52cd7e15d56", - when="@2021.4.10 platform=linux target=ppc64le:", - ) - resource( - name="aarch64", - url="file://totalview_2021.4.10_linux_arm64.tar", - destination=".", - sha256="46faaae1f33b4f4a20de345611092fbc65cd5759511c1fcf86ca71a0811c76fd", - when="@2021.4.10 platform=linux target=aarch64:", - ) - resource( - name="darwinx86", - url="file://totalview.2021.4.10-darwin-x86.tar", - destination=".", - sha256="adbf95f86763e3cc5ec51fd504f3172bdcbb42a7f1f4e73b17cacca002729ad2", - when="@2021.4.10 platform=darwin target=x86_64:", + version( + "2024.2-linux-arm64", + sha256="63f737e61c2fb7f4816bcfc1d00e9e7c39817455531abdd09500f953be4ac75d", + url="https://dslwuu69twiif.cloudfront.net/totalview/2024.2/totalview_2024.2.11_linux_arm64.tar", ) - # Version 2021.3 - resource( - name="x86_64", - url="file://totalview_2021.3.9_linux_x86-64.tar", - destination=".", - sha256="6315ca855e1bee14678c640c3c9c8207b4f66c91714dcedd4aed592354112b48", - when="@2021.3.9 platform=linux target=x86_64:", + version( + "2024.1-x86-64", + sha256="964b73e70cb9046ce320bb0f95891b05c96a59117e5243fdc269855831c7059b", + url="https://dslwuu69twiif.cloudfront.net/totalview/2024.1/totalview_2024.1.21_linux_x86-64.tar", ) - resource( - name="ppcle", - url="file://totalview_2021.3.9_linux_powerle.tar", - destination=".", - sha256="a7657b61895805024f5d4e7550796a485f98ce297a585583cdd20fe0b9b30bbb", - when="@2021.3.9 platform=linux target=ppc64le:", + + version( + "2024.1-powerle", + sha256="c4dd8a3099d4f6ed23a6646b1d091129e0bf0b10c7a0d7ec73bd767818bab39b", + url="https://dslwuu69twiif.cloudfront.net/totalview/2024.1/totalview_2024.1.21_linux_powerle.tar", ) - def url_for_version(self, version): - return "file://{0}/totalview.{1}-doc.tar".format(os.getcwd(), version) + version( + "2024.1-linux-arm64", + sha256="769527478dceb30855413970621f09a9dc54ef863ddaf75bb5a40142a54af346", + url="https://dslwuu69twiif.cloudfront.net/totalview/2024.1/totalview_2024.1.21_linux_arm64.tar", + ) def setup_run_environment(self, env): env.prepend_path( @@ -200,38 +77,23 @@ class Totalview(Package): # Platform specification. if spec.target.family == "x86_64" and spec.platform == "linux": arg_list.extend(["-platform", "linux-x86-64"]) - elif spec.target.family == "x86_64" and spec.platform == "darwin": - arg_list.extend(["-platform", "darwin-x86"]) - elif spec.target.family == "x86": - arg_list.extend(["-platform", "linux-x86"]) elif spec.target.family == "aarch64": arg_list.extend(["-platform", "linux-arm64"]) elif spec.target.family == "ppc64le": arg_list.extend(["-platform", "linux-powerle"]) - elif spec.target.family == "ppc64": - arg_list.extend(["-platform", "linux-power"]) else: raise InstallError("Architecture {0} not permitted!".format(spec.target.family)) - # Docs are the "base" install used with every architecture. install_cmd.exe.extend(arg_list) - install_cmd("-install", "doc-pdf") # Run install script for totalview (which automatically installs memoryscape) - with working_dir("./totalview.{0}".format(self.version)): - install_cmd = which("./Install") - arg_list.extend(["-install", "totalview"]) - # TotalView automatically installs Memoryscape, so no need to add - - install_cmd.exe.extend(arg_list) - install_cmd() + install_cmd = which("./Install") + arg_list.extend(["-install", "totalview"]) + install_cmd.exe.extend(arg_list) + install_cmd() - # If a license file was created, link to FNE_license or FNP_license - symlink( - join_path(self.prefix, "licenses", "tv_license_file"), - join_path(self.prefix, "toolworks", "FNE_license", "tv_license_file"), - ) + # If a license file was created symlink( - join_path(self.prefix, "licenses", "license.dat"), - join_path(self.prefix, "toolworks", "FNP_license", "license.dat"), + join_path(self.prefix, "tv_license", "license.lic"), + join_path(self.prefix, "toolworks", "tv_license", "license.lic"), ) |