Commit graph

2229 commits

Author SHA1 Message Date
Matthias Krüger
ca5dfa74f1
Rollup merge of #133801 - Gelbpunkt:powerpc64le-unknown-linux-musl-tier-2, r=jieyouxu,Urgau,Kobzol
Promote powerpc64le-unknown-linux-musl to tier 2 with host tools

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

I'm using crosstool-ng for building a toolchain because GCC 9 from `musl-toolchain.sh` has float ABI issues (?) and can't compile LLVM, and writing a crosstool-ng config for a target feels less hacky than yet another target specific shell script. I also defined a kernel version, since there wasn't one specified before. If a lower version is desired, just let me know. I also tried to match the rust configure args with the loongarch64 musl tier 2 target.

The resulting compiler works fine, built with `DEPLOY=1 ./src/ci/docker/run.sh dist-powerpc64le-linux` and tested on Alpine Linux in a VM and on a bare metal POWER8 machine:
```
qemu-ppc64le:/tmp/rust-nightly-powerpc64le-unknown-linux-musl$ ash install.sh
install: creating uninstall script at /usr/local/lib/rustlib/uninstall.sh
install: installing component 'rustc'
install: installing component 'rust-std-powerpc64le-unknown-linux-musl'
install: installing component 'cargo'
install: installing component 'rustfmt-preview'
install: installing component 'rls-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-powerpc64le-unknown-linux-musl'
install: installing component 'llvm-bitcode-linker-preview'
install: WARNING: failed to run ldconfig. this may happen when not installing as root. run with --verbose to see the error

    rust installed.

qemu-ppc64le:~$ echo 'fn main() { println!("hello world"); }' > test.rs
qemu-ppc64le:~$ rustc test.rs
qemu-ppc64le:~$ ./test
hello world
qemu-ppc64le:~$ file test
test: ELF 64-bit LSB executable, 64-bit PowerPC or cisco 7500, OpenPOWER ELF V2 ABI, version 1 (SYSV), statically linked, BuildID[sha1]=596ee6abf9add487ebc54fb71c2076fb6faea013, with debug_info, not stripped
```

try-job: dist-powerpc64le-linux
2024-12-17 22:34:41 +01:00
bors
52f4785f80 Auto merge of #134132 - MarcoIeni:linux-4c-to-ubuntu-22, r=Kobzol
CI: update linux 4c from ubuntu 20 to ubuntu 22
2024-12-17 01:49:31 +00:00
bors
13b77c687c Auto merge of #134095 - Kobzol:datadog-lockfile, r=MarcoIeni
[CI] Use a lockfile for installing the `datadog` package

Without a lockfile, it could fail to compile when the dependencies have changed. Reported [here](https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/CI.20failure.20in.20DataDog.20upload).

r? `@jdno`

try-job: x86_64-msvc-ext2
2024-12-16 23:07:24 +00:00
Matthias Krüger
0ff00b6adb
Rollup merge of #134124 - MarcoIeni:split-llvm-jobs, r=Kobzol
CI: use free runners for x86_64-gnu-llvm jobs

try-job: x86_64-gnu-llvm-19-1
try-job: x86_64-gnu-llvm-19-2
try-job: x86_64-gnu-llvm-19-3
try-job: x86_64-gnu-llvm-18-1
try-job: x86_64-gnu-llvm-18-2
try-job: x86_64-gnu-llvm-18-3
2024-12-16 20:00:09 +01:00
Jakub Beránek
6e22b84296
[CI] Use a lockfile for installing the datadog package
Without a lockfile, it could fail to compile when the dependencies have changed.
2024-12-16 12:35:09 +01:00
Matthias Krüger
352e3232b9
Rollup merge of #134227 - alexcrichton:update-wasi-sdk, r=lqd
Update wasi-sdk used to build WASI targets

Bump to the latest wasi-sdk-25 release which brings in various wasi-libc updates as well as LLVM 19 as the version used to compile wasi-libc.

