Source: rustc-mozilla
Section: devel
Priority: optional
Maintainer: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
Uploaders:
 Ximin Luo <infinity0@debian.org>,
 Sylvestre Ledru <sylvestre@debian.org>
Rules-Requires-Root: no
# :native annotations are to support cross-compiling, see README.Debian
Build-Depends:
 debhelper (>= 9),
 debhelper-compat (= 12),
 dpkg-dev (>= 1.17.14),
 python3:native,
# cargo:native (>= 0.40.0)              <!pkg.rustc.dlstage0>,
# rustc-mozilla:native (>= 1.50.0+dfsg) <!pkg.rustc.dlstage0>,
# rustc-mozilla:native (<= 1.51.0++)    <!pkg.rustc.dlstage0>,
 llvm-11-dev:native,
 llvm-11-tools:native,
 gcc-mingw-w64-x86-64-posix:native [amd64] <!nowindows>,
 gcc-mingw-w64-i686-posix:native [i386] <!nowindows>,
 libllvm11,
 cmake (>= 3.0) | cmake3,
# needed by some vendor crates
 pkg-config,
# this is sometimes needed by rustc_llvm
 zlib1g-dev:native,
 zlib1g-dev,
# used by rust-installer
 liblzma-dev:native,
# test dependencies:
 binutils (>= 2.26) <!nocheck> | binutils-2.26 <!nocheck>,
 git <!nocheck>,
 procps <!nocheck>,
# below are optional tools even for 'make check'
 gdb (>= 7.12) <!nocheck>,
# Extra build-deps needed for x.py to download stuff in pkg.rustc.dlstage0.
 curl <pkg.rustc.dlstage0>,
 ca-certificates <pkg.rustc.dlstage0>,
Build-Depends-Indep:
 wasi-libc (>= 0.0~git20200731.215adc8~~) <!nowasm>,
 wasi-libc (<= 0.0~git20200731.215adc8++) <!nowasm>,
 clang-11:native,
Build-Conflicts: gdb-minimal <!nocheck>
Standards-Version: 4.2.1
Homepage: http://www.rust-lang.org/
Vcs-Git: https://salsa.debian.org/rust-team/rust.git
Vcs-Browser: https://salsa.debian.org/rust-team/rust

Package: rustc-mozilla
Architecture: any
Multi-Arch: allowed
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}, libstd-rust-mozilla-dev (= ${binary:Version}),
 gcc, libc-dev, binutils (>= 2.26)
Recommends: cargo (>= 0.52.0~~), cargo (<< 0.53.0~~), rust-mozilla-gdb | rust-mozilla-lldb
# lld is needed for wasm compilation
# llvm is needed for llvm-dwp for split-debuginfo
Suggests: rust-mozilla-doc, rust-mozilla-src, lld-11, llvm-11
Conflicts: rustc
Provides: rustc (= ${binary:Version})
Replaces: libstd-rust-dev (<< 1.25.0+dfsg1-2~~), rustc
Breaks: libstd-rust-dev (<< 1.25.0+dfsg1-2~~)
Description: Rust systems programming language
 Rust is a curly-brace, block-structured expression language.  It
 visually resembles the C language family, but differs significantly
 in syntactic and semantic details.  Its design is oriented toward
 concerns of "programming in the large", that is, of creating and
 maintaining boundaries - both abstract and operational - that
 preserve large-system integrity, availability and concurrency.
 .
 It supports a mixture of imperative procedural, concurrent actor,
 object-oriented and pure functional styles.  Rust also supports
 generic programming and meta-programming, in both static and dynamic
 styles.

Package: libstd-rust-mozilla-1.51
Section: libs
Architecture: any
Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Rust standard libraries
 Rust is a curly-brace, block-structured expression language.  It
 visually resembles the C language family, but differs significantly
 in syntactic and semantic details.  Its design is oriented toward
 concerns of "programming in the large", that is, of creating and
 maintaining boundaries - both abstract and operational - that
 preserve large-system integrity, availability and concurrency.
 .
 It supports a mixture of imperative procedural, concurrent actor,
 object-oriented and pure functional styles.  Rust also supports
 generic programming and meta-programming, in both static and dynamic
 styles.
 .
 This package contains the standard Rust libraries, built as dylibs,
 needed to run dynamically-linked Rust programs (-C prefer-dynamic).

Package: libstd-rust-mozilla-dev
Section: libdevel
Architecture: any
Multi-Arch: same
Depends: ${shlibs:Depends}, ${misc:Depends}, libstd-rust-mozilla-1.51 (= ${binary:Version})
Description: Rust standard libraries - development files
 Rust is a curly-brace, block-structured expression language.  It
 visually resembles the C language family, but differs significantly
 in syntactic and semantic details.  Its design is oriented toward
 concerns of "programming in the large", that is, of creating and
 maintaining boundaries - both abstract and operational - that
 preserve large-system integrity, availability and concurrency.
 .
 It supports a mixture of imperative procedural, concurrent actor,
 object-oriented and pure functional styles.  Rust also supports
 generic programming and meta-programming, in both static and dynamic
 styles.
 .
 This package contains development files for the standard Rust libraries,
 needed to compile Rust programs. It may also be installed on a system
 of another host architecture, for cross-compiling to this architecture.

Package: libstd-rust-mozilla-dev-windows
Section: libdevel
Architecture: amd64 i386
Multi-Arch: same
Depends: ${shlibs:Depends}, ${misc:Depends}
Recommends:
 gcc-mingw-w64-x86-64-posix [amd64],
 gcc-mingw-w64-i686-posix [i386],
