about summary refs log tree commit diff
path: root/src/ci/docker/host-x86_64
AgeCommit message (Collapse)AuthorLines
2025-04-25Rollup merge of #140148 - marcoieni:ci-aws-codebuild, r=KobzolMatthias Krüger-1/+1
CI: use aws codebuild for job dist-arm-linux try-job: dist-arm-linux
2025-04-23Update browser-ui-test version to 0.20.6Guillaume Gomez-1/+1
2025-04-23CI: use aws codebuild for job dist-arm-linuxMarcoIeni-1/+1
2025-04-20Remove the `add_dummy_commit.sh` hackJakub Beránek-4/+2
The new git tests should be enough to check this scenario. We should ideally not be creating dummy commits on CI.
2025-04-14ci: add runners for vanilla LLVM 20Josh Stone-0/+69
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-08Rollup merge of #139386 - onur-ozkan:configurable-compiletest-libtest, ↵Stuart Cook-0/+2
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-07enable in-tree std on some runnersonur-ozkan-0/+2
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-05Update the minimum external LLVM to 19Josh Stone-69/+1
2025-04-02Demote i686-pc-windows-gnu to Tier 2Noratrieb-2/+1
In accordance with RFC 3771. I also added a stub doc page for the target and renamed the windows-gnullvm page for consistency.
2025-03-21Disable CI mode when checking default bootstrap profilesJakub Beránek-1/+2
2025-03-16Auto merge of #137011 - LuuuXXX:promote-ohos-with-host-tools, r=Amanieubors-2/+16
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-15Rollup merge of #138507 - Kobzol:netbsd-mirror, r=Mark-SimulacrumLeón Orell Valerian Liehr-17/+9
Mirror NetBSD sources Should avoid issues with NetBSD servers. r? ``@Mark-Simulacrum`` try-job: `*netbsd*`
2025-03-15Rollup merge of #138451 - Kobzol:gcc-ci-build-gcc, r=GuillaumeGomezLeón Orell Valerian Liehr-1/+3
Build GCC on CI with GCC, not Clang It seems that GCC built with Clang misbehaves. I have tested that cg_gcc tests [pass](https://github.com/rust-lang/rust/actions/runs/13842365913/job/38732750617?pr=138451) on CI with a downloaded GCC that was built in this way. Prerequisite for https://github.com/rust-lang/rust/pull/138395. r? ```@ghost```
2025-03-14Mirror NetBSD sourcesJakub Beránek-17/+9
2025-03-14Remove `RUN_CHECK_WITH_PARALLEL_QUERIES`Jakub Beránek-3/+0
It is useless after the removal of the parallel compiler configuration.
2025-03-13Use GCC for building GCCJakub Beránek-1/+3
2025-03-04add support for extend rust tools and sanitizerLuuuXXX-1/+4
2025-03-04Revert "add fix for full tools and sanitizer"LuuuXXX-4/+1
This reverts commit 6efacfb7a59ebde2620398861713fae136060a04.
2025-03-04add fix for full tools and sanitizerLuuuXXX-1/+4
2025-03-04promote ohos targets to tier to with host toolsLuuuXXX-1/+12
2025-02-28Build GCC on the Linux x64 dist runnerJakub Beránek-1/+1
2025-02-26Auto merge of #136921 - Kobzol:gcc-build, r=onur-ozkanbors-9/+1
Build GCC on CI Previously, we have downloaded a specific commit of GCC and prebuilt it inside Docker using the `build-gccjit.sh` script. This PR removes that scripts and uses the bootstrap GCC step. This allows us to use the `src/gcc` submodule for determining which GCC should be built, and it also moves the logic closer to LLVM, which is also built by bootstrap. A few things to note: - The `sccache` option is currently in the `llvm` block, so the GCC build uses `llvm.ccache`, which is a bit weird :) We could either add `gcc.ccache`, or (what I think would be better) to just move `ccache` to the `build` section, as I don't think that it will be necessary to use ccache for LLVM, but not for GCC. - When the GCC codegen backend is built, it needs to depend on a step that first builds GCC. This is currently done in a hacky way. The proper solution is to create a separate step for the GCC codegen backend, but that is a larger change. Let me know what you think. r? `@onur-ozkan` try-job: i686-msvc-1 try-job: x86_64-mingw-1
2025-02-24Update browser-ui-test version to `0.20.3`Guillaume Gomez-1/+1
2025-02-17Default to the medium code model for the loongarch64-linux toolchainsWANG Rui-0/+4
The medium code model is already the default on the Rust side. Make sure that linked in C objects (e.g. from glibc) also use medium code model.
2025-02-15Install bzip2Jakub Beránek-0/+1
It is apparently required to download GCC dependencies.
2025-02-14Remove `build-gccjit.sh` scriptJakub Beránek-9/+0
2025-02-10Rollup merge of #136628 - heiher:crosstool-ng-1.27, r=Mark-SimulacrumMatthias Krüger-6/+6
ci: upgrade to crosstool-ng 1.27.0 try-job: dist-loongarch64-linux try-job: dist-loongarch64-musl try-job: dist-powerpc64le-linux
2025-02-07Rollup merge of #136582 - asomers:revert-132232, r=tgross35Matthias Krüger-6/+6
Revert "CI: build FreeBSD artifacts on FreeBSD 13.4" This reverts commit cf34545720986d99712e3b542e8f395360c75095. That commit led to a regression of https://github.com/rust-lang/rust/issues/132185 . So my analysis that the problem lay in FreeBSD 13.2's specific LLVM version was clearly wrong. Revert that commit until we can figure out the real root cause. Fixes #132185 try-job: dist-x86_64-freebsd try-job: dist-various-2
2025-02-06ci: upgrade to crosstool-ng 1.27.0WANG Rui-6/+6
2025-02-05Update browser-ui-test version to `0.20.2`Guillaume Gomez-1/+1
2025-02-05fixup: fix the compiler path in one more DockerfileAlan Somers-3/+3
2025-02-05Revert "CI: build FreeBSD artifacts on FreeBSD 13.4"Alan Somers-3/+3
This reverts commit cf34545720986d99712e3b542e8f395360c75095. That commit led to a regression of https://github.com/rust-lang/rust/issues/132185 . So my analysis that the problem lay in FreeBSD 13.2's specific LLVM version was clearly wrong. Revert that commit until we can figure out the real root cause. Fixes #132185
2025-01-29Rollup merge of #136161 - notriddle:typescript, r=GuillaumeGomezLeón Orell Valerian Liehr-2/+3
rustdoc: add nobuild typescript checking to our JS By nobuild, I mean that the type annotations are all [in comments], not in the "native" typescript syntax. This is a bit uglier, but it lets you rapid-prototype without tsc, works with all the native browser debugging tools, and keeps Node out of Rust's bootstrap chain. [in comments]: https://news.ycombinator.com/item?id=35892250 This pull request mostly just adds ts-ignore annotations and type declarations. To actually take good advantage of typescript, we'll want to "burn down" this pile of unsafe code until we eventually have a version with almost none of these. This PR also adds tsc to the mingw-check Dockerfile, so that it can't fall out of date like the Closure annotations did. https://rust-lang.zulipchat.com/#narrow/channel/266220-t-rustdoc/topic/typescript r? `@GuillaumeGomez` `@lolbinarycat`
2025-01-27rustdoc: add nobuild typescript checking to our JSMichael Howell-2/+3
By nobuild, I mean that the type annotations are all in comments, not in the "native" typescript syntax. This is a bit uglier, but it lets you rapid-prototype without tsc, works with all the native browser debugging tools, and keeps Node out of Rust's bootstrap chain. This pull request mostly just adds ts-ignore annotations and type declarations. To actually take good advantage of typescript, we'll want to "burn down" this pile of unsafe code until we eventually have a version with almost none of these. This PR also adds tsc to the mingw-check Dockerfile, so that it can't fall out of date like the Closure annotations did. https://rust-lang.zulipchat.com/#narrow/channel/266220-t-rustdoc/topic/typescript
2025-01-27Fix 2/4 tests skipped by opt-distBen Kimock-0/+2
2025-01-24Rollup merge of #135638 - Kobzol:gcc-ci, r=onur-ozkanMatthias Krüger-0/+1
Make it possible to build GCC on CI This is the first step towards eventually enabling download of precompiled GCC from our CI. Currently, we prebuild `libgccjit` on CI and cache it in Docker. This PR improves the bootstrap GCC step to make it work on CI, and also to make it faster by using sccache. After this change, an actual build on CI should take only 2-3 minutes. Note that this PR does not yet remove the `build-gccjit.sh` script and replace it with the bootstrap step, I'll leave that to a follow-up PR. The added `flex` package and the ZSTD library fix were needed to make GCC build on CI. CC ``````@GuillaumeGomez`````` r? ``````@onur-ozkan``````
2025-01-21Rollup merge of #132232 - asomers:fbsd-13.4, r=Mark-SimulacrumMatthias Krüger-6/+6
CI: build FreeBSD artifacts on FreeBSD 13.4 13.2 is EoL, and 13.3 will be EoL too in about 2 months. Plus, both suffer from a bug in LLVM's libunwind. It causes a segfault inside of std::backtrace::Backtrace::capture(). Fixes #132185 cc ``````@ehuss`````` . before you can do the trybuild, you'll also have to download new FreeBSD 13.4 base.txz images and place them in https://ci-mirrors.rust-lang.org/rustc , then update this PR with the correct file names. try-job: dist-x86_64-freebsd try-job: dist-various-2
2025-01-21Make it possible to build GCC on CIJakub Beránek-0/+1
This is the first step to enable download of precompiled GCC
2025-01-19Rollup merge of #135640 - Gelbpunkt:drop-mips-glibc-patches, r=KobzolMatthias Krüger-119/+0
Drop MIPS glibc 2.23 patches that reside in crosstool-ng now These patches were added to crosstool-ng in https://github.com/crosstool-ng/crosstool-ng/commit/b88d3385162415294cba57e7b4cecc03259548fb and are therefore duplicate and fail to apply, breaking builds of `dist-mips*-linux`. I have compile tested `dist-mipsel-linux`, I assume the other targets will work just as fine now.
2025-01-19Rollup merge of #135623 - marcoieni:mingw-check-tidy-dockerfile, r=KobzolMatthias Krüger-1/+3
ci: use ghcr ubuntu image for mingw-check-tidy
2025-01-18Bump Fuchsia integration commitErick Tryzelaar-1/+1
This advances Fuchsia to a checkout from 2025-01-13, which corresponds to a recent Rust roll, and hopefully avoids #135667, where a repository used by the older version of Rust was accidentally archived and broke checking out the prior version. try-job: x86_64-fuchsia
2025-01-17Drop MIPS glibc 2.23 patches that reside in crosstool-ng nowJens Reidel-119/+0
Signed-off-by: Jens Reidel <adrian@travitia.xyz>
2025-01-17ci: use ghcr ubuntu image for mingw-check-tidyMarcoIeni-1/+3
2025-01-12Fixup: fix clang command lines in another fileAlan Somers-3/+3
2025-01-11ci: Organise shared helper scriptsKajetan Puchalski-218/+19
Move shared helper scripts used by Docker builds under docker/scripts.
2025-01-10ci: Move dist-aarch64-linux to an aarch64 runnerKajetan Puchalski-42/+0
Move the dist-aarch64-linux CI job to an aarch64 runner instead of cross-compiling it from an x86 one. This will make it possible to perform optimisations such as LTO, PGO and BOLT later on.
2025-01-06chore: remove redundant words in commentcrystalstall-1/+1
Signed-off-by: crystalstall <crystalruby@qq.com>
2024-12-31Enable Python formatting checks in tidy on CIJakub Beránek-1/+1
2024-12-27Auto merge of #134690 - clubby789:ci-clang-lto, r=Kobzolbors-2/+11
CI: Add LTO support to clang in dist-x86_64-linux After https://github.com/rust-lang/cc-rs/pull/1279, we attempt to pass `-flto=thin` to clang. In `dist-x86_64-linux`, we don't build clang with the `LLVMgold.so` library so this fails. This attempts to resolve this First, pass the binutils plugin include directory to Clang, [which will build the library](https://github.com/llvm/llvm-project/blob/2d6d723a85c2d007b0359c206d66cd2e5a9f00e1/llvm/docs/GoldPlugin.rst#how-to-build-it) Second, this library depends on the *version of libstdc++ that we built* specifically. However, despite both the RPATH and LD_LIBRARY_PATH pointing to `/rustroot/lib`, we incorrectly resolve to the system libstdc++, which doesn't load. ``` # LD_DEBUG=libs,files 2219: file=libstdc++.so.6 [0]; needed by /rustroot/bin/../lib/LLVMgold.so [0] 2219: find library=libstdc++.so.6 [0]; searching 2219: search path=/rustroot/bin/../lib/../lib (RPATH from file /rustroot/bin/../lib/LLVMgold.so) 2219: trying file=/rustroot/bin/../lib/../lib/libstdc++.so.6 2219: search path=/usr/lib64/tls:/usr/lib64 (system search path) 2219: trying file=/usr/lib64/tls/libstdc++.so.6 2219: trying file=/usr/lib64/libstdc++.so.6 ``` Using `LD_PRELOAD` causes it to correctly load the library I think this is probably not the most maintainable way to do this, so opening to see if this is desired and if there's a better way of doing this
2024-12-27Add LTO support to clang in CIclubby789-2/+11