- https://github.com/WebAssembly/wasi-sdk/releases/tag/wasi-sdk-24
- https://github.com/WebAssembly/wasi-sdk/releases/tag/wasi-sdk-25
2024-12-14 14:07:58 +01:00
Alex Crichton
6b93fac9ff Update wasi-sdk used to build WASI targets
Bump to the latest wasi-sdk-25 release which brings in various wasi-libc
updates as well as LLVM 19 as the version used to compile wasi-libc.
2024-12-12 11:00:02 -08:00
MarcoIeni
ac078a4ccc
fix path 2024-12-12 19:34:45 +01:00
MarcoIeni
4fa9078b17
fix path 2024-12-12 19:19:04 +01:00
MarcoIeni
a67a71da18
add files 2024-12-12 18:34:20 +01:00
MarcoIeni
c2f45505f5
remove echo 2024-12-12 18:18:23 +01:00
MarcoIeni
2bf1cec41b
refactor 2024-12-12 18:07:47 +01:00
MarcoIeni
a1abbaab0d
remove echo logs 2024-12-12 18:02:19 +01:00
MarcoIeni
aa0fd4621e
copy script 2024-12-12 14:49:59 +01:00
MarcoIeni
7ce2944ef9
test stage 1 in separate job 2024-12-12 12:59:30 +01:00
Steven Grady
f39e813c0f
Bump Fuchsia 2024-12-11 16:35:43 -08:00
MarcoIeni
1f38572e57
fix 2024-12-11 17:43:12 +01:00
MarcoIeni
fee220a900
fix 2024-12-11 15:21:03 +01:00
MarcoIeni
eec9bcf163
more debug 2024-12-11 12:47:58 +01:00
MarcoIeni
9ed728d19e
debug 2024-12-11 12:31:13 +01:00
MarcoIeni
754fb24313
debug 2024-12-11 11:54:12 +01:00
MarcoIeni
d74de1fdb1
debug 2024-12-11 11:43:11 +01:00
MarcoIeni
a8bc3cf38b
fix 2024-12-11 11:36:39 +01:00
MarcoIeni
abd8352de7
restore command 2024-12-11 11:29:18 +01:00
MarcoIeni
84ba41dcd8
remove unnecessary change 2024-12-11 11:21:21 +01:00
MarcoIeni
bb88d7a0f1
fix 2024-12-11 11:09:32 +01:00
MarcoIeni
4f0e7816cd
split better 2024-12-11 10:29:59 +01:00
MarcoIeni
89ad1ace57
CI: update linux 4c from ubuntu 20 to ubuntu 22 2024-12-10 15:34:43 +01:00
MarcoIeni
e67e9b448e
fix 2024-12-10 15:17:24 +01:00
MarcoIeni
577b5f387f
CI: use free runners for x86_64-gnu-llvm jobs 2024-12-10 13:14:44 +01:00
bors
b597d2a099 Auto merge of #133902 - Kobzol:ci-dist-arm-runner, r=MarcoIeni
CI: move `dist-arm-linux` to an ARM runner

First, I want to test whether we could actually move this to a free runner, vs moving to the 8-core ARM runner.

Fixes: https://github.com/rust-lang/infra-team/issues/181

r? `@MarcoIeni`

try-job: dist-arm-linux
2024-12-10 07:44:46 +00:00
Jens Reidel
286de9f740
Move dist-powerpc64le-linux to job-linux-4c-largedisk
Signed-off-by: Jens Reidel <adrian@travitia.xyz>
2024-12-09 17:05:27 +01:00
Jakub Beránek
9490297538 Rename the ARM runner YAML anchor
To make it more consistent with the rest of the anchors.
2024-12-06 15:31:07 +01:00
Jakub Beránek
a5855516f4 CI: move dist-arm-linux to an ARM runner 2024-12-06 15:31:07 +01:00
Jens Reidel
68ce6596ec
Promote powerpc64le-unknown-linux-musl to tier 2 with host tools
MCP: https://github.com/rust-lang/compiler-team/issues/803

Signed-off-by: Jens Reidel <adrian@travitia.xyz>
2024-12-06 04:35:21 +01:00
Guillaume Gomez
9765a4ee75
Rollup merge of #133827 - ojeda:ci-rfl, r=lqd
CI: rfl: move job forward to Linux v6.13-rc1

Linux v6.13-rc1 contains commit 28e848386b92 ("rust: block: fix formatting of `kernel::block::mq::request` module"), which in turn contains commit c95bbb59a9b2 ("rust: enable arbitrary_self_types and remove `Receiver`"), which is why we had a hash rather than a tag.

r? ```@Kobzol``` ```@lqd```
try-job: x86_64-rust-for-linux
```@rustbot``` label A-rust-for-linux
```@bors``` try
2024-12-05 23:47:11 +01:00
Guillaume Gomez
5a9c9ef541
Rollup merge of #133821 - Kobzol:replace-black-with-ruff, r=onur-ozkan
Replace black with ruff in `tidy`

`ruff` can both lint and format Python code (in fact, it should be a mostly drop-in replacement for `black` in terms of formatting), so it's not needed to use `black` anymore. This PR removes `black` and replaces it with `ruff`, to get rid of one Python dependency, and also to make Python formatting faster (although that's a small thing).

