libgit2-sys enables the parallel feature of cc by default, however when building libgit2-sys with the vendored-openssl feature, this contaminates the cc run of openssl-sys with parallel flags and produces the following error:
--- stderr
make: *** read jobs pipe: Resource temporarily unavailable. Stop.
make: *** Waiting for unfinished jobs....
thread 'main' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/openssl-src-300.2.3+3.2.1/src/lib.rs:611:9:
Error building OpenSSL:
Command: cd "/target/aarch64-unknown-linux-gnu/release/build/openssl-sys-6a5ed052a12e98be/out/openssl-build/build/src" && MAKEFLAGS="-j --jobserver-fds=7,8 --jobserver-auth=7,8" "make" "build_libs"
Exit status: exit status: 2
This is a known issue with building openssl using parallelism:
rust-lang/cargo#13476
rust-openssl/rust-openssl#2179
rust-lang/cc-rs#964
In other words, cc/parallel is mutually exclusive with openssl-sys/vendored when building yet libgit2-sys potentially enables both.