From dfb107ecf8195171acb0ac200569d8aac7cd8419 Mon Sep 17 00:00:00 2001 From: "Oliveira, Daniel" Date: Thu, 7 May 2026 21:22:15 -0500 Subject: [PATCH] build: Fix tar.gz name format Matches RVS version and related S3 folders Signed-off-by: Oliveira, Daniel --- CMakeLists.txt | 3 + build_packages_local.sh | 157 +++++++++++++++++++++++++++------------- cmake/build_utils.cmake | 40 ++++++---- 3 files changed, 135 insertions(+), 65 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6c1fa4a..58492e8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -136,6 +136,9 @@ else() endif() set(AMD_PROJECT_VERSION_FULL "${AMD_PROJECT_VERSION_MAJOR}.${AMD_PROJECT_VERSION_MINOR}.${AMD_PROJECT_VERSION_PATCH}") +# ROCm major version for package naming and install paths (per RFC0012) +set(ROCM_MAJOR_VERSION "0" CACHE STRING "ROCm major version (e.g. 7 for ROCm 7.x)") + # project(${AMD_TARGET_NAME} VERSION ${AMD_TARGET_VERSION_TEXT} diff --git a/build_packages_local.sh b/build_packages_local.sh index d003d33..65cb194 100755 --- a/build_packages_local.sh +++ b/build_packages_local.sh @@ -7,7 +7,7 @@ set -e # Exit on error # Configuration -##GPU_FAMILY="${GPU_FAMILY:-gfx110X-all}" +ROCM_VERSION="${ROCM_VERSION:-}" # empty => auto-fetch latest GPU_FAMILY="${GPU_FAMILY:-gfx94X-dcgpu}" BUILD_TYPE="${BUILD_TYPE:-Release}" @@ -15,6 +15,16 @@ REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" BUILD_DIR="${REPO_ROOT}/build" ROCM_INSTALL_DIR="$REPO_ROOT/rocm-sdk" ROCM_BANDWIDTH_TEST_ROOT="${REPO_ROOT}" +ROCM_BANDWIDTH_TEST_PKG_PREFIX="rocm-bandwidth-test" + +# SDK Source Configuration +# Default: TheRock public S3 nightly bucket (works from any network). +# Override via environment variables or GitHub Actions repository variables (vars.*). +# +# If your SDK server has no index page for auto-detection, set ROCM_SDK_INDEX_URL="" +# and provide ROCM_VERSION explicitly. +ROCM_SDK_BASE_URL="${ROCM_SDK_BASE_URL:-https://therock-nightly-tarball.s3.us-east-2.amazonaws.com}" +ROCM_SDK_INDEX_URL="${ROCM_SDK_INDEX_URL:-https://therock-nightly-tarball.s3.amazonaws.com/index.html}" # Colors for output @@ -44,13 +54,13 @@ print_error() { # Sets the global ROCM_VERSION variable directly fetch_latest_rocm_version() { local gpu_family="$1" - local index_url="https://therock-nightly-tarball.s3.amazonaws.com/index.html" - print_info "Fetching latest ROCm version for $gpu_family from TheRock..." + print_info "Fetching latest ROCm version for $gpu_family..." + print_info "Index URL: $ROCM_SDK_INDEX_URL" # Download index page and parse for latest tarball matching GPU family # Pattern: therock-dist-linux-${GPU_FAMILY}-${ROCM_VERSION}.tar.gz - local latest_version=$(wget -qO- "$index_url" 2>/dev/null | \ + local latest_version=$(wget -qO- "$ROCM_SDK_INDEX_URL" 2>/dev/null | \ grep -oP "therock-dist-linux-${gpu_family}-\K[^<\"]+(?=\.tar\.gz)" | \ sort -V | tail -1) @@ -265,15 +275,29 @@ check_and_install_dependencies # Determine ROCm version: use environment variable or fetch latest (wget is now available) if [ -n "$ROCM_VERSION" ]; then print_info "Using specified ROCm version: $ROCM_VERSION" -else - print_info "No ROCm version specified, fetching latest..." +elif [ -n "$ROCM_SDK_INDEX_URL" ]; then + # Auto-detection only works when an index URL is available (e.g. S3 bucket) + print_info "No ROCm version specified, fetching latest from index..." fetch_latest_rocm_version "$GPU_FAMILY" - # Validate that ROCM_VERSION was properly set if [ -z "$ROCM_VERSION" ]; then print_error "Failed to determine ROCm version" exit 1 fi +else + print_error "ROCM_VERSION is required" + print_info "The configured SDK server does not provide an index page for auto-detection." + print_info "Set it via environment variable, e.g.:" + echo "" + echo " export ROCM_VERSION=\"7.11.0a20260121\"" + echo " ./build_packages_local.sh" + echo "" + print_info "Or in GitHub Actions workflow:" + echo "" + echo " env:" + echo " ROCM_VERSION: \"7.11.0a20260121\"" + echo "" + exit 1 fi # Print configuration @@ -349,10 +373,10 @@ if [ -z "$HIP_DEVICE_LIB_PATH" ]; then fi # Export all environment variables -export PATH="$ROCM_PATH/bin:$PATH" -export LD_LIBRARY_PATH="$ROCM_PATH/lib:$LD_LIBRARY_PATH" -export CMAKE_PREFIX_PATH="$ROCM_PATH:$CMAKE_PREFIX_PATH" -export HIP_DEVICE_LIB_PATH="$HIP_DEVICE_LIB_PATH" +export PATH="${ROCM_PATH}/bin:${PATH}" +export LD_LIBRARY_PATH="${ROCM_PATH}/lib:${LD_LIBRARY_PATH:-}" +export CMAKE_PREFIX_PATH="${ROCM_PATH}:${CMAKE_PREFIX_PATH:-}" +export HIP_DEVICE_LIB_PATH="${HIP_DEVICE_LIB_PATH}" # Extract major.minor version from ROCM_VERSION for ROCM_LIBPATCH_VERSION # Convert to xxyy format with zero padding @@ -369,58 +393,81 @@ ROCM_MINOR=$(echo "$ROCM_VERSION_MAJOR_MINOR" | cut -d'.' -f2) ROCM_LIBPATCH_VERSION=$(printf "%02d%02d" "$ROCM_MAJOR" "$ROCM_MINOR") export ROCM_LIBPATCH_VERSION -print_success "Set ROCM_LIBPATCH_VERSION=$ROCM_LIBPATCH_VERSION (from $ROCM_VERSION_MAJOR_MINOR)" - -# Set CPACK package release based on branch type -# - Non-release branches (not starting with "rel"): use branch.commit format -# - Release branches (starting with "rel"): use GitHub run number -GIT_BRANCH=$(git rev-parse --abbrev-ref HEAD 2>/dev/null || echo "unknown") -GIT_COMMIT_SHORT=$(git rev-parse --short HEAD 2>/dev/null || echo "0000000") +export ROCM_MAJOR +print_success "Set ROCM_LIBPATCH_VERSION=$ROCM_LIBPATCH_VERSION, ROCM_MAJOR=$ROCM_MAJOR (from $ROCM_VERSION_MAJOR_MINOR)" + +# Set CPACK package release based on event/branch type +# - Base (schedule, push, workflow_dispatch, local): r.yyyymmdd +# (ROCM_LIBPATCH_VERSION is major+minor as xxyy, e.g. 0711 for ROCm 7.11) +# - pull_request: same base + .branch.commit (source branch from GITHUB_HEAD_REF) +# - Release branches (starting with "rel"): GITHUB run number +# Prefer GITHUB_REF_NAME / GITHUB_HEAD_REF / GITHUB_SHA in Actions; fall back to git locally. +RELEASE_DATE="$(date +%Y%m%d)" +BASE_PACKAGE_RELEASE="r${ROCM_LIBPATCH_VERSION}.${RELEASE_DATE}" + +if [ "$GITHUB_EVENT_NAME" = "pull_request" ] && [ -n "${GITHUB_HEAD_REF:-}" ]; then + GIT_BRANCH="${GITHUB_HEAD_REF}" +else + GIT_BRANCH="${GITHUB_REF_NAME:-$(git rev-parse --abbrev-ref HEAD 2>/dev/null || echo "unknown")}" +fi +if [ -n "$GITHUB_SHA" ]; then + GIT_COMMIT_SHORT="${GITHUB_SHA:0:7}" +else + GIT_COMMIT_SHORT=$(git rev-parse --short HEAD 2>/dev/null || echo "0000000") +fi +SANITIZED_BRANCH=$(echo "$GIT_BRANCH" | sed 's/[^A-Za-z0-9.+~]/./g') -if [[ "$GIT_BRANCH" =~ ^rel ]]; then - # Release branch: use GitHub run number (fallback to 1 for local builds) +if [ "${GITHUB_EVENT_NAME}" != "pull_request" ] && [[ "$GIT_BRANCH" =~ ^rel ]]; then GITHUB_RUN_NUMBER="${GITHUB_RUN_NUMBER:-1}" PACKAGE_RELEASE="$GITHUB_RUN_NUMBER" - - export CPACK_DEBIAN_PACKAGE_RELEASE="$PACKAGE_RELEASE" - export CPACK_RPM_PACKAGE_RELEASE="$PACKAGE_RELEASE" - print_success "Set CPACK package release: $PACKAGE_RELEASE (release branch: $GIT_BRANCH, run: $GITHUB_RUN_NUMBER)" +elif [ "$GITHUB_EVENT_NAME" = "pull_request" ]; then + PACKAGE_RELEASE="${BASE_PACKAGE_RELEASE}.${SANITIZED_BRANCH}.${GIT_COMMIT_SHORT}" + print_success "Set CPACK package release: $PACKAGE_RELEASE (PR: $BASE_PACKAGE_RELEASE + $GIT_BRANCH + $GIT_COMMIT_SHORT)" else - # Development branch: use branch name and commit - # Sanitize branch name: replace / and other special chars with - - SANITIZED_BRANCH=$(echo "$GIT_BRANCH" | sed 's/[^a-zA-Z0-9._-]/-/g') - PACKAGE_RELEASE="${SANITIZED_BRANCH}.${GIT_COMMIT_SHORT}" - - export CPACK_DEBIAN_PACKAGE_RELEASE="$PACKAGE_RELEASE" - export CPACK_RPM_PACKAGE_RELEASE="$PACKAGE_RELEASE" - - print_success "Set CPACK package release: $PACKAGE_RELEASE (dev branch: $GIT_BRANCH, commit: $GIT_COMMIT_SHORT)" + PACKAGE_RELEASE="$BASE_PACKAGE_RELEASE" + print_success "Set CPACK package release: $PACKAGE_RELEASE (r.date: ${BASE_PACKAGE_RELEASE}, event: ${GITHUB_EVENT_NAME:-local})" fi -# TODO: Currently hipcc and cmake3 are only set for AlmaLinux (manylinux_2_28) -# Ubuntu works fine without these settings. Need to verify later if these -# should be applied universally for all OS or kept OS-specific. +export CPACK_DEBIAN_PACKAGE_RELEASE="$PACKAGE_RELEASE" +export CPACK_RPM_PACKAGE_RELEASE="$PACKAGE_RELEASE" +if [[ "$OS" =~ ^(centos|rhel|almalinux|rocky)$ ]]; then + # Enable the installed gcc-toolset/devtoolset so hipcc (clang) finds C++20 headers like + # Discover the toolset path dynamically via rpm rather than hardcoding /opt/rh/ + + GCC_TOOLSET_ENABLED="" + for pkg in gcc-toolset-14 gcc-toolset-13 gcc-toolset-12 gcc-toolset-11 devtoolset-11; do + ENABLE_SCRIPT=$(rpm -ql ${pkg}-runtime 2>/dev/null | grep '/enable$' | head -1) + if [ -n "$ENABLE_SCRIPT" ] && [ -f "$ENABLE_SCRIPT" ]; then + TOOLSET_ROOT=$(dirname "$ENABLE_SCRIPT") + source "$ENABLE_SCRIPT" + export GCC_TOOLCHAIN="${TOOLSET_ROOT}/root/usr" + GCC_TOOLSET_ENABLED="$pkg" + print_success "Enabled ${pkg} from ${TOOLSET_ROOT} (GCC $(gcc -dumpversion))" + break + fi + done + if [ -z "$GCC_TOOLSET_ENABLED" ]; then + print_warning "No gcc-toolset (11-14) or devtoolset-11 found - C++20 headers may be missing" + fi -# AlmaLinux-specific settings for manylinux_2_28 -if [[ "$OS" == "almalinux" ]]; then - # Set C++ compiler to hipcc from ROCm for AlmaLinux if [ -x "$ROCM_PATH/bin/hipcc" ]; then export CMAKE_CXX_COMPILER="$ROCM_PATH/bin/hipcc" - print_success "Set CMAKE_CXX_COMPILER to hipcc (AlmaLinux)" + print_success "Set CMAKE_CXX_COMPILER to hipcc (CentOS/RHEL/AlmaLinux/Rocky)" else print_warning "hipcc not found at $ROCM_PATH/bin/hipcc - using system default compiler" fi - # Use cmake3 for AlmaLinux + # Use cmake3 for RHEL-based distros export CMAKE_COMMAND="cmake3" - print_info "Using cmake3 (AlmaLinux/Manylinux)" + print_info "Using cmake3 (CentOS/RHEL/AlmaLinux/Rocky)" else - # Ubuntu: use defaults (system compiler and cmake) + # Ubuntu and others: use defaults (system compiler and cmake) export CMAKE_COMMAND="cmake" - print_info "Using cmake (Ubuntu)" + print_info "Using cmake (Ubuntu/other)" fi +## Print environment variables print_info "Environment variables set:" echo " ROCM_PATH=$ROCM_PATH" echo " PATH includes: $ROCM_PATH/bin" @@ -436,8 +483,12 @@ fi if [ -n "$CMAKE_CXX_COMPILER" ]; then echo " CMAKE_CXX_COMPILER=$CMAKE_CXX_COMPILER" fi +if [ -n "$GCC_TOOLCHAIN" ]; then + echo " GCC_TOOLCHAIN=$GCC_TOOLCHAIN" +fi echo " CMAKE_COMMAND=$CMAKE_COMMAND" + # Verify ROCm installation print_info "Verifying ROCm installation..." if [ -x "$ROCM_PATH/bin/hipconfig" ]; then @@ -480,7 +531,9 @@ CMAKE_ARGS=( ##-S "$REPO_ROOT" -DCMAKE_BUILD_TYPE="$BUILD_TYPE" -DROCM_PATH="$ROCM_PATH" + -DROCM_MAJOR_VERSION="$ROCM_MAJOR" -DHIP_PLATFORM=amd + -DCPACK_PACKAGE_NAME="amdrocm${ROCM_MAJOR}-rbt" -DCMAKE_INSTALL_PREFIX="${INSTALL_PREFIX}" -DCPACK_PACKAGING_INSTALL_PREFIX="${INSTALL_PREFIX}" -DCMAKE_SKIP_RPATH=FALSE @@ -500,6 +553,12 @@ if [[ -n "${CMAKE_CXX_COMPILER_OVERRIDE}" ]]; then CMAKE_ARGS+=(-DCMAKE_CXX_COMPILER="${CMAKE_CXX_COMPILER_OVERRIDE}") fi +# Point hipcc at the GCC toolchain for C++20 standard library headers +#if [ -n "$GCC_TOOLCHAIN" ]; then +# CMAKE_ARGS+=(-DCMAKE_CXX_FLAGS="--gcc-toolchain=$GCC_TOOLCHAIN") +# print_success "Set --gcc-toolchain=$GCC_TOOLCHAIN for hipcc" +#fi + "${CMAKE_BIN}" "${CMAKE_ARGS[@]}" print_info "CMake configured" @@ -530,7 +589,7 @@ else fi cd - > /dev/null -ls -lh "${BUILD_DIR}"/amdrocm*-rocm-bandwidth-test* 2>/dev/null || +ls -lh "${BUILD_DIR}"/amdrocm*-${ROCM_BANDWIDTH_TEST_PKG_PREFIX}* 2>/dev/null || ls -lh "${BUILD_DIR}"/*.deb "${BUILD_DIR}"/*.rpm "${BUILD_DIR}"/*.tar.gz 2>/dev/null || true echo "" @@ -541,7 +600,7 @@ echo "========================================================================== print_info "Generated packages are in: $BUILD_DIR" echo "" # List only package types that were actually generated (DEB on Ubuntu, RPM on CentOS/RHEL, TGZ on all) -PKGS=$(find "$BUILD_DIR" -maxdepth 1 -name 'rocm-bandwidth-test*' \( -name '*.deb' -o -name '*.rpm' -o -name '*.tar.gz' \) 2>/dev/null) +PKGS=$(find "$BUILD_DIR" -maxdepth 1 -name '${ROCM_BANDWIDTH_TEST_PKG_PREFIX}*' \( -name '*.deb' -o -name '*.rpm' -o -name '*.tar.gz' \) 2>/dev/null) if [ -n "$PKGS" ]; then echo "$PKGS" | xargs ls -lh else @@ -555,13 +614,13 @@ echo " Installation Instructions" echo "================================================================================" echo "" echo "Ubuntu/Debian (DEB):" -echo " sudo dpkg -i $BUILD_DIR/rocm-bandwidth-test_*.deb" +echo " sudo dpkg -i $BUILD_DIR/$ROCM_BANDWIDTH_TEST_PKG_PREFIX_*.deb" echo "" echo "CentOS/RHEL (RPM):" -echo " sudo rpm -i --replacefiles --nodeps $BUILD_DIR/rocm-bandwidth-test-*.rpm" +echo " sudo rpm -i --replacefiles --nodeps $BUILD_DIR/$ROCM_BANDWIDTH_TEST_PKG_PREFIX-*.rpm" echo "" echo "Any Linux (TGZ - Relocatable):" -echo " sudo tar -xzf $BUILD_DIR/rocm-bandwidth-test-*.tar.gz -C /" +echo " sudo tar -xzf $BUILD_DIR/$ROCM_BANDWIDTH_TEST_PKG_PREFIX-*.tar.gz -C /" echo " export PATH=/opt/rocm/rbt/bin:\$PATH" echo " export LD_LIBRARY_PATH=/opt/rocm/rbt/lib:\$LD_LIBRARY_PATH" echo "" diff --git a/cmake/build_utils.cmake b/cmake/build_utils.cmake index 27d89ee..a79d37e 100644 --- a/cmake/build_utils.cmake +++ b/cmake/build_utils.cmake @@ -1427,6 +1427,7 @@ macro(setup_distribution_package) endif() string(REPLACE "_" "-" AMD_TARGET_BUNDLE_BASE_NAME "${AMD_TARGET_BUNDLE_BASE_NAME}") + set(AMD_TARGET_PKG_SHORT_NAME "rbt") set(AMD_TARGET_INSTALL_STAGING "/var/tmp/${AMD_TARGET_NAME}/_staging") set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.md") set(CPACK_PACKAGE_NAME "amdrocm${ROCM_MAJOR_VERSION}-${AMD_TARGET_BUNDLE_BASE_NAME}") @@ -1435,13 +1436,8 @@ macro(setup_distribution_package) string(TIMESTAMP CURRENT_BUILD_YEAR "%Y") set(AMD_PROJECT_COPYRIGHT_ORGANIZATION "Advanced Micro Devices, Inc. All rights reserved.") set(AMD_PROJECT_COPYRIGHT_NOTE "Copyright (c) ${CURRENT_BUILD_YEAR} ${AMD_PROJECT_COPYRIGHT_ORGANIZATION}") - set(CPACK_PACKAGE_VENDOR ${AMD_PROJECT_AUTHOR_ORGANIZATION}) - set(CPACK_PACKAGE_VERSION_MAJOR ${AMD_PROJECT_VERSION_MAJOR}) - set(CPACK_PACKAGE_VERSION_MINOR ${AMD_PROJECT_VERSION_MINOR}) - set(CPACK_PACKAGE_VERSION_PATCH ${AMD_PROJECT_VERSION_PATCH}) set(CPACK_PACKAGE_CONTACT ${AMD_PROJECT_AUTHOR_MAINTAINER}) - set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") # Debian package specific variables set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${AMD_PROJECT_GITHUB_REPO}) @@ -1478,10 +1474,6 @@ macro(setup_distribution_package) set(ROCM_MAJOR_VERSION "7") endif() - if(DEFINED ENV{CPACK_RPM_PACKAGE_RELEASE}) - set(CPACK_RPM_PACKAGE_RELEASE "$ENV{CPACK_RPM_PACKAGE_RELEASE}") - endif() - # Use the actual install prefix (caller-controlled in relocatable mode) # rather than hard-coded /opt/... paths. if(DEFINED CPACK_PACKAGING_INSTALL_PREFIX) @@ -1496,13 +1488,21 @@ macro(setup_distribution_package) ) # + set(CPACK_PACKAGE_VERSION_MAJOR ${AMD_PROJECT_VERSION_MAJOR}) + set(CPACK_PACKAGE_VERSION_MINOR ${AMD_PROJECT_VERSION_MINOR}) + set(CPACK_PACKAGE_VERSION_PATCH ${AMD_PROJECT_VERSION_PATCH}) + set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") + set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "ROCm utility tool for benchmarking device performance") + ## DEB set(CPACK_DEBIAN_PACKAGE_NAME "${CPACK_PACKAGE_NAME}") set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64") set(CPACK_DEBIAN_PACKAGE_DEPENDS "numactl, libnuma1, hsa-rocr, libstdc++6") set(CPACK_DEBIAN_PACKAGE_MAINTAINER "${CPACK_PACKAGE_CONTACT}") - if(DEFINED ENV{CPACK_DEBIAN_PACKAGE_RELEASE}) - set(CPACK_DEBIAN_PACKAGE_RELEASE "$ENV{CPACK_DEBIAN_PACKAGE_RELEASE}") + if (DEFINED ENV{CPACK_DEBIAN_PACKAGE_RELEASE}) + set(CPACK_DEBIAN_PACKAGE_RELEASE $ENV{CPACK_DEBIAN_PACKAGE_RELEASE}) + else() + set(CPACK_DEBIAN_PACKAGE_RELEASE "local") endif() # @@ -1511,14 +1511,22 @@ macro(setup_distribution_package) set(CPACK_RPM_PACKAGE_LICENSE "MIT") set(CPACK_RPM_PACKAGE_REQUIRES "numactl, hsa-rocr") set(CPACK_RPM_PACKAGE_VENDOR "${CPACK_PACKAGE_VENDOR}") + if(DEFINED ENV{CPACK_RPM_PACKAGE_RELEASE}) + set(CPACK_RPM_PACKAGE_RELEASE $ENV{CPACK_RPM_PACKAGE_RELEASE}) + else() + set(CPACK_RPM_PACKAGE_RELEASE "local") + endif() - # - ## - set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "ROCm utility tool for benchmarking device performance") + # distro changes + if(CPACK_RPM_PACKAGE_RELEASE) + set(CPACK_RPM_PACKAGE_RELEASE_DIST ON) + endif() # - ## TGZ - set(CPACK_ARCHIVE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Linux") + ## TGZ (STGZ): same version + release scheme as DEB/RPM — ---Linux.tar.gz + ## CPACK_RPM_PACKAGE_RELEASE is set from the build script (e.g. r0711.20260423 or PR suffix) + set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_RPM_PACKAGE_RELEASE}-Linux" CACHE STRING "STGZ/CPack output file stem" FORCE) + ##set(CPACK_ARCHIVE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}+Linux") set(CPACK_GENERATOR "DEB;RPM;TGZ") if(DEFINED ENV{ROCM_LIBPATCH_VERSION})