Commit Graph

502 Commits

Author SHA1 Message Date
Jakub Beránek 8717b4b9c8 Use a different name for fast try builds 2026-04-01 11:56:45 +02:00
Manuel Drehwald a3261a2307 Revert "Link LLVM dynamically on aarch64-apple-darwin"
This reverts commit e7c268f883.
2026-03-28 05:11:48 +01:00
Manuel Drehwald 41c932c327 Revert "re-enable enzyme/autodiff builds on dist-aarch64-apple"
This reverts commit 988633d72c.
2026-03-28 05:11:48 +01:00
Manuel Drehwald 988633d72c re-enable enzyme/autodiff builds on dist-aarch64-apple 2026-03-25 12:37:03 +01:00
sgasho e7c268f883 Link LLVM dynamically on aarch64-apple-darwin 2026-03-22 16:06:31 +09:00
Jonathan Brouwer 1c77331593 Rollup merge of #153681 - cuviper:ci-llvm-22, r=Mark-Simulacrum
ci: add runners for vanilla LLVM 22

Ubuntu 26.04 has `llvm-22` packages that we can test with.
The `Dockerfile` is otherwise the same as the `llvm-21` runners.
2026-03-19 13:42:26 +01:00
Josh Stone 52dfa94cdc Update the minimum external LLVM to 21 2026-03-12 16:45:42 -07:00
Jakub Beránek 96e4833bea Add new CI job that runs tests with a toolchain built with multiple threads 2026-03-12 09:08:51 +01:00
Josh Stone b36ee95a64 ci: add runners for vanilla LLVM 22
Ubuntu 26.04 has `llvm-22` packages that we can test with.
The `Dockerfile` is otherwise the same as the `llvm-21` runners.
2026-03-10 17:06:59 -07:00
Ralf Jung 5b99fcd043 Revert "Move aarch64-apple dist builder to dynamic llvm linking and enable autodiff in CI for it"
This reverts commit c033de932e.
2026-02-25 13:49:49 +01:00
Manuel Drehwald c033de932e Move aarch64-apple dist builder to dynamic llvm linking and enable autodiff in CI for it
Co-authored-by: sgasho <SuganoShota1999@gmail.com>
2026-02-20 16:10:10 -05:00
Manuel Drehwald 4bf4ff1617 Enable autodiff in CI for mingw-llvm,linux 2026-02-20 16:10:10 -05:00
Jana Dönszelmann 485f76b835 Rollup merge of #152609 - mati865:gnullvm-llvm-dll, r=bjorn3
Install LLVM DLL in the right place on Windows

Continuation of https://github.com/rust-lang/rust/pull/151795 towards https://github.com/rust-lang/rust/issues/151774.

Unlike other systems, Windows requires runtime libraries to be present in `PATH` or right next to the binary.
So, we copy the library next to the binary as the easier solution.

Tested building `rust-openssl` in debug and release modes, but the difference is within noise margin.
2026-02-17 14:18:43 +01:00
Mateusz Mikuła 1d1280aae1 Build shared LLVM lib for windows-gnullvm 2026-02-16 14:26:14 +01:00
Mads Marquart 4fa388cb52 Disable profiler runtime on tvOS and watchOS 2026-02-10 17:42:13 +01:00
Mads Marquart 4a01f22a3e Bump tvOS, visionOS and watchOS Aarch64 targets to tier 2 2026-02-10 17:42:12 +01:00
Mads Marquart 343b469cad Update to Xcode 26.2
This also updates the macOS runners to run on macOS 15 (the macOS 14
runners only have up to Xcode 16.2 available).
2026-02-06 20:19:10 +01:00
Mads Marquart 0bbc2f2008 Remove USE_XCODE_CLANG
Instead, always use the Xcode-provided Clang to build LLVM.
2026-02-05 23:55:56 +01:00
Mads Marquart 19e4108ed1 Use DEVELOPER_DIR instead of a custom xcode-select script
`DEVELOPER_DIR` is the standard environment variable for overriding the
Xcode version, there is no need to invoke `xcode-select --switch`
manually to do this.

The variable is documented in both `man xcode-select` and `man xcrun`.
2026-02-03 20:14:52 +01:00
Matthias Krüger df4fe869ce Rollup merge of #149962 - Gelbpunkt:powerpc64-musl-tier-2, r=Mark-Simulacrum
Promote powerpc64-unknown-linux-musl to tier 2 with host tools

MCP: https://github.com/rust-lang/compiler-team/issues/946

