Auto merge of #12812 - Alexendoo:driver-integration, r=flip1995

Manually set library paths in .github/driver.sh

Fixes https://rust-lang.zulipchat.com/#narrow/stream/257328-clippy/topic/Windows.20CI.20failing

Rustup 1.27.1 no longer adds `[SYSROOT]/bin` to `PATH` by default - https://github.com/rust-lang/rustup/issues/3825. This is fine for the packaged binaries since windows loads `dll`s from the folder the executable is in, but our built one is in a different folder

There's an environment variable to get the old behaviour back, but as it's deprecated and not much code I think returning to setting it manually is fine

changelog: none
This commit is contained in:
bors 2024-05-16 20:54:33 +00:00
commit 6c8ff3f894
3 changed files with 15 additions and 14 deletions

19
.github/driver.sh vendored
View file

@ -2,15 +2,18 @@
set -ex
# Check sysroot handling
sysroot=$(./target/debug/clippy-driver --print sysroot)
test "$sysroot" = "$(rustc --print sysroot)"
sysroot="$(rustc --print sysroot)"
case $OS in
Linux) export LD_LIBRARY_PATH="$sysroot/lib" ;;
macOS) export DYLD_FALLBACK_LIBRARY_PATH="$sysroot/lib" ;;
Windows) export PATH="$(cygpath "$sysroot")/bin:$PATH" ;;
*) exit 1
esac
if [[ ${OS} == "Windows" ]]; then
desired_sysroot=C:/tmp
else
desired_sysroot=/tmp
fi
# Check sysroot handling
test "$(./target/debug/clippy-driver --print sysroot)" = "$sysroot"
desired_sysroot="target/sysroot"
# Set --sysroot in command line
sysroot=$(./target/debug/clippy-driver --sysroot $desired_sysroot --print sysroot)
test "$sysroot" = $desired_sysroot

View file

@ -69,6 +69,6 @@ jobs:
working-directory: clippy_dev
- name: Test clippy-driver
run: |
TOOLCHAIN=$(rustup show active-toolchain | cut -f1 -d' ')
rustup run $TOOLCHAIN bash .github/driver.sh
run: .github/driver.sh
env:
OS: ${{ runner.os }}

View file

@ -116,9 +116,7 @@ jobs:
working-directory: clippy_dev
- name: Test clippy-driver
run: |
TOOLCHAIN=$(rustup show active-toolchain | cut -f1 -d' ')
rustup run $TOOLCHAIN bash .github/driver.sh
run: .github/driver.sh
env:
OS: ${{ runner.os }}