rust/compiler/rustc_driver_impl/src
Matthias Krüger 3ec21070e2
Rollup merge of #133041 - madsmtm:print-deployment-target-env-var, r=davidtwco
Print name of env var in `--print=deployment-target`

The deployment target environment variable is OS-specific, and if you're in a place where you're asking `rustc` for the deployment target, you're likely to also wanna know the name of the environment variable. I myself wanted this for some code I'm working on in bootstrap, for example.

Behaviour before this PR:
```console
$ rustc --print=deployment-target --target=aarch64-apple-darwin
deployment_target=11.0
$ rustc --print=deployment-target --target=aarch64-apple-visionos
deployment_target=1.0
```

Behaviour after this PR:
```console
$ rustc --print=deployment-target --target=aarch64-apple-darwin
MACOSX_DEPLOYMENT_TARGET=11.0
$ rustc --print=deployment-target --target=aarch64-apple-visionos
XROS_DEPLOYMENT_TARGET=1.0
```

My _belief_ is that this option is extremely rarely used in general, and a GitHub search for "rustc print deployment-target" seems to confirm this, it revealed only the following actual pieces of code using this:
- b292ef6934/src/build_context.rs (L1199-L1220)
- daab9244b0/src/lib.rs (L3422-L3426)

`maturin` does `.split('=').last()`, so it will continue to work after this change, but `cc v1.0.84` did `.strip_prefix("deployment_target=")` since [this PR](https://github.com/rust-lang/cc-rs/pull/848), so it would break. That's _probably_ fine though, it was broken in a lot of scenarios anyway, and [got](https://github.com/rust-lang/cc-rs/pull/901) [reverted](https://github.com/rust-lang/cc-rs/pull/943) in `v1.0.85`.

So while this is _technically_ a breaking change, I really doubt that anyone is going to observe it, so it's probably fine.

``@BlackHoleFox`` wdyt?

``@rustbot`` label O-apple
r? compiler
2024-12-03 07:48:31 +01:00
..
args.rs Refactor argument UTF-8 checking into rustc_driver::args::raw_args() 2024-03-07 00:20:01 +00:00
lib.rs Rollup merge of #133041 - madsmtm:print-deployment-target-env-var, r=davidtwco 2024-12-03 07:48:31 +01:00
pretty.rs Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
print.rs Fix ICE on --print=... i/o errors 2023-04-25 08:17:18 -07:00
session_diagnostics.rs unstable feature usage metrics 2024-11-20 11:31:40 -08:00
signal_handler.rs Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00