Tested by compiling on an x86_64 host via `DEPLOY=1 ./src/ci/docker/run.sh dist-powerpc64-linux-musl` and running on Alpine Linux ppc64:

```
root@algol /t/rust-nightly-powerpc64-unknown-linux-musl# bash install.sh
install: creating uninstall script at /usr/local/lib/rustlib/uninstall.sh
install: installing component 'rustc'
install: installing component 'rust-std-powerpc64-unknown-linux-musl'
install: installing component 'cargo'
install: installing component 'rustfmt-preview'
install: installing component 'rust-analyzer-preview'
install: installing component 'llvm-tools-preview'
install: installing component 'clippy-preview'
install: installing component 'miri-preview'
install: installing component 'rust-analysis-powerpc64-unknown-linux-musl'
install: installing component 'llvm-bitcode-linker-preview'

    rust installed.

root@algol /t/rust-nightly-powerpc64-unknown-linux-musl# echo 'fn main() { println!("hello world"); }' > test.rs
root@algol /t/rust-nightly-powerpc64-unknown-linux-musl# which rustc
/usr/local/bin/rustc
root@algol /t/rust-nightly-powerpc64-unknown-linux-musl# rustc test.rs
root@algol /t/rust-nightly-powerpc64-unknown-linux-musl# ./test
hello world
root@algol /t/rust-nightly-powerpc64-unknown-linux-musl# file test
test: ELF 64-bit MSB pie executable, 64-bit PowerPC or cisco 7500, OpenPOWER ELF V2 ABI, version 1 (SYSV), dynamically linked, interpreter /lib/ld-musl-powerpc64.so.1, BuildID[sha1]=90a0fa543b3d42588ad32c5b858e56ac9c56faed, with debug_info, not stripped
```

I renamed the glibc job and created a new one for musl since the same is done for the little-endian targets.

Implements rust-lang/rust#149938

try-job: dist-powerpc64-linux-gnu
try-job: dist-powerpc64-linux-musl
2026-01-24 21:04:13 +01:00
Jakub Beránek faea581d45 Remove references to bors2 2026-01-11 10:35:13 +01:00
Jens Reidel 624135bd79 Promote powerpc64-unknown-linux-musl to tier 2 with host tools
Signed-off-by: Jens Reidel <adrian@travitia.xyz>
2025-12-13 21:53:42 +01:00
bors a80d39a086 Auto merge of #149504 - mati865:i686-pc-windows-gnullvm, r=jieyouxu
Bring back i686-pc-windows-gnullvm target

rust-lang/rust#148751 inadvertently removed i686-pc-windows-gnullvm std build when migrating to native CI runners. Since this change was not agreed upon, we should bring back prebuilt std builds for that target.

There are a few runners that could do it: dist-aarch64-llvm-mingw, dist-x86_64-llvm-mingw, dist-various-1 and dist-various-2.
dist-x86_64-llvm-mingw already takes slightly over 2 hours, so the faster dist-aarch64-llvm-mingw is a better choice.
We can also use dist-various-x job, they don't have llvm-mingw toolchain, but it's trivial to install one.
2025-12-02 10:42:35 +00:00
Mateusz Mikuła 9498f21277 Bring back i686-pc-windows-gnullvm target 2025-12-01 16:46:14 +01:00
Mateusz Mikuła 57a1000f13 Mark windows-gnu* as lacking build with assertions 2025-12-01 16:02:08 +01:00
Mateusz Mikuła ab169ed983 Build gnullvm toolchains on Windows natively 2025-11-23 21:23:52 +01:00
bors 7878a91944 Auto merge of #148420 - Zalathar:rollup-1rrbzk7, r=Zalathar
Rollup of 5 pull requests

Successful merges:

 - rust-lang/rust#144194 (Provide additional context to errors involving const traits)
 - rust-lang/rust#148232 (ci: add runners for vanilla LLVM 21)
 - rust-lang/rust#148240 (rustc_codegen: fix musttail returns for cast/indirect ABIs)
 - rust-lang/rust#148247 (Remove a special case and move another one out of reachable_non_generics)
 - rust-lang/rust#148370 (Point at inner item when it uses generic type param from outer item or `Self`)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-11-03 02:52:00 +00:00
