Commit graph

420 commits

Author SHA1 Message Date
MarcoIeni
6ec41a7950
ci: fix llvm test coverage 2025-05-26 16:52:24 +02:00
MarcoIeni
ec5e841957
ci: move PR job x86_64-gnu-tools to codebuild 2025-05-24 15:12:14 +02:00
bors
2eef47813f Auto merge of #141388 - Kobzol:x64-github-runner, r=marcoieni
Move `dist-x86_64-linux` CI job to GitHub temporarily

To make it easier to migrate off the `rust-lang-ci/rust` repository.

r? `@marcoieni`
2025-05-22 18:05:06 +00:00
Jakub Beránek
7d32303574
Move dist-x86_64-linux CI job to GitHub temporarily
To make it easier to migrate off the `rust-lang-ci/rust` repository.
2025-05-22 12:09:37 +02:00
MarcoIeni
27677ef143
ci: convert distcheck to free runner 2025-05-22 09:53:35 +02:00
Matthias Krüger
c5920278d3
Rollup merge of #141078 - marcoieni:split-dist-arm-linux, r=Kobzol
ci: split dist-arm-linux job

try-job: `dist-arm-linux-*`
2025-05-21 08:05:18 +02:00
MarcoIeni
a8173fcd1f
ci: split powerpc64le-linux job 2025-05-20 15:16:29 +02:00
MarcoIeni
c2792b29c3
ci: split dist-arm-linux job 2025-05-18 12:12:20 +02:00
MarcoIeni
839534e801
ci: split the dist-ohos job 2025-05-15 15:41:11 +02:00
Jieyou Xu
f4ce73ede2
Temporarily use Windows Server 2022 instead of Windows Server 2025 images
At the moment, it seems like Windows Server 2025 20250504.1.0 is
misconfigured causing insufficient disk space failures. Temporarily go
back to Windows Server 2022 in the hope that those are not also
misconfigured.
2025-05-15 16:34:22 +08:00
Guillaume Gomez
117202e535
Rollup merge of #140349 - marcoieni:codebuild-linux-large-runners, r=Kobzol
ci: use aws codebuild for the `dist-x86_64-linux` job

try-job: dist-x86_64-linux
2025-04-28 13:30:47 +02:00
MarcoIeni
480d007616
ci: use aws codebuild for the dist-x86_64-linux job 2025-04-28 08:48:10 +02:00
MarcoIeni
474466dc16
ci: clean more disk space in codebuild 2025-04-27 11:03:53 +02:00
Matthias Krüger
7ba71d38d8
Rollup merge of #140148 - marcoieni:ci-aws-codebuild, r=Kobzol
CI: use aws codebuild for job dist-arm-linux

try-job: dist-arm-linux
2025-04-25 00:53:58 +02:00
MarcoIeni
18c3370e5d
CI: use aws codebuild for job dist-arm-linux 2025-04-23 13:31:24 +02:00
Jakub Beránek
432c4a80e9 Remove the add_dummy_commit.sh hack
The new git tests should be enough to check this scenario. We should ideally not be creating dummy commits on CI.
2025-04-20 09:35:39 +02:00
Matthias Krüger
2e363ce1df
Rollup merge of #139859 - marcoieni:rename-macos-runner, r=Kobzol
CI: rename MacOS runner

r? ``@Kobzol``
2025-04-15 21:16:06 +02:00
MarcoIeni
73065b9484
CI: rename MacOS runner 2025-04-15 12:28:32 +02:00
Josh Stone
c2712bcd2d ci: add runners for vanilla LLVM 20
Ubuntu 25.04 has `llvm-20` packages that we can start testing with.
The `Dockerfile` is otherwise the same as the `llvm-18`/`19` runners.
2025-04-14 16:13:04 -07:00
Stuart Cook
ab80f575c4
Rollup merge of #139386 - onur-ozkan:configurable-compiletest-libtest, r=jieyouxu,kobzol
make it possible to use stage0 libtest on compiletest

With https://github.com/rust-lang/rust/pull/119899, building the library tree will require a stage 1 compiler. This is because `compiletest` is defined as a `ToolStd` (since https://github.com/rust-lang/rust/pull/68019) in order to use the in-tree library. As a result, https://github.com/rust-lang/rust/pull/119899 makes certain development workflows more difficult as changes on the compiler tree will now require recompiling `compiletest` each time.

