# There are currently four upstream source repositories (and thus tarballs)
# for this single source package:
# hipamd, hip, rocclr and opencl-runtime
# This is often called MUT for multi-upstream tarballs, in documentation.
Source: rocm-hipamd
Section: devel
Homepage: https://github.com/ROCm/clr
Priority: optional
Standards-Version: 4.7.2
Vcs-Git: https://salsa.debian.org/rocm-team/rocm-hipamd.git
Vcs-Browser: https://salsa.debian.org/rocm-team/rocm-hipamd
Maintainer: Debian ROCm Team <debian-ai@lists.debian.org>
Uploaders: Étienne Mollier <emollier@debian.org>,
           Cordell Bloor <cgmb@debian.org>,
           Christian Kastner <ckk@debian.org>,
           Xuanteng Huang <xuanteng.huang@outlook.com>,
           Christian Bayle <bayle@debian.org>,
Build-Depends: debhelper-compat (= 13),
               clang-20,
               clang-tools-20,
               cmake,
               libamd-comgr-dev (>= 6.4.3~),
               rocm-device-libs-20 (>= 6.4.3~),
               libclang-20-dev,
               libclang-rt-20-dev,
               libhsa-runtime-dev (>= 6.4.3~),
               libnuma-dev,
               lld-20,
               llvm-20-dev,
               mesa-common-dev,
               zlib1g-dev
Rules-Requires-Root: no

Package: libamdhip64-6
Section: libs
Architecture: amd64 arm64 ppc64el
Multi-Arch: same
Depends: libamd-comgr3, ${misc:Depends}, ${shlibs:Depends}
Description: HIP runtime for AMD GPUs - library
 The libamdhip64 library provides the implementation of the Heterogeneous
 Interface for Portability (HIP) runtime for AMD GPUs. It is a foundational
 library used by nearly all HIP programs, including many higher-level components
 of the ROCm GPU compute stack, such as rocRAND, rocBLAS, rocFFT, and rocSPARSE.
 .
 This package provides the HIP runtime library for the AMD platform.

Package: libamdhip64-dev
Section: libdevel
Architecture: amd64 arm64 ppc64el
Suggests: hipcc, hip-utils
Depends: ${misc:Depends},
         ${perl:Depends},
         libamdhip64-6 (= ${binary:Version}),
         libhiprtc-builtins6 (= ${binary:Version}),
         libhiprtc6 (= ${binary:Version}),
         libamd-comgr-dev,
         libhsa-runtime-dev,
Description: HIP runtime for AMD GPUs - headers
 The libamdhip64 library provides the implementation of the Heterogeneous
 Interface for Portability (HIP) runtime for AMD GPUs. It is a foundational
 library used by nearly all HIP programs, including many higher-level components
 of the ROCm GPU compute stack, such as rocRAND, rocBLAS, rocFFT, and rocSPARSE.
 .
 The HIP runtime headers can be used to build programs for either AMD GPUs
 or NVIDIA GPUs, depending on what HIP platform is defined. When building for
 AMD GPUs, the HIP runtime functions are implemented by the libamdhip64 library,
 but when building for NVIDIA GPUs, the HIP runtime functions are defined as
 header-only wrappers around CUDA runtime functions.
 .
 This package provides HIP runtime headers.

Package: libhiprtc6
Section: libs
Architecture: amd64 arm64 ppc64el
Multi-Arch: same
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: HIP runtime compilation library
 HIP Runtime Compilation (HIPRTC) enables programs to dynamically compile GPU
 kernels from source at runtime using the HIPRTC interface. The HIPRTC
 functions accept HIP source code as character strings and compile the sources
 in-process.
 .
 This package provides the HIPRTC library.

Package: libhiprtc-builtins6
Section: libs
Architecture: amd64 arm64 ppc64el
Multi-Arch: same
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: HIP runtime compilation library - builtins
 HIP Runtime Compilation (HIPRTC) enables programs to dynamically compile GPU
 kernels from source at runtime using the HIPRTC interface. The HIPRTC
 functions accept HIP source code as character strings and compile the sources
 in-process.
 .
 This package provides the HIPRTC builtins library.

Package: hip-utils
Section: libdevel
Architecture: amd64 arm64 ppc64el
Depends: ${misc:Depends},
         libfile-which-perl,
         liburi-encode-perl,
         llvm-20,
         hipcc
Breaks: hipcc (<< 6.1.2+dfsg-1~),
Replaces: hipcc (<< 6.1.2+dfsg-1~),
Description: utilities for HIP language development
 This package provides tools used in building, profiling and inspecting
 HIP programs. It provides the roc-obj family of tools for examining and
 extracting the GPU code objects within executables, the hipdemangleatp
 tool used to make any kernel names emitted by the rocm-profiler more
 readable, and the hipcc_cmake_linker_helper which is sometimes used in
 conjunction with FindHIP.cmake.

Package: rocm-opencl-icd
Section: libs
Architecture: amd64 arm64 ppc64el
Multi-Arch: same
Provides: opencl-icd
Depends: ${misc:Depends}, ${shlibs:Depends}
# Either will trigger LLVM double load bug
Conflicts: mesa-opencl-icd,
           pocl-opencl-icd,
Description: AMD ROCm implementation of the OpenCL API - ICD runtime
 This package contains the ROCm implementation of the OpenCL (Open
 Computing Language) library for AMD GPUs, which is intended for use
 with an ICD loader. OpenCL provides a standardized interface for
 computational analysis on graphical processing units.
