about summary refs log tree commit diff
path: root/src/ci/docker
AgeCommit message (Collapse)AuthorLines
2022-11-19Revert "Update CI to use Android NDK r25b"Alex Pinkus-11/+36
This reverts commit bf7f1ca316a249cf99d722d79a0db12fef687142.
2022-11-20dist-various-2: Use clang for the UEFI targetsNicholas Bishop-0/+6
This fixes an issue where the C and asm sources built by compiler_builtins were being compiled as ELF objects instead of PE objects. This wasn't noticed before because it doesn't cause compiler_builtins or rustc to fail to build. You only see a failure when a program is built that references one of the symbols in an ELF object. Compiling with clang fixes this because the `cc` crate converts the UEFI targets into Windows targets that clang understands, causing it to produce PE objects. Note that this requires compiler_builtins >= 0.1.84. Fixes https://github.com/rust-lang/rust/issues/104326
2022-11-19Rollup merge of #104577 - GuillaumeGomez:remove-focus-on-blur, r=notriddleMatthias Krüger-1/+1
Don't focus on notable trait parent when hiding it I clicked on a notable trait icon so the popup remained and then clicked on the settings menu. When the settings menu was blurred, it scrolled back to when the notable trait was, which isn't great. r? `@notriddle`
2022-11-19Update browser-ui-test version to 0.13.2Guillaume Gomez-1/+1
2022-11-17install the target g++ in armhf-gnuPietro Albini-1/+1
2022-11-16[fuchsia] Document more settings for building RustDavid Koloski-0/+0
2022-11-15Enable profiler in dist-riscv64-linuxAlistair Francis-1/+1
Build the profiler runtime to allow using -C profile-generate and -C instrument-coverage on riscv64-linux. Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
2022-11-15Rollup merge of #103842 - andrewpollack:add-fuchsia-test-script, r=tmandryMatthias Krüger-0/+1041
Adding Fuchsia compiler testing script, docs Adding Fuchsia compiler testing script and related docs updates r? `@tmandry` cc. `@djkoloski`
2022-11-13Rollup merge of #104304 - uweigand:s390x-profiler, r=Mark-SimulacrumManish Goregaokar-1/+1
Enable profiler in dist-s390x-linux Build the profiler runtime to allow using -C profile-generate and -C instrument-coverage on s390x-linux. I've verified in a local build that the runtime builds and the profiler is working fine on the platform.
2022-11-13Rollup merge of #103709 - cuviper:netbsd-9, r=pietroalbiniManish Goregaokar-19/+16
ci: Upgrade dist-x86_64-netbsd to NetBSD 9.0 This is another step in toolchain upgrades for LLVM 16, which will need at least GCC 7.1. Our previous NetBSD 8.0 cross-toolchain used its system GCC 5.5. While there are newer versions available in pkgsrc, I could not get those working for cross-compilation. Upgrading to NetBSD 9.0 gets us GCC 7.4, which is sufficient for now. This will affect the compatibility of the build we ship for `x86_64-unknown-netbsd`, but others may still build their own from source if that is needed. It is expected that NetBSD 8 will reach EOL soon anyway, approximately one month after 10 is released, but there is no firm date for that.
2022-11-11Enable profiler in dist-s390x-linuxUlrich Weigand-1/+1
Build the profiler runtime to allow using -C profile-generate and -C instrument-coverage on s390x-linux. I've verified in a local build that the runtime builds and the profiler is working fine on the platform.
2022-11-11Adding Fuchsia compiler testing script, docsAndrew Pollack-0/+1041
2022-11-09Rollup merge of #104201 - GuillaumeGomez:gui-test-check-file-errors, r=notriddleMichael Goulet-1/+1
Add check in GUI test for file loading failure Since https://github.com/rust-lang/rust/pull/101702, some resources location need to be updated in case their content changed because then their hash will change too. This will prevent errors like https://github.com/rust-lang/rust/pull/104114 to happen again. The second commit is to prevent CORS errors: when a file is linked from a file itself imported, the web browser considers they come from a different domain and therefore triggers the error. The option tells the web browser to ignore this case. cc ```@jsha``` r? ```@notriddle```
2022-11-09Update browser-ui-test version to 0.13.1Guillaume Gomez-1/+1
2022-11-09Rollup merge of #103933 - nicholasbishop:bishop-uefi-tier-2, r=JohnTitorDylan DPC-0/+3
Promote {aarch64,i686,x86_64}-unknown-uefi to Tier 2 MCP: https://github.com/rust-lang/compiler-team/issues/555 CC `@dvdhrm`
2022-11-07Auto merge of #103569 - RalfJung:miri-test-macos, r=Mark-Simulacrumbors-7/+4
fix and (re-)enable Miri cross-target checks on macOS and Windows Fixes https://github.com/rust-lang/rust/issues/103519 r? `@Mark-Simulacrum`
2022-11-04Auto merge of #101703 - nicholasbishop:bishop-add-uefi-ci-2, r=jyn514bors-2/+159
Add QEMU test for x86_64-unknown-uefi The UEFI targets don't have std support yet, so the normal tests don't work. However, we can compile a simple no-std program and run it under QEMU to at least check that the target compiles, links, and runs. Tested locally with: `src/ci/docker/run.sh x86_64-uefi`
2022-11-04Promote {aarch64,i686,x86_64}-unknown-uefi to Tier 2Nicholas Bishop-0/+3
MCP: https://github.com/rust-lang/compiler-team/issues/555
2022-11-01Revert "ci: Bring back ninja for dist builders"Jakub Beránek-5/+4
2022-10-31Rollup merge of #103732 - Mark-Simulacrum:revert-compiler-builtins, r=jyn514Dylan DPC-6/+0
Revert "Make the `c` feature for `compiler-builtins` opt-in instead of inferred" This reverts commit 3acb505ee560770c62bad5362f6caf7567d467b9 (PR #101833). The changes in this commit caused several bugs/incompatibilities (https://github.com/rust-lang/rust/pull/101833#issuecomment-1270191721, https://github.com/rust-lang/rust/issues/102560). For now we're reverting this commit and will re-land it alongside fixes for those bugs. Re-opens #101172 cc #102560 cc #102579
2022-10-30Auto merge of #103295 - ishitatsuyuki:ninja, r=cuviperbors-4/+5
ci: Bring back ninja for dist builders The primary reason for this is that make can result in a substantial under utilization of parallelism (noticed while testing on a workstation), mostly due to the submake structure preventing good dependency tracking and scheduling. In f758c7b2a78 (Debian 6 doesn't have ninja, so use make for the dist builds) llvm.ninja was disabled due to lack of distro package. This is no longer the case with the CentOS 7 base, so bring ninja back for a performance boost.
2022-10-30skip bootstrap target sanity checks when testing MiriRalf Jung-7/+4
2022-10-29Drop miri cross-compile check for WindowsMark Rousskov-1/+5
2022-10-29Revert "Make the `c` feature for `compiler-builtins` opt-in instead of inferred"Mark Rousskov-6/+0
This reverts commit 3acb505ee560770c62bad5362f6caf7567d467b9 (PR #101833). The changes in this commit caused several bugs or at least incompatibilies. For now we're reverting this commit and will re-land it alongside fixes for those bugs.
2022-10-28Upgrade dist-x86_64-netbsd to NetBSD 9.0Josh Stone-19/+16
2022-10-25Auto merge of #103392 - RalfJung:miri, r=oli-obkbors-0/+5
update Miri I had to use a hacked version of josh to create this, so let's be careful with merging this and maybe wait a bit to see if the josh issue becomes more clear. But the history looks good to me, we are not adding duplicates of rustc commits that were previously mirrored to Miri. Also I want to add some cross-testing of Miri in x.py.
2022-10-25Miri: disable macOS testing for nowRalf Jung-1/+2
2022-10-24add support for testing Miri on other targets, and do some cross-testing on CIRalf Jung-0/+4
2022-10-23Auto merge of #103062 - cuviper:dist-mips, r=Mark-Simulacrumbors-88/+3345
Upgrade dist-mips*-linux to ubuntu:22.04 + crosstool-ng These have no change in compatibility, still Linux 4.4 and glibc 2.23. The main motivation for upgrading is that LLVM 16 will require at least GCC 7.1. Using crosstool-ng lets us choose our own toolchain versions, and then the Ubuntu version doesn't matter so much, just for the host compilation while we cross-compile.
2022-10-23Add `rust.lto` config optionJakub Beránek-1/+2
2022-10-20ci: Use ninja in build-clang.shTatsuyuki Ishi-2/+3
Now that we have brought ninja back to the installed base packages, we can use it for the initial Clang build as well.
2022-10-20ci: Bring back ninja for dist buildersTatsuyuki Ishi-2/+2
The primary reason for this is that make can result in a substantial under utilization of parallelism, mostly due to the submake structure preventing good dependency tracking and scheduling. In f758c7b2a78 (Debian 6 doesn't have ninja, so use make for the dist builds) llvm.ninja was disabled due to lack of distro package. This is no longer the case with the CentOS 7 base, so bring ninja back for a performance boost.
2022-10-19Update browser-ui-test version to 0.12.7Guillaume Gomez-1/+1
2022-10-17Update browser-ui-test version to 0.12.6Guillaume Gomez-1/+1
2022-10-16Update browser-ui-test version to 0.12.5Guillaume Gomez-1/+1
2022-10-14Rollup merge of #103047 - GuillaumeGomez:update-browser-ui-test, r=notriddleMatthias Krüger-1/+1
Update browser-ui-test version to fix some flaky tests Part of #93784. It should fix the new spurious failure found in https://github.com/rust-lang/rust/pull/102744. r? ``@notriddle``
2022-10-14Upgrade dist-mips*-linux to ubuntu:22.04 + crosstool-ngJosh Stone-88/+3345
These have no change in compatibility, still Linux 4.4 and glibc 2.23.
2022-10-14Update browser-ui-test version to fix some flaky testsGuillaume Gomez-1/+1
2022-10-14checktools: fix commentsRalf Jung-1/+3
2022-10-13Update browser-ui-test version to 0.12.3Guillaume Gomez-1/+1
2022-10-10Rollup merge of #102888 - GuillaumeGomez:improve-search-color-check, r=notriddleMatthias Krüger-1/+1
Improve rustdoc-gui search-color test Thanks to the add of "functions" in `browser-ui-test`, we can start to reduce the size of the scripts. It'll be very useful for all color checks. r? `@notriddle`
2022-10-10Update browser-ui-test version to 0.12.2Guillaume Gomez-1/+1
2022-10-10Auto merge of #94381 - Kobzol:llvm-bolt, r=Mark-Simulacrumbors-2/+2
Use BOLT in CI to optimize LLVM This PR adds an optimization step in the Linux `dist` CI pipeline that uses [BOLT](https://github.com/llvm/llvm-project/tree/main/bolt) to optimize the `libLLVM.so` library built by boostrap. Steps: - [x] Use LLVM 15 as a bootstrap compiler and use it to build BOLT - [x] Compile LLVM with support for relocations (`-DCMAKE_SHARED_LINKER_FLAGS="-Wl,-q"`) - [x] Gather profile data using instrumented LLVM - [x] Apply profile to LLVM that has already been PGOfied - [x] Run with BOLT profiling on more benchmarks - [x] Decide on the order of optimization (PGO -> BOLT?) - [x] Decide how we should get `bolt` (currently we use the host `bolt`) - [x] Clean up The latest perf results can be found [here](https://github.com/rust-lang/rust/pull/94381#issuecomment-1258269440). The current CI build time with BOLT applied is around 1h 55 minutes.
2022-10-09Auto merge of #102332 - chriswailes:ndk-update, r=chriswailesbors-36/+11
Update CI to use Android NDK r25b This commit updates the CI definitions to use the most recent Android LTS NDK release: r25b. Changes since the last NDK used by Rust negate the need to generate "standalone toolchains" and newer NDKs can be used in-place. See https://developer.android.com/ndk/guides/other_build_systems#overview
2022-10-09Use BOLT in x64 dist CI to optimize LLVMJakub Beránek-2/+2
2022-10-07Update browser-ui-test versionGuillaume Gomez-1/+1
2022-10-06Disable compressed debug sections on i586-gnuJosh Stone-1/+5
Compressed debug is enabled by default for gas (assembly) on Linux/x86 targets, and we started building our own in #102530, but that made our `compiler_builtins` incompatible with binutils < 2.32. Add an explicit option to disable that in our crosstool-ng config. Fixes #102703.
2022-10-04Update CI to use Android NDK r25bChris Wailes-36/+11
This commit updates the CI definitions to use the most recent Android LTS NDK release: r25b. Changes since the last NDK used by Rust negate the need to generate "standalone toolchains" and newer NDKs can be used in-place. See https://developer.android.com/ndk/guides/other_build_systems#overview
2022-09-30Upgrade dist-i586-gnu-i586-i686-musl to ubuntu:22.04Josh Stone-6/+797
The system GCC 5 in ubuntu:16.04 will be too old to compile LLVM 16, so we need an upgrade. To avoid raising the minimum glibc requirements for `i586-unknown-linux-gnu`, this target is converted to a crosstool-ng toolchain, *relaxing* it to the same Linux 3.2 / glibc 2.17 minimum we use elsewhere. The musl targets still use Ubuntu's system toolchain, but this doesn't have the same compatibility concerns.
2022-09-29Auto merge of #101833 - jyn514:cross-compile-compiler-builtins, ↵bors-0/+6
r=Mark-Simulacrum Make the `c` feature for `compiler-builtins` an explicit opt-in Its build script doesn't support cross-compilation. I tried fixing it, but the cc crate itself doesn't appear to support cross-compiling to windows either unless you use the -gnu toolchain: ``` error occurred: Failed to find tool. Is `lib.exe` installed? ``` Fixes https://github.com/rust-lang/rust/issues/101172.