If we decide to merge this, we'll need to "reformat the world" - `ruff` is not perfectly compatible with `black`, and it also looks like `black` was actually ignoring some files before. I tried it locally (`./x test tidy --extra-checks=py:fmt --bless`) and it also reformatted some code in subtrees (e.g. `clippy` or `rustc_codegen_gcc`) - I'm not sure how to handle that.
2024-12-05 23:47:11 +01:00
Guillaume Gomez
7416c33780
Rollup merge of #133256 - MarcoIeni:use-linux-free-runners, r=Kobzol
CI: use free runners for i686-gnu jobs

try-job: i686-gnu-1
try-job: i686-gnu-2
try-job: i686-gnu-nopt-1
try-job: i686-gnu-nopt-2
2024-12-05 23:47:09 +01:00
Guillaume Gomez
32e6826a95 Update browser-ui-test version to 0.18.2 2024-12-05 22:50:21 +01:00
Jakub Beránek
536516f949
Reformat Python code with ruff 2024-12-04 23:03:44 +01:00
Miguel Ojeda
7cc6f4da88 CI: rfl: move job forward to Linux v6.13-rc1
Linux v6.13-rc1 contains commit 28e848386b92 ("rust: block: fix formatting
of `kernel::block::mq::request` module"), which in turn contains commit
c95bbb59a9b2 ("rust: enable arbitrary_self_types and remove `Receiver`"),
which is why we had a hash rather than a tag.

Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
2024-12-03 23:39:47 +01:00
MarcoIeni
b81391ec76
CI: use free runners for i686-gnu jobs 2024-12-03 08:17:33 +01:00
Rémy Rakic
70e0d5893f build rustc with 1 CGU on aarch64-apple-darwin 2024-12-02 11:48:39 +00:00
bors
1555074ca9 Auto merge of #133532 - rami3l:ci/bump-ubuntu, r=Kobzol
Bump unsupported `ubuntu` CI images to 24.04 LTS

Closes #133531.

try-job: arm-android
try-job: dist-android
try-job: dist-ohos
2024-12-01 16:57:16 +00:00
MarcoIeni
5b9a77a09d
CI: split x86_64-mingw job 2024-11-29 16:04:12 +01:00
rami3l
cddc8318f5 Bump unsupported ubuntu CI images to 24.04 LTS 2024-11-28 12:27:55 +08:00
Matthias Krüger
04d633366d
Rollup merge of #133453 - ferrocene:check-license-metadata, r=Kobzol
Commit license-metadata.json to git and check it's correct in CI

This PR adds `license-metadata.json` to the root of the git repo, and changes `mingw-check` to check that the file is still up-to-date.

By committing this file, we remove the need for developers to a) have reuse installed or b) run an expensive ~90 second analysis of the files on disk when they want generate the COPYRIGHT.html files which depend on this license metadata.

The file will need updating whenever `REUSE.toml` changes, or when git submodules are added, or when git submodules change their license information (as detected by REUSE).

You can now run:

* `./x run collect-license-metadata` to update the `./license-metadata.json` file
* `./x test collect-license-metadata` to test the `./license-metadata.json` file for correctness

The comparison is done with two `serde_json::Value` objects, so the map objects they contain should ignore differences in ordering.
2024-11-27 08:13:48 +01:00
Matthias Krüger
21f6ef577b
Rollup merge of #133248 - MarcoIeni:x86_64-msvc-ext-free, r=Kobzol
CI: split x86_64-msvc-ext job

try-job: x86_64-msvc-ext1
try-job: x86_64-msvc-ext3
2024-11-27 08:13:46 +01:00
Matthias Krüger
ee2d862212
Rollup merge of #132979 - onur-ozkan:skip-exact, r=jieyouxu,tgross35
use `--exact` on `--skip` to avoid unintended substring matches

Without the `--exact` flag, using `--skip tests/rustdoc` can unintentionally skip other tests that match as substrings such as `rustdoc-gui`, `rustdoc-js`, etc.

For debugging, run: `./x.py --stage 2 test rustdoc-ui --skip tests/rustdoc` and `./x.py --stage 2 test rustdoc-ui --skip tests/rustdoc -- --exact`

Resolves https://github.com/rust-lang/rust/issues/117721

try-job: x86_64-apple-1
2024-11-27 08:13:46 +01:00
Jonathan Pallant
587369b95e
Run the license-metadata check in CI.
This will tell you if license-metadata.json is out of date.
2024-11-25 14:15:08 +00:00