Support RUSTC_WRAPPER
In https://github.com/rust-num/num-complex/issues/83, they reported problems detecting features under cargo no-std-check, which I found to be using RUSTC_WRAPPER to rewrite arguments for a fake target. This seems like something that autocfg could reasonably support. When present and non-empty, we would just wrap commands as $RUSTC_WRAPPER $RUSTC <args...>.
An alternate environment name is CARGO_BUILD_RUSTC_WRAPPER, or it can be set in .cargo/config -- but we don't have any support to find or parse config files yet.
An alternate environment name is CARGO_BUILD_RUSTC_WRAPPER, or it can be set in .cargo/config -- but we don't have any support to find or parse config files yet.
With https://github.com/rust-lang/cargo/pull/9601, it should be enough to just check RUSTC_WRAPPER -- cargo will set it to whatever wrapper value it ended up computing based on the config files.
Turns out that by not supporting RUSTC_WRAPPER autocfg has accidentally worked around https://github.com/rust-lang/rust-analyzer/issues/12973.