[vlc-devel] [PATCH 0/8] Rust contribs support

Thomas Guillem thomas at gllm.fr
Tue Aug 25 16:45:01 CEST 2020


Kartik proposed in a first set to install and use cargo/rustup from
extra/tools/bin, mainly because I suggested him to do it like that. This caused
a major issue: how to know the wanted rustup target to install.

This new set of patches change how cargo and rustup are used: the rustup/cargo
installation is now in contrib/bin/.cargo. When a package requires cargo from a
contrib (like ".rav1e: rav1e .cargo-c"), rustup will be installed if needed,
and the correct target will be installed from cargo.

This set also add support for cargo vendor archives.
cf. https://doc.rust-lang.org/cargo/commands/cargo-vendor.html
'cargo vendor' fetch all dependencies required by a Rust project.

This will be used to create an archive containing all dependencies of a rust
project. Such archive will be uploaded by VideoLAN administrators into the
VideoLAN FTP. The main purpose is to be able to get all the sources from a
specific VLC version.

The vendor archive will also be used as the principal crates source. If the
vendor archive is present and the checksum is correct, the cargo installation
of a contrib project won't require any network and use this source. If the
archive is not present or invalid, the cargo installation will use the default

Best regards,
Kartik Ohri (4):
  contrib: add rust targets and cargo to contrib makefile
  contrib: add rustup
  contrib: add rav1e
  codec: add rav1e encoder module

Thomas Guillem (4):
  contrib: specify the .sum- prefix in the checksum function
  contrib: add cargo rules
  contrib: add cargo-vendor-archive.sh script
  WIP: contrib: rav1e: add cargo-vendor checksum

 configure.ac                              |   5 +
 contrib/cargo-vendor-archive.sh           |  53 ++++
 contrib/src/main-rust.mak                 |  65 +++++
 contrib/src/main.mak                      |  11 +-
 contrib/src/rav1e/SHA512SUMS              |   1 +
 contrib/src/rav1e/cargo-vendor-SHA512SUMS |   1 +
 contrib/src/rav1e/rules.mak               |  32 +++
 contrib/src/rustup/SHA512SUMS             |   1 +
 contrib/src/rustup/rules.mak              |  29 +++
 modules/codec/Makefile.am                 |   8 +
 modules/codec/rav1e.c                     | 303 ++++++++++++++++++++++
 11 files changed, 506 insertions(+), 3 deletions(-)
 create mode 100755 contrib/cargo-vendor-archive.sh
 create mode 100644 contrib/src/main-rust.mak
 create mode 100644 contrib/src/rav1e/SHA512SUMS
 create mode 100644 contrib/src/rav1e/cargo-vendor-SHA512SUMS
 create mode 100644 contrib/src/rav1e/rules.mak
 create mode 100644 contrib/src/rustup/SHA512SUMS
 create mode 100644 contrib/src/rustup/rules.mak
 create mode 100644 modules/codec/rav1e.c


More information about the vlc-devel mailing list