about summary refs log tree commit diff
path: root/compiler/rustc_codegen_llvm/src/builder.rs
diff options
context:
space:
mode:
authorLeón Orell Valerian Liehr <me@fmease.dev>2024-02-21 16:32:58 +0100
committerGitHub <noreply@github.com>2024-02-21 16:32:58 +0100
commit2d98f05cf11256dce15c57af341c49278ed3f189 (patch)
treeb12a460ddc7aee9cc2126126b5e1391f19904a35 /compiler/rustc_codegen_llvm/src/builder.rs
parent216f9a47787e55a75b62b932e09f006ba5d2ccee (diff)
parenta2aa9672f62c57c3701938982143c49404e8dff2 (diff)
downloadrust-2d98f05cf11256dce15c57af341c49278ed3f189.tar.gz
rust-2d98f05cf11256dce15c57af341c49278ed3f189.zip
Rollup merge of #121347 - davidtwco:compiletest-aux-aux, r=oli-obk
compiletest: support auxiliaries with auxiliaries

To test behaviour that depends on the extern options of intermediate crates, compiletest auxiliaries must have their own auxiliaries.

Auxiliary compilation previously did not trigger compilation of any auxiliaries in the auxiliary's headers. In addition, those auxiliaries would need to be in an `auxiliary/auxiliary` directory, which is unnecessary and makes some crate graphs harder to write tests for, such as when A depends on B and C, and B depends on C.

For a test `tests/ui/$path/root.rs`, with the following crate graph:

```
root
|-- grandparent
`-- parent
    `-- grandparent
```

then the intermediate outputs from compiletest will be:

```
build/$target/test/ui/$path/
|-- auxiliary
|   |-- libgrandparent.dylib
|   |-- libparent.dylib
|   |-- grandparent
|   |   |-- grandparent.err
|   |   `-- grandparent.out
|   `-- parent
|       |-- parent.err
|       `-- parent.out
|-- libroot.rmeta
|-- root.err
`-- root.out
```
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/builder.rs')
0 files changed, 0 insertions, 0 deletions