This PR allows switching `ToolStd` to `ToolBootstrap` with a simple boolean option in `bootstrap.toml` to allow `compiletest` to use the stage 0 `libtest` instead.

The changes under `src/ci` are clearly intended to make sure that `compiletest` doesn't break during future bootstrap beta bumps.
2025-04-08 20:55:08 +10:00
onur-ozkan
c8306650ba enable in-tree std on some runners
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-07 10:08:08 +03:00
Josh Stone
12167d7064 Update the minimum external LLVM to 19 2025-04-05 11:44:38 -07:00
Noratrieb
6a1f57d095 Demote i686-pc-windows-gnu to Tier 2
In accordance with RFC 3771.

I also added a stub doc page for the target and renamed the
windows-gnullvm page for consistency.
2025-04-02 21:40:58 +02:00
bors
1370611c0a Auto merge of #138690 - jieyouxu:temp-disable-fuchsia, r=Kobzol
Temporarily disable Fuchsia test job to unblock queue

See <https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/fuchsia.20failure/with/506637259> for efforts to fix the test job.

This PR temporarily disables the Fuchsia test job to unblock the queue, so that neither the Fuchsia maintainers nor T-infra maintainers should feel pressured to fix the job ASAP.

Please feel free to re-enable once the test job is fixed.
FYI `@erickt` since you or other Fuchsia maintainers will need to revert this change to merge Fuchsia test job fixes in the future.

r? infra-ci
2025-03-19 06:16:45 +00:00
Jieyou Xu
351e0f7a31
Temporarily disable Fuchsia test job to unblock queue
See
<https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/fuchsia.20failure/with/506637259>
for efforts to fix the test job.
2025-03-19 13:43:34 +08:00
Matthias Krüger
c19ce9df8d
Rollup merge of #138533 - Kobzol:try-job-auto-tests, r=marcoieni
Only use `DIST_TRY_BUILD` for try jobs that were not selected explicitly

Some CI jobs (x64 Linux, ARM64 Linux and x64 MSVC) use the `opt-dist` tool to build an optimized toolchain using PGO and BOLT. When performing a default try build for x64 Linux, in most cases we want to run perf. on that artifact. To reduce the latency of this common use-case, `opt-dist` skips building several components not needed for perf., and it also skips running post-optimization tests, when it detects that the job is executed as a try job (not a merge/auto job).

This is useful, but it also means that if you *want* to run the tests, you had to go to `jobs.yml` and manually comment this environment variable, create a WIP commit, do a try build, and then remove the WIP commit, which is annoying (in the similar way that modifying what gets run in try builds was annoying before we had the `try-job` annotations).

I thought that we could introduce some additional PR description marker like `try-job-run-tests`, but it's hard to discover that such things exist.

Instead, I think that there's a much simpler heuristic for determining whether `DIST_TRY_BUILD` should be used (that I implemented in this PR):
- If you do just ``@bors` try`, without any custom try jobs selected, `DIST_TRY_BUILD` will be activated, to finish the build as fast as possible.
- If you specify any custom try jobs, you are most likely doing experiments and you want to see if tests pass and everything builds as it should. The `DIST_TRY_BUILD` variable will thus *not* be set in this case.

In this way, if you want to run dist tests, you can just add the `try-job: dist-x86_64-linux` line to the PR description, and you don't need to create any WIP commits.

r? `@marcoieni`
2025-03-17 22:49:06 +01:00
bors
227690a258 Auto merge of #137011 - LuuuXXX:promote-ohos-with-host-tools, r=Amanieu
Promote ohos targets to tier2 with host tools.

### What does this PR try to resolve?

