rust: kbuild: skip `--remap-path-prefix` for `rustdoc`
authorMiguel Ojeda <ojeda@kernel.org>
Sat, 15 Mar 2025 19:40:45 +0000 (20:40 +0100)
committerMasahiro Yamada <masahiroy@kernel.org>
Sat, 22 Mar 2025 15:56:13 +0000 (00:56 +0900)
commit2c8725c1dca3de043670b38592b1b43105322496
tree057b00bd441b297af6b3e2e3d8241d45a05d1703
parent8bdd53e066012bed431667393676d1b5e8cce153
rust: kbuild: skip `--remap-path-prefix` for `rustdoc`

`rustdoc` only recognizes `--remap-path-prefix` starting with
Rust 1.81.0, which is later than on minimum, so we cannot pass it
unconditionally. Otherwise, we get:

    error: Unrecognized option: 'remap-path-prefix'

Note that `rustc` (the compiler) does recognize the flag since a long
time ago (1.26.0).

Moreover, `rustdoc` since Rust 1.82.0 ICEs in out-of-tree builds when
using `--remap-path-prefix`. The issue has been reduced and reported
upstream [1].

Thus workaround both issues by simply skipping the flag when generating
the docs -- it is not critical there anyway.

The ICE does not reproduce under `--test`, but we still need to skip
the flag as well for `RUSTDOC TK` since it is not recognized.

Fixes: dbdffaf50ff9 ("kbuild, rust: use -fremap-path-prefix to make paths relative")
Link: https://github.com/rust-lang/rust/issues/138520
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Reviewed-by: Tamir Duberstein <tamird@gmail.com>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
rust/Makefile