Conflicts: libstd-rust-dev-windows
Replaces: libstd-rust-dev-windows
Build-Profiles: <!nowindows>
Description: Rust standard libraries - development files
 Rust is a curly-brace, block-structured expression language.  It
 visually resembles the C language family, but differs significantly
 in syntactic and semantic details.  Its design is oriented toward
 concerns of "programming in the large", that is, of creating and
 maintaining boundaries - both abstract and operational - that
 preserve large-system integrity, availability and concurrency.
 .
 It supports a mixture of imperative procedural, concurrent actor,
 object-oriented and pure functional styles.  Rust also supports
 generic programming and meta-programming, in both static and dynamic
 styles.
 .
 This package contains the standard Rust libraries including development files,
 needed to cross-compile Rust programs to the *-pc-windows-gnu target
 corresponding to the architecture of this package.

Package: libstd-rust-mozilla-dev-wasm32
Section: libdevel
Architecture: all
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}
# Embeds wasi-libc so doesn't need to depend on it
# None of its licenses require source redistrib, so no need for Built-Using
Recommends: lld-11
Suggests: clang-11, nodejs (>= 12.16)
# nodejs contains wasi-node for running the program
Conflicts: libstd-rust-dev-wasm32
Replaces: libstd-rust-dev-wasm32
Build-Profiles: <!nowasm>
Description: Rust standard libraries - development files
 Rust is a curly-brace, block-structured expression language.  It
 visually resembles the C language family, but differs significantly
 in syntactic and semantic details.  Its design is oriented toward
 concerns of "programming in the large", that is, of creating and
 maintaining boundaries - both abstract and operational - that
 preserve large-system integrity, availability and concurrency.
 .
 It supports a mixture of imperative procedural, concurrent actor,
 object-oriented and pure functional styles.  Rust also supports
 generic programming and meta-programming, in both static and dynamic
 styles.
 .
 This package contains the standard Rust libraries including development files,
 needed to cross-compile Rust programs to the wasm32-unknown-unknown and
 wasm32-wasi targets.

Package: rust-mozilla-gdb
Architecture: all
Depends: gdb, ${misc:Depends}
Suggests: gdb-doc
Conflicts: rust-gdb
Replaces: rustc (<< 1.1.0+dfsg1-1), rust-gdb
Description: Rust debugger (gdb)
 Rust is a curly-brace, block-structured expression language.  It
 visually resembles the C language family, but differs significantly
 in syntactic and semantic details.  Its design is oriented toward
 concerns of "programming in the large", that is, of creating and
 maintaining boundaries - both abstract and operational - that
 preserve large-system integrity, availability and concurrency.
 .
 It supports a mixture of imperative procedural, concurrent actor,
 object-oriented and pure functional styles.  Rust also supports
 generic programming and meta-programming, in both static and dynamic
 styles.
 .
 This package contains pretty printers and a wrapper script for
 invoking gdb on rust binaries.

Package: rust-mozilla-lldb
Architecture: all
# When updating, also update rust-mozilla-lldb.links
Depends: lldb-11, ${misc:Depends}, python3-lldb-11
Conflicts: rust-lldb
Replaces: rustc (<< 1.1.0+dfsg1-1), rust-lldb
Description: Rust debugger (lldb)
 Rust is a curly-brace, block-structured expression language.  It
 visually resembles the C language family, but differs significantly
 in syntactic and semantic details.  Its design is oriented toward
 concerns of "programming in the large", that is, of creating and
 maintaining boundaries - both abstract and operational - that
 preserve large-system integrity, availability and concurrency.
 .
 It supports a mixture of imperative procedural, concurrent actor,
 object-oriented and pure functional styles.  Rust also supports
 generic programming and meta-programming, in both static and dynamic
 styles.
 .
 This package contains pretty printers and a wrapper script for
 invoking lldb on rust binaries.

Package: rust-mozilla-doc
Section: doc
Architecture: all
Build-Profiles: <!nodoc>
Depends: ${misc:Depends},
 libjs-jquery, libjs-highlight.js, libjs-mathjax,
 fonts-open-sans, fonts-font-awesome
Recommends: cargo-doc
Conflicts: rust-doc
Replaces: rust-doc
Description: Rust systems programming language - Documentation
 Rust is a curly-brace, block-structured expression language.  It
 visually resembles the C language family, but differs significantly
 in syntactic and semantic details.  Its design is oriented toward
 concerns of "programming in the large", that is, of creating and
 maintaining boundaries - both abstract and operational - that
 preserve large-system integrity, availability and concurrency.
 .
 It supports a mixture of imperative procedural, concurrent actor,
 object-oriented and pure functional styles.  Rust also supports
 generic programming and meta-programming, in both static and dynamic
 styles.
 .
 This package contains the Rust tutorial, language reference and
 standard library documentation.

Package: rust-mozilla-src
Architecture: all
Depends: ${misc:Depends}
Conflicts: rust-src
Replaces: rust-src
Description: Rust systems programming language - source code
 Rust is a curly-brace, block-structured expression language.  It
 visually resembles the C language family, but differs significantly
 in syntactic and semantic details.  Its design is oriented toward
 concerns of "programming in the large", that is, of creating and
 maintaining boundaries - both abstract and operational - that
 preserve large-system integrity, availability and concurrency.
 .
 It supports a mixture of imperative procedural, concurrent actor,
 object-oriented and pure functional styles.  Rust also supports
 generic programming and meta-programming, in both static and dynamic
 styles.
 .
 This package contains sources of the Rust compiler and standard
 libraries, useful for IDEs and code analysis tools such as Racer.