Try to promote the following [[Tier 2 without Host Tools](https://doc.rust-lang.org/rustc/platform-support.html#tier-2-without-host-tools)](https://doc.rust-lang.org/rustc/platform-support.html#tier-2-without-host-tools) targets to [[Tier 2 with Host Tools](https://doc.rust-lang.org/rustc/platform-support.html#tier-2-with-host-tools)](https://doc.rust-lang.org/rustc/platform-support.html#tier-2-with-host-tools):

- `aarch64-unknown-linux-ohos`
- `armv7-unknown-linux-ohos`
- `x86_64-unknown-linux-ohos`

### More Information?

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

### Blockage to be solved?

- [x] Submit an MCP
- [x] Submit code of promote ohos targets
- [x] Resolve related dependencies (`measureme`)

The modified code of the measureme has been merged (see https://github.com/rust-lang/measureme/pull/238). [done]
The new version will was released (https://github.com/rust-lang/measureme/pull/240). [done]
2025-03-16 18:42:18 +00:00
Jakub Beránek
7c792e29d7 Only use DIST_TRY_BUILD for try jobs that were not selected explicitly 2025-03-15 13:24:29 +01:00
Jakub Beránek
aab643f4a7
Fill doc_url for Rust for Linux and Fuchsia jobs 2025-03-13 14:46:46 +01:00
Jacob Pratt
8cac259347
Rollup merge of #137957 - Noratrieb:no, r=wesleywiser
Remove i586-pc-windows-msvc

See [MCP 840](https://github.com/rust-lang/compiler-team/issues/840).

I left a specialized error message that should help users that hit this in the wild (for example, because they use it in their CI).

```
error: Error loading target specification: the `i586-pc-windows-msvc` target has been removed. Use the `i686-pc-windows-msvc` target instead.
       Windows 10 (the minimum required OS version) requires a CPU baseline of at least i686 so you can safely switch. Run `rustc --print target-list` for a list of built-in targets
```

``@workingjubilee`` ``@calebzulawski`` fyi portable-simd uses this target in CI, if you wanna remove it already before this happens
2025-03-07 21:57:50 -05:00
Michael Goulet
59cd96770b
Rollup merge of #137798 - marcoieni:ubuntu-24-large-runner-arm, r=Kobzol
ci: use ubuntu 24 on arm large runner

try-job: dist-aarch64-linux
2025-03-06 12:22:17 -05:00
LuuuXXX
4cd350f616 remove zip file in /tmp to save some space and use large runner 2025-03-06 20:34:28 +08:00
MarcoIeni
69c46515ed
ci: use ubuntu 24 on arm large runner 2025-03-04 10:01:00 +01:00
Jakub Beránek
4f4cbff170 Re-enable Rust for Linux CI job 2025-03-03 20:55:48 +01:00
Noratrieb
b5562c04e7 Remove i586-pc-windows-msvc
See MCP 840.

I left a specialized error message that should help users that hit this
in the wild (for example, because they use it in their CI).
2025-03-03 20:15:25 +01:00
Jakub Beránek
530bedc1d0 Skip Rust for Linux in CI temporarily 2025-03-03 16:09:57 +01:00
Jakub Beránek
1a0970d4ce
Delete the previous Python script 2025-02-17 12:27:44 +01:00
Jakub Beránek
4f0141f665
Add missing base-job directive 2025-02-17 12:27:41 +01:00
bors
a3d4bd382a Auto merge of #136914 - marcoieni:arm-ubuntu-24, r=jdno
ci: use ubuntu 24 for free arm runner

try-job: aarch64-gnu
try-job: aarch64-gnu-debug
2025-02-16 15:07:36 +00:00
MarcoIeni
00683a05c2
CI: split i686-mingw job to three free runners 2025-02-14 11:10:01 +01:00
bors
905b1bf1cc Auto merge of #137010 - workingjubilee:rollup-g00c07v, r=workingjubilee
Rollup of 9 pull requests

Successful merges:

 - #135439 (Make `-O` mean `OptLevel::Aggressive`)
 - #136460 (Simplify `rustc_span` `analyze_source_file`)
 - #136904 (add `IntoBounds` trait)
 - #136908 ([AIX] expect `EINVAL` for `pthread_mutex_destroy`)
 - #136924 (Add profiling of bootstrap commands using Chrome events)
 - #136951 (Use the right binder for rebinding `PolyTraitRef`)
 - #136981 (ci: switch loongarch jobs to free runners)
 - #136992 (Update backtrace)
 - #136993 ([cg_llvm] Remove dead error message)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-02-14 06:13:42 +00:00
MarcoIeni
fc5ff7f3f9
ci: switch loongarch jobs to free runners 2025-02-13 18:10:22 +01:00
MarcoIeni
8ff3639dff
ci: move x86_64-gnu-debug job to the free runner 2025-02-13 11:29:55 +01:00
MarcoIeni
eada619518
ci: use ubuntu 24 for free arm runner 2025-02-12 09:44:51 +01:00
bors
8c61cd4df8 Auto merge of #136571 - marcoieni:ubuntu-24-large-runners, r=Mark-Simulacrum
ci: use ubuntu 24 for x86 large runners

try-job: dist-powerpc64le-linux
try-job: x86_64-gnu-debug
try-job: dist-arm-linux
try-job: x86_64-fuchsia
try-job: x86_64-gnu-distcheck
try-job: dist-x86_64-linux
try-job: dist-x86_64-linux-alt
2025-02-11 13:06:54 +00:00
Matthias Krüger
7b490494f2
Rollup merge of #136155 - tmiasko:msvc-enable-sanitizers, r=Mark-Simulacrum
Enable sanitizers on MSVC CI jobs

Previously MSVC CI would ignore all tests annotated with needs-sanitizer-support header.
2025-02-11 02:53:42 +01:00
bors
6171d944ae Auto merge of #133092 - madsmtm:bootstrap-deployment-target, r=Mark-Simulacrum,jieyouxu
Always set the deployment target when building std

`cc` has [a bug/feature](https://github.com/rust-lang/cc-rs/issues/1171) (I guess depending on how you look at it) where the default deployment target is taken from the SDK instead of from `rustc`. This causes `compiler-builtins` to build `compiler-rt` with the wrong deployment target on iOS.

I've been meaning to change how `cc` works in this regard, but that's a lengthy process, so let's fix it in bootstrap for now.

The behaviour can be seen locally with `./x build library --set build.optimized-compiler-builtins=true` for various target triples, and then inspecting with `otool -l build/host/stage1/lib/rustlib/*/lib/libcompiler_builtins-*.rlib | rg 'minos|version'`. I have added a rmake test that ensures that we now have the same version everywhere.

Fixes https://github.com/rust-lang/rust/issues/128419
Fixes https://github.com/rust-lang/compiler-builtins/issues/650
Fixes https://github.com/rust-lang/rust/issues/136523
See also https://github.com/rust-lang/cargo/issues/13115, https://github.com/rust-lang/cc-rs/issues/1171, https://github.com/rust-lang/rust/issues/136113
See https://github.com/rust-lang/rust/pull/133092#issuecomment-2626206772 for a description of how the change works.

try-job: i686-gnu-1
try-job: i686-gnu-2
try-job: x86_64-apple-1
try-job: aarch64-apple
try-job: dist-apple-various
try-job: dist-aarch64-apple
try-job: dist-various-2
try-job: x86_64-fuchsia
2025-02-10 21:09:36 +00:00
Matthias Krüger
45771e43ba
Rollup merge of #136679 - Flakebi:loongarch64-diskspace, r=marcoieni
ci: Use largedisk for loongarch

`dist-loongarch64-linux` and `dist-loongarch64-musl` seem to run out of disk space when adding the amdgpu LLVM backend. There are changes underway to free more disk space, but that may take a while, so it was suggested to switch the affected jobs to a largedisk runner until that is ready.
`dist-powerpc64-linux` is another job that ran out of disk space one time, but it succeeded the other times, so I did not include it here.

amdgpu target PR with more references to the failures: #134740

r? ```@marcoieni```
2025-02-08 21:37:27 +01:00
Flakebi
6f515fbcff
ci: Use largedisk for loongarch
`dist-loongarch64-linux` and `dist-loongarch64-musl` seem to run out of
disk space when adding the amdgpu LLVM backend. There are changes
underway to free more disk space, but that may take a while, so it was
suggested to switch the affected jobs to a largedisk runner until that
is ready.
2025-02-07 10:23:21 +01:00
MarcoIeni
6021598446
ci: use ubuntu 22 for free arm runners 2025-02-06 18:06:42 +01:00