Source: halide
Section: devel
Priority: optional
Maintainer: Roman Lebedev <lebedev.ri@gmail.com>
Build-Depends: debhelper-compat (= 13),
               dh-python,
               python3,
               python3-dev,
               libpython3-dev,
               pybind11-dev,
               python3-numpy,
               python3-imageio,
               cmake,
               ninja-build,
               llvm-13,
               llvm-13-dev,
               clang-13,
               libclang-13-dev,
               lld-13 [amd64 arm64 i386],
               libomp-13-dev [!armel !mipsel !s390x !sparc64 !x32 !powerpc],
               libgl-dev,
               zlib1g-dev,
               libjpeg-dev,
               libpng-dev,
               doxygen,
               libxml2-dev,
               libopenblas-dev   [!armel !mipsel !x32],
               libatlas-base-dev [ armel  mipsel  ]
Standards-Version: 4.6.0
Homepage: https://halide-lang.org/
Vcs-Browser: https://salsa.debian.org/pkg-llvm-team/halide/-/tree/debian
Vcs-Git: https://salsa.debian.org/pkg-llvm-team/halide.git -b debian
Rules-Requires-Root: no

Package: libhalide13-0
Architecture: any
Multi-Arch: same
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: fast, portable computation on images and tensors
 Halide is a programming language designed to make it easier to write
 high-performance image and array processing code on modern machines.
 Halide currently targets:
  * CPU architectures: X86, ARM, MIPS, Hexagon, PowerPC, RISC-V
  * Operating systems: Linux, Windows, macOS, Android, iOS, Qualcomm QuRT
  * GPU Compute APIs: CUDA, OpenCL, OpenGL Compute Shaders, Apple Metal,
                     Microsoft Direct X 12
 Rather than being a standalone programming language,
 Halide is embedded in C++. This means you write C++ code that builds
 an in-memory representation of a Halide pipeline using Halide's C++ API.
 You can then compile this representation to an object file,
 or JIT-compile it and run it in the same process.

Package: libhalideaot13-0
Architecture: all
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends},
         libllvm13
Description: fast, portable computation on images and tensors (virtual library)
 Halide is a programming language designed to make it easier to write
 high-performance image and array processing code on modern machines.
 .
 Software that uses halide can either rely on just-in-time compilation,
 in which case it runtime-depends on/links to libhalide, or it can be compiled
 ahead of time, when building the software, in which case it does not strictly
 depend on halide. Former software should depend on this package instead, to
 make it obvious which software needs to be rebuilt with newer halide versions.
 .
 This is an empty package.

Package: libhalide13-0-dev
Architecture: any
Multi-Arch: same
Section: libdevel
Depends: libhalide13-0 (= ${binary:Version}),
         ${shlibs:Depends}, ${misc:Depends},
         llvm-13-dev
Suggests: libhalide13-doc, halide13-api-doc
Description: fast, portable computation on images and tensors -- Development files
 Halide is a programming language designed to make it easier to write
 high-performance image and array processing code on modern machines.
 .
 This package contains the files necessary to develop against libhalide.

Package: libhalide13-doc
Architecture: all
Multi-Arch: foreign
Section: doc
Depends: ${shlibs:Depends}, ${misc:Depends}
Enhances: libhalide13-0-dev
Description: fast, portable computation on images and tensors (C++ documentation)
 Halide is a programming language designed to make it easier to write
 high-performance image and array processing code on modern machines.
 .
 This package contains README's and tutorials for using Halide from C++.

Package: halide13-api-doc
Architecture: all
Multi-Arch: foreign
Section: doc
Depends: ${shlibs:Depends}, ${misc:Depends}
Enhances: libhalide13-0-dev
Breaks:   libhalide13-doc (<< 13.0.3)
Replaces: libhalide13-doc (<< 13.0.3)
Description: fast, portable computation on images and tensors (Doxygen documentation)
 Halide is a programming language designed to make it easier to write
 high-performance image and array processing code on modern machines.
 .
 This package contains Doxygen-generated API documentation.

Package: python3-halide
Architecture: any
Multi-Arch: same
Section: python
Depends: libhalide13-0 (= ${binary:Version}),
         ${shlibs:Depends}, ${misc:Depends},
         ${python3:Depends}
Suggests: python3-halide-doc
Description: fast, portable computation on images and tensors -- Python3 bindings
 Halide is a programming language designed to make it easier to write
 high-performance image and array processing code on modern machines.
 .
 This package contains provides a Python binding that provides full support
 for writing Halide embedded in Python without C++.

Package: python3-halide-doc
Architecture: all
Multi-Arch: foreign
Section: doc
Depends: ${shlibs:Depends}, ${misc:Depends}
Enhances: python3-halide
Description: fast, portable computation on images and tensors (Python3 documentation)
 Halide is a programming language designed to make it easier to write
 high-performance image and array processing code on modern machines.
 .
 This package contains tutorials for writing Halide embedded in Python.
