Auto merge of #118463 - cuviper:restore-cg_gcc-ci, r=cuviper,GuillaumeGomez
Re-enable `rustc_codegen_gcc` tests in CI When #117947 dropped llvm-15 from CI, we neglected to copy #117313's changes to enable `rustc_codegen_gcc` testing to the new base llvm-16. This is now restored, as well as copying the setup to llvm-17 as well so we hopefully won't miss it next time. In addition, due to case mismatch in `$extra_env` updates in `docker/run.sh`, I think it wasn't actually getting enabled before, but this should now be fixed. I also avoided the linker hack for `libgccjit.so` that was present before, because that's not needed if the version matches the base `gcc` used for linking. r? GuillaumeGomez
This commit is contained in:
commit
b9540b7db9
@ -24,8 +24,11 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
xz-utils \
|
xz-utils \
|
||||||
nodejs \
|
nodejs \
|
||||||
mingw-w64 \
|
mingw-w64 \
|
||||||
|
libgccjit-12-dev \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# Note: libgccjit needs to match the default gcc version for the linker to find it.
|
||||||
|
|
||||||
# Install powershell (universal package) so we can test x.ps1 on Linux
|
# Install powershell (universal package) so we can test x.ps1 on Linux
|
||||||
RUN curl -sL "https://github.com/PowerShell/PowerShell/releases/download/v7.3.1/powershell_7.3.1-1.deb_amd64.deb" > powershell.deb && \
|
RUN curl -sL "https://github.com/PowerShell/PowerShell/releases/download/v7.3.1/powershell_7.3.1-1.deb_amd64.deb" > powershell.deb && \
|
||||||
dpkg -i powershell.deb && \
|
dpkg -i powershell.deb && \
|
||||||
|
@ -24,8 +24,11 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
xz-utils \
|
xz-utils \
|
||||||
nodejs \
|
nodejs \
|
||||||
mingw-w64 \
|
mingw-w64 \
|
||||||
|
libgccjit-13-dev \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# Note: libgccjit needs to match the default gcc version for the linker to find it.
|
||||||
|
|
||||||
# Install powershell (universal package) so we can test x.ps1 on Linux
|
# Install powershell (universal package) so we can test x.ps1 on Linux
|
||||||
RUN curl -sL "https://github.com/PowerShell/PowerShell/releases/download/v7.3.1/powershell_7.3.1-1.deb_amd64.deb" > powershell.deb && \
|
RUN curl -sL "https://github.com/PowerShell/PowerShell/releases/download/v7.3.1/powershell_7.3.1-1.deb_amd64.deb" > powershell.deb && \
|
||||||
dpkg -i powershell.deb && \
|
dpkg -i powershell.deb && \
|
||||||
|
@ -269,14 +269,9 @@ touch $objdir/${SUMMARY_FILE}
|
|||||||
|
|
||||||
extra_env=""
|
extra_env=""
|
||||||
if [ "$ENABLE_GCC_CODEGEN" = "1" ]; then
|
if [ "$ENABLE_GCC_CODEGEN" = "1" ]; then
|
||||||
extra_env="$EXTRA_ENV --env ENABLE_GCC_CODEGEN=1"
|
extra_env="$extra_env --env ENABLE_GCC_CODEGEN=1"
|
||||||
# If `ENABLE_GCC_CODEGEN` is set and not empty, we add the `--enable-new-symbol-mangling`
|
|
||||||
# argument to `RUST_CONFIGURE_ARGS` and set the `GCC_EXEC_PREFIX` environment variable.
|
|
||||||
# `cg_gcc` doesn't support the legacy mangling so we need to enforce the new one
|
|
||||||
# if we run `cg_gcc` tests.
|
|
||||||
extra_env="$EXTRA_ENV --env USE_NEW_MANGLING=--enable-new-symbol-mangling"
|
|
||||||
# Fix rustc_codegen_gcc lto issues.
|
# Fix rustc_codegen_gcc lto issues.
|
||||||
extra_env="$EXTRA_ENV --env GCC_EXEC_PREFIX=/usr/lib/gcc/"
|
extra_env="$extra_env --env GCC_EXEC_PREFIX=/usr/lib/gcc/"
|
||||||
echo "Setting extra environment values for docker: $extra_env"
|
echo "Setting extra environment values for docker: $extra_env"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -163,6 +163,14 @@ if [ "$IS_NOT_LATEST_LLVM" = "" ]; then
|
|||||||
export COMPILETEST_NEEDS_ALL_LLVM_COMPONENTS=1
|
export COMPILETEST_NEEDS_ALL_LLVM_COMPONENTS=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ "$ENABLE_GCC_CODEGEN" = "1" ]; then
|
||||||
|
# If `ENABLE_GCC_CODEGEN` is set and not empty, we add the `--enable-new-symbol-mangling`
|
||||||
|
# argument to `RUST_CONFIGURE_ARGS` and set the `GCC_EXEC_PREFIX` environment variable.
|
||||||
|
# `cg_gcc` doesn't support the legacy mangling so we need to enforce the new one
|
||||||
|
# if we run `cg_gcc` tests.
|
||||||
|
RUST_CONFIGURE_ARGS="$RUST_CONFIGURE_ARGS --enable-new-symbol-mangling"
|
||||||
|
fi
|
||||||
|
|
||||||
# Print the date from the local machine and the date from an external source to
|
# Print the date from the local machine and the date from an external source to
|
||||||
# check for clock drifts. An HTTP URL is used instead of HTTPS since on Azure
|
# check for clock drifts. An HTTP URL is used instead of HTTPS since on Azure
|
||||||
# Pipelines it happened that the certificates were marked as expired.
|
# Pipelines it happened that the certificates were marked as expired.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user