Jakub Beránek d3473f0741 Generalize branch references to HEAD 2025-11-02 11:15:55 +01:00
Josh Stone 46a474bbb8 ci: add runners for vanilla LLVM 21
Ubuntu 25.10 has `llvm-21` packages that we can test with.
The `Dockerfile` is otherwise the same as the `llvm-20` runners.
2025-10-28 15:27:55 -07:00
Guillaume Gomez 287e458dae Run rust tests with GCC backend 2025-10-13 15:20:48 +02:00
Jake Goulding 5df0be3988 Make macOS dist build configuration match where reasonable 2025-09-29 08:52:09 -04:00
Mads Marquart 9878be7787 Re-enable assertions on macOS 2025-09-27 18:06:00 +02:00
Josh Stone 580b4891aa Update the minimum external LLVM to 20 2025-09-16 11:49:20 -07:00
houpo-bob 5d41f7ccb8 Fix some minor issues in comments
Signed-off-by: houpo-bob <houpocun@outlook.com>
2025-08-24 16:58:22 +08:00
MarcoIeni e073f905fb ci: don't cleanup windows disk 2025-08-21 10:56:48 +02:00
Jake Goulding c574c91e57 Demote x86_64-apple-darwin to Tier 2 with host tools
Switch to only using aarch64 runners (implying we are now
cross-compiling) and stop running tests. In the future, we could
enable (some?) tests via Rosetta 2.
2025-08-15 12:00:13 -04:00
Jakub Beránek 72b606db89 Replace stage0-tools-bin with stage1-tools-bin 2025-08-12 18:39:09 +02:00
bors 72716b134a Auto merge of #144305 - ChrisDenton:win-free-disk-space, r=marcoieni
Free disk space on Windows 2025 runners

I've managed to reduce the time deletion takes by:

 - Using powershell, which is generally faster for filesystem operations than msys2
 - Performing deletions concurrently then waiting for them all to complete

It still takes 2-10 mins but that's not too bad.
2025-07-30 06:00:09 +00:00
Chris Denton 43018d3722 Free disk space on Windows 2025 runners 2025-07-30 04:10:28 +00:00
Stuart Cook 3a3db990f6 Rollup merge of #144367 - shepmaster:reduce-x86-macos-runner-usage, r=Mark-Simulacrum
Move dist-apple-various from x86_64 to aarch64

`macos-13` is going away soonish.
2025-07-29 16:16:42 +10:00
Jake Goulding 0b88bea0d5 Move dist-apple-various from x86_64 to aarch64
`macos-13` is going away soonish.
2025-07-23 11:35:50 -04:00
Jieyou Xu 523594d7ae Update jobs.yml docs to reflect subset-modulo-carve-outs relationship 2025-07-21 18:06:07 +08:00
Chris Denton 58a05caa45 Rename optional-mingw-check to optional-pr-check 2025-07-18 18:33:23 +00:00
MarcoIeni a886852e23 ci: use windows 22 for all free runners 2025-07-17 14:54:14 +02:00
Nikita Popov 4b421d44e2 Fix handling of SCRIPT_ARG in docker images
Instead of making this a build parameter, pass the SCRIPT as an
environment variable.

To this purpose, normalize on always referring to a script in
`/scripts`.

For i686-gnu-nopt-2 I had to create a separate script, because
Docker seems to be really terrible at command line argument
parsing, so it's not possible to pass an environment variable that
contains whitespace.
2025-07-15 16:23:15 +02:00
Trevor Gross 6debe03634 Rollup merge of #140136 - dpaoliello:arm64winci, r=Kobzol
Add an aarch64-msvc build running on ARM64 Windows

Resurrecting rust-lang/rust#126341

Per <https://github.com/rust-lang/rfcs/pull/3817> we intend to promote `aarch64-pc-windows-msvc` to Tier 1. As part of that work, we are adding a pre-merge CI job to validate that changes do not break this target.

Additionally, for consistency, the `dist-aarch64-msvc` job will also be run on Arm64 Windows runners.

r? ``@Kobzol``

try-job: `*aarch64-msvc*`
2025-07-10 20:20:37 -04:00
bors d6120810e5 Auto merge of #143294 - ChrisDenton:rename-mingw, r=Kobzol
Rename `mingw-*` CI jobs to `pr-*`

The name `mingw` confuses people because these CI jobs now do much more than just cross-compile to mingw.

This is basically a find/replace. I chose the name `pr-` because it's job is to do general PR checks,
2025-07-03 07:23:17 +00:00
Chris Denton 6671d9b92a Rename mingw-check-tidy to tidy 2025-07-02 08:48:20 +00:00
Chris Denton 62949cd2d6 Rename mingw-* CI jobs to pr-* 2025-07-01 20:25:56 +00:00
MarcoIeni 311a99cac4 ci: support optional jobs 2025-07-01 11:25:10 +02:00