Subject: Re: [PATCH v5 0/9] Introduce Rust and announce that it will become mandatory

From: Ramsay Jones <[email-masked]>
Date: Tue, 16 Sep 2025 23:25:26 +0100

On 16/09/2025 03:03, Ezekiel Newren wrote:
> I am currently working on a patch series that makes Rust optional and
> addresses several concerns that this series does not:
>   * Rust calling C: Makefile has no way to build or run Rust so it
> would have to call cargo test, but that doesn't work unless build.rs
> tells cargo where libgit.a is (among other things).
>   * Build tooling alignment: My build_rust.sh is called by make and

I meant to mention during the initial 'xdiff series' that running
the build_rust.sh script failed for me on Linux Mint 22.2, because:

  $ rustc --version
  rustc 1.75.0 (82e1608df 2023-12-21) (built from a source tarball)
  $ cargo --version
  cargo 1.75.0
  $ rustup --version
  Command 'rustup' not found, but can be installed with:
  sudo apt install rustup
  $ 

[if you try to install rustup, it offers to remove rustc and cargo!]

> meson which eliminates defining how to build Rust in 2 places.
>   * Cargo vs Meson: Meson is adding support for Rust and it's getting
> better, but Cargo is the canonical build system for Rust. cargo is
> released in lockstep with rustc, and we _have_ to use cargo when
> building with make because Meson won't be available in that case.
>   * Crates: Patrick's series assumes the Git codebase is _the_ crate
>     * cbindgen: Cbindgen outputs a single header file for each crate,

Also:

  $ cbindgen --version
  Command 'cbindgen' not found, but can be installed with:
  sudo apt install cbindgen
  $ 

[I haven't tried installing cbindgen, so I don't know if it would uninstall
rustc and cargo :) ]

ATB,
Ramsay Jones