Source: ggml
Section: libs
Maintainer: Debian Deep Learning Team <debian-ai@lists.debian.org>
Uploaders: Christian Kastner <ckk@debian.org>
Standards-Version: 4.7.3
Vcs-Browser: https://salsa.debian.org/deeplearning-team/ggml
Vcs-Git: https://salsa.debian.org/deeplearning-team/ggml.git
Homepage: https://github.com/ggml-org/ggml
# ckk 2025-11-24: HIP backend is temporarily disabled
#   see https://lists.debian.org/debian-ai/2025/11/msg00146.html
Build-Depends: cmake,
               debhelper-compat (= 13),
               libblas-dev,
               pkgconf,
               libvulkan-dev,
               glslc,
               pkg-rocm-tools (>= 0.9.1~)                 <!pkg.ggml.nohip>,
# libamdhip64-dev is normally included via hipcc, but we need to be explicit
# here because we require a version with a fixed bf16 header
               libamdhip64-dev (>= 5.7.1-6+deb13u1) [amd64 arm64] <!pkg.ggml.nohip>,
# hipcc 7.0.2+dfsg-2 is the first version for which the CMAKE_HIP_COMPILER is
# automatically detected
               hipcc (>= 7.0.2+dfsg-2) [amd64 arm64]      <!pkg.ggml.nohip>,
               libhipblas-dev [amd64 arm64]               <!pkg.ggml.nohip>,
               librocblas-dev [amd64 arm64]               <!pkg.ggml.nohip>,
Rules-Requires-Root: no

Package: libggml0
Architecture: amd64 arm64 loong64 ppc64 ppc64el riscv64 s390x
Multi-Arch: same
Depends: ${misc:Depends},
         ${shlibs:Depends},
Suggests: libggml0-backend-blas,
          libggml0-backend-cuda,
          libggml0-backend-hip,
          libggml0-backend-vulkan,
Breaks: libggml, libggml0-backend-cpu
Replaces: libggml, libggml0-backend-cpu
Description: Tensor library for machine learning - libraries
 ggml is a tensor library for machine learning with the following features:
 .
  * Low-level cross-platform implementation
  * Integer quantization support
  * Broad hardware support
  * Automatic differentiation
  * ADAM and L-BFGS optimizers
  * No third-party dependencies
  * Zero memory allocations during runtime
 .
 On Debian, ggml is shipped as a package that depends on one of the CPU or
 GPU backends.
 .
 This package provides the main libraries, and the CPU backend.

Package: libggml-dev
Section: libdevel
Architecture: amd64 arm64 loong64 ppc64 ppc64el riscv64 s390x
Multi-Arch: same
Depends: libggml0 (= ${binary:Version}),
         ${misc:Depends},
Breaks: libggml, libggml-cpu, libggml-blas, libggml-hip, libggml-vulkan
Replaces: libggml, libggml-cpu, libggml-blas, libggml-hip, libggml-vulkan
Description: Tensor library for machine learning - development files
 ggml is a tensor library for machine learning with the following features:
 .
  * Low-level cross-platform implementation
  * Integer quantization support
  * Broad hardware support
  * Automatic differentiation
  * ADAM and L-BFGS optimizers
  * No third-party dependencies
  * Zero memory allocations during runtime
 .
 On Debian, ggml is shipped as a package that depends on one of the CPU or
 GPU backends.
 .
 This package provides the development files.

Package: libggml0-backend-blas
Architecture: amd64 arm64 loong64 ppc64 ppc64el riscv64 s390x
Multi-Arch: same
Depends: libggml0 (= ${binary:Version}),
         ${misc:Depends},
         ${shlibs:Depends}
Recommends: libopenblas0 | libblis4 | libmkl-rt | libblas3
Provides: libggml0-backend (= ${binary:Version})
Description: Tensor library for machine learning - BLAS backend
 ggml is a tensor library for machine learning with the following features:
 .
  * Low-level cross-platform implementation
  * Integer quantization support
  * Broad hardware support
  * Automatic differentiation
  * ADAM and L-BFGS optimizers
  * No third-party dependencies
  * Zero memory allocations during runtime
 .
 On Debian, ggml is shipped as a package that depends on one of the CPU or
 GPU backends.
 .
 This package provides the BLAS backend.

Package: libggml0-backend-hip
Architecture: amd64 arm64
Multi-Arch: same
XB-X-ROCm-GPU-Architecture: ${rocm:GPU-Architecture}
Depends: libggml0 (= ${binary:Version}),
         ${misc:Depends},
         ${shlibs:Depends}
Provides: libggml0-backend (= ${binary:Version})
Conflicts: libggml0-backend-vulkan
Build-Profiles: <!pkg.ggml.nohip>
Description: Tensor library for machine learning - HIP backend
 ggml is a tensor library for machine learning with the following features:
 .
  * Low-level cross-platform implementation
  * Integer quantization support
  * Broad hardware support
  * Automatic differentiation
  * ADAM and L-BFGS optimizers
  * No third-party dependencies
  * Zero memory allocations during runtime
 .
 On Debian, ggml is shipped as a package that depends on one of the CPU or
 GPU backends.
 .
 This package provides the HIP backend, for AMD GPUs.

Package: libggml0-backend-vulkan
Architecture: amd64 arm64 loong64 ppc64 ppc64el riscv64 s390x
Multi-Arch: same
Depends: libggml0 (= ${binary:Version}),
         ${misc:Depends},
         ${shlibs:Depends}
Suggests: mesa-vulkan-drivers,
          nvidia-vulkan-icd,
Provides: libggml0-backend (= ${binary:Version})
Description: Tensor library for machine learning - Vulkan backend
 ggml is a tensor library for machine learning with the following features:
 .
  * Low-level cross-platform implementation
  * Integer quantization support
  * Broad hardware support
  * Automatic differentiation
  * ADAM and L-BFGS optimizers
  * No third-party dependencies
  * Zero memory allocations during runtime
 .
 On Debian, ggml is shipped as a package that depends on one of the CPU or
 GPU backends.
 .
 This package provides the Vulkan backend.
