rust: avoid assuming a particular `bindgen` build
authorMiguel Ojeda <ojeda@kernel.org>
Tue, 9 Jul 2024 16:06:02 +0000 (18:06 +0200)
committerMiguel Ojeda <ojeda@kernel.org>
Wed, 10 Jul 2024 08:28:52 +0000 (10:28 +0200)
commitd49082faf6a001019693a837dea7b958048c731c
tree5622bd6dd2a74abc3713ae48ff2489021215b08e
parent63b27f4a0074bc6ef987a44ee9ad8bf960b568c2
rust: avoid assuming a particular `bindgen` build

`bindgen`'s logic to find `libclang` (via `clang-sys`) may change over
time, and depends on how it was built (e.g. Linux distributions may decide
to build it differently, and we are going to provide documentation on
installing it via distributions later in this series).

Therefore, clarify that `bindgen` may be built in several ways and
simplify the documentation by only mentioning the most prominent
environment variable (`LIBCLANG_PATH`) as an example on how to tweak the
search of the library at runtime (i.e. when `bindgen` is built as our
documentation explains). This also avoids duplicating the documentation,
like `bindgen` itself does (i.e. it refers to `clang-sys`).

Similarly, replace the test we had for this (which used the real program)
with a mocked one, to avoid depending on the particular build as well.

Tested-by: Benno Lossin <benno.lossin@proton.me>
Tested-by: Andreas Hindborg <a.hindborg@samsung.com>
Link: https://lore.kernel.org/r/20240709160615.998336-8-ojeda@kernel.org
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Documentation/rust/quick-start.rst
scripts/rust_is_available_test.py