From 8506bb006040cf8e8cb004202706c81e62ddacee Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Tue, 14 Apr 2020 12:10:58 -0700 Subject: Update the minimum external LLVM to 8 LLVM 8 was released on March 20, 2019, over a year ago. --- src/ci/azure-pipelines/auto.yml | 2 +- src/ci/azure-pipelines/pr.yml | 2 +- src/ci/docker/x86_64-gnu-llvm-7/Dockerfile | 55 ------------------------------ src/ci/docker/x86_64-gnu-llvm-8/Dockerfile | 55 ++++++++++++++++++++++++++++++ src/ci/github-actions/ci.yml | 8 ++--- 5 files changed, 61 insertions(+), 61 deletions(-) delete mode 100644 src/ci/docker/x86_64-gnu-llvm-7/Dockerfile create mode 100644 src/ci/docker/x86_64-gnu-llvm-8/Dockerfile (limited to 'src/ci') diff --git a/src/ci/azure-pipelines/auto.yml b/src/ci/azure-pipelines/auto.yml index 56fe3864204..46d3cf7a38c 100644 --- a/src/ci/azure-pipelines/auto.yml +++ b/src/ci/azure-pipelines/auto.yml @@ -29,7 +29,7 @@ jobs: - template: steps/run.yml strategy: matrix: - x86_64-gnu-llvm-7: + x86_64-gnu-llvm-8: RUST_BACKTRACE: 1 dist-x86_64-linux: {} dist-x86_64-linux-alt: diff --git a/src/ci/azure-pipelines/pr.yml b/src/ci/azure-pipelines/pr.yml index 37c1779b799..1fc8d187242 100644 --- a/src/ci/azure-pipelines/pr.yml +++ b/src/ci/azure-pipelines/pr.yml @@ -29,7 +29,7 @@ jobs: - template: steps/run.yml strategy: matrix: - x86_64-gnu-llvm-7: {} + x86_64-gnu-llvm-8: {} mingw-check: {} x86_64-gnu-tools: CI_ONLY_WHEN_SUBMODULES_CHANGED: 1 diff --git a/src/ci/docker/x86_64-gnu-llvm-7/Dockerfile b/src/ci/docker/x86_64-gnu-llvm-7/Dockerfile deleted file mode 100644 index f70c3de2ece..00000000000 --- a/src/ci/docker/x86_64-gnu-llvm-7/Dockerfile +++ /dev/null @@ -1,55 +0,0 @@ -FROM ubuntu:18.04 - -RUN apt-get update && apt-get install -y --no-install-recommends \ - g++ \ - g++-arm-linux-gnueabi \ - make \ - file \ - curl \ - ca-certificates \ - python2.7 \ - git \ - cmake \ - sudo \ - gdb \ - llvm-7-tools \ - libedit-dev \ - libssl-dev \ - pkg-config \ - zlib1g-dev \ - xz-utils \ - nodejs - -COPY scripts/sccache.sh /scripts/ -RUN sh /scripts/sccache.sh - -# using llvm-link-shared due to libffi issues -- see #34486 -ENV RUST_CONFIGURE_ARGS \ - --build=x86_64-unknown-linux-gnu \ - --llvm-root=/usr/lib/llvm-7 \ - --enable-llvm-link-shared \ - --set rust.thin-lto-import-instr-limit=10 - -ENV SCRIPT python2.7 ../x.py test --exclude src/tools/tidy && \ - # Run the `mir-opt` tests again but this time for a 32-bit target. - # This enforces that tests using `// EMIT_MIR_FOR_EACH_BIT_WIDTH` have - # both 32-bit and 64-bit outputs updated by the PR author, before - # the PR is approved and tested for merging. - # It will also detect tests lacking `// EMIT_MIR_FOR_EACH_BIT_WIDTH`, - # despite having different output on 32-bit vs 64-bit targets. - # - # HACK(eddyb) `armv5te` is used (not `i686`) to support older LLVM than LLVM 9: - # https://github.com/rust-lang/compiler-builtins/pull/311#issuecomment-612270089. - # This also requires `--pass=build` because we can't execute the tests - # on the `x86_64` host when they're built as `armv5te` binaries. - # (we're only interested in the MIR output, so this doesn't matter) - python2.7 ../x.py test src/test/mir-opt --pass=build \ - --target=armv5te-unknown-linux-gnueabi && \ - # Run tidy at the very end, after all the other tests. - python2.7 ../x.py test src/tools/tidy - -# The purpose of this container isn't to test with debug assertions and -# this is run on all PRs, so let's get speedier builds by disabling these extra -# checks. -ENV NO_DEBUG_ASSERTIONS=1 -ENV NO_LLVM_ASSERTIONS=1 diff --git a/src/ci/docker/x86_64-gnu-llvm-8/Dockerfile b/src/ci/docker/x86_64-gnu-llvm-8/Dockerfile new file mode 100644 index 00000000000..58fdc6f2623 --- /dev/null +++ b/src/ci/docker/x86_64-gnu-llvm-8/Dockerfile @@ -0,0 +1,55 @@ +FROM ubuntu:18.04 + +RUN apt-get update && apt-get install -y --no-install-recommends \ + g++ \ + g++-arm-linux-gnueabi \ + make \ + file \ + curl \ + ca-certificates \ + python2.7 \ + git \ + cmake \ + sudo \ + gdb \ + llvm-8-tools \ + libedit-dev \ + libssl-dev \ + pkg-config \ + zlib1g-dev \ + xz-utils \ + nodejs + +COPY scripts/sccache.sh /scripts/ +RUN sh /scripts/sccache.sh + +# using llvm-link-shared due to libffi issues -- see #34486 +ENV RUST_CONFIGURE_ARGS \ + --build=x86_64-unknown-linux-gnu \ + --llvm-root=/usr/lib/llvm-8 \ + --enable-llvm-link-shared \ + --set rust.thin-lto-import-instr-limit=10 + +ENV SCRIPT python2.7 ../x.py test --exclude src/tools/tidy && \ + # Run the `mir-opt` tests again but this time for a 32-bit target. + # This enforces that tests using `// EMIT_MIR_FOR_EACH_BIT_WIDTH` have + # both 32-bit and 64-bit outputs updated by the PR author, before + # the PR is approved and tested for merging. + # It will also detect tests lacking `// EMIT_MIR_FOR_EACH_BIT_WIDTH`, + # despite having different output on 32-bit vs 64-bit targets. + # + # HACK(eddyb) `armv5te` is used (not `i686`) to support older LLVM than LLVM 9: + # https://github.com/rust-lang/compiler-builtins/pull/311#issuecomment-612270089. + # This also requires `--pass=build` because we can't execute the tests + # on the `x86_64` host when they're built as `armv5te` binaries. + # (we're only interested in the MIR output, so this doesn't matter) + python2.7 ../x.py test src/test/mir-opt --pass=build \ + --target=armv5te-unknown-linux-gnueabi && \ + # Run tidy at the very end, after all the other tests. + python2.7 ../x.py test src/tools/tidy + +# The purpose of this container isn't to test with debug assertions and +# this is run on all PRs, so let's get speedier builds by disabling these extra +# checks. +ENV NO_DEBUG_ASSERTIONS=1 +ENV NO_LLVM_ASSERTIONS=1 diff --git a/src/ci/github-actions/ci.yml b/src/ci/github-actions/ci.yml index 813c35cb9d5..df1467ea73a 100644 --- a/src/ci/github-actions/ci.yml +++ b/src/ci/github-actions/ci.yml @@ -259,13 +259,13 @@ jobs: matrix: name: - mingw-check - - x86_64-gnu-llvm-7 + - x86_64-gnu-llvm-8 - x86_64-gnu-tools include: - name: mingw-check <<: *job-linux-xl - - name: x86_64-gnu-llvm-7 + - name: x86_64-gnu-llvm-8 <<: *job-linux-xl - name: x86_64-gnu-tools @@ -349,7 +349,7 @@ jobs: - x86_64-gnu-debug - x86_64-gnu-distcheck - x86_64-gnu-full-bootstrap - - x86_64-gnu-llvm-7 + - x86_64-gnu-llvm-8 - x86_64-gnu-nopt - x86_64-gnu-tools - x86_64-mingw-1 @@ -471,7 +471,7 @@ jobs: - name: x86_64-gnu-full-bootstrap <<: *job-linux-xl - - name: x86_64-gnu-llvm-7 + - name: x86_64-gnu-llvm-8 env: RUST_BACKTRACE: 1 <<: *job-linux-xl -- cgit 1.4.1-3-g733a5