Bug 1534461 - Build geckodriver for aarch64 on Windows. r=whimboo,firefox-build-system-reviewers,ahochheiden

And avoid adding yet another vs-setup script by merging the existing ones.

Differential Revision: https://phabricator.services.mozilla.com/D156792
This commit is contained in:
Mike Hommey 2022-09-08 22:01:51 +00:00
parent cb16bc664b
commit 2e834f83f4
8 changed files with 36 additions and 30 deletions

@ -109,6 +109,22 @@ win32-geckodriver:
- linux64-rust-windows
- win64-vs2017
win64-aarch64-geckodriver:
treeherder:
symbol: TW64(gd)
platform: windows2012-aarch64/opt
run:
arguments: ['aarch64-pc-windows-msvc']
toolchain-artifact: public/build/geckodriver.zip
attributes:
build_platform: win64-aarch64-geckodriver
fetches:
toolchain:
- linux64-clang-toolchain
- linux64-liblowercase
- linux64-rust-windows
- win64-vs2017
win64-geckodriver:
treeherder:
symbol: TW64(gd)

@ -179,6 +179,7 @@ linux64-rust-windows-1.63:
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-pc-windows-msvc',
'--target', 'i686-pc-windows-msvc',
'--target', 'aarch64-pc-windows-msvc',
]
toolchain-alias: linux64-rust-windows

@ -28,6 +28,7 @@ not-for-build-platforms:
- macosx64-aarch64-geckodriver/opt
- win32-geckodriver/opt
- win64-geckodriver/opt
- win64-aarch64-geckodriver/opt
job-template:
description: Upload Symbols

@ -50,14 +50,13 @@ x86_64-unknown-linux-gnu)
case "$TARGET" in
i686-pc-windows-msvc)
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup32.sh
export CARGO_TARGET_I686_PC_WINDOWS_MSVC_LINKER=$MOZ_FETCHES_DIR/clang/bin/lld-link
;;
x86_64-pc-windows-msvc)
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup.sh
export CARGO_TARGET_X86_64_PC_WINDOWS_MSVC_LINKER=$MOZ_FETCHES_DIR/clang/bin/lld-link
;;
esac
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup.sh
;;
esac

@ -16,15 +16,9 @@ case "$TARGET" in
*windows-msvc)
EXE=.exe
COMPRESS_EXT=zip
if [[ $TARGET == "i686-pc-windows-msvc" ]]; then
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup32.sh
export CARGO_TARGET_I686_PC_WINDOWS_MSVC_LINKER=$MOZ_FETCHES_DIR/clang/bin/lld-link
else
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup.sh
export CARGO_TARGET_X86_64_PC_WINDOWS_MSVC_LINKER=$MOZ_FETCHES_DIR/clang/bin/lld-link
fi
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup.sh
# Bug 1584530: don't require the Microsoft MSVC runtime to be installed.
export RUSTFLAGS="-Ctarget-feature=+crt-static"
export RUSTFLAGS="-Ctarget-feature=+crt-static -C linker=$MOZ_FETCHES_DIR/clang/bin/lld-link"
export LD_PRELOAD=$MOZ_FETCHES_DIR/liblowercase/liblowercase.so
export LOWERCASE_DIRS=$MOZ_FETCHES_DIR/vs
;;

@ -56,14 +56,13 @@ x86_64-unknown-linux-gnu)
case "$TARGET" in
i686-pc-windows-msvc)
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup32.sh
export CARGO_TARGET_I686_PC_WINDOWS_MSVC_LINKER=$MOZ_FETCHES_DIR/clang/bin/lld-link
;;
x86_64-pc-windows-msvc)
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup.sh
export CARGO_TARGET_X86_64_PC_WINDOWS_MSVC_LINKER=$MOZ_FETCHES_DIR/clang/bin/lld-link
;;
esac
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup.sh
;;
esac

@ -11,6 +11,18 @@ if [ ! -d "${VSPATH}/${SDKDIR}/lib/${SDK_VERSION}" ]; then
SDK_VERSION=10.0.19041.0
fi
case "$TARGET" in
aarch64-pc-windows-msvc)
SDK_CPU=arm64
;;
i686-pc-windows-msvc)
SDK_CPU=x86
;;
*)
SDK_CPU=x64
;;
esac
export INCLUDE="${VSPATH}/${VCDIR}/include;${VSPATH}/${VCDIR}/atlmfc/include;${VSPATH}/${SDKDIR}/include/${SDK_VERSION}/ucrt;${VSPATH}/${SDKDIR}/include/${SDK_VERSION}/shared;${VSPATH}/${SDKDIR}/include/${SDK_VERSION}/um;${VSPATH}/${SDKDIR}/include/${SDK_VERSION}/winrt;${VSPATH}/dia sdk/include"
export LIB="${VSPATH}/${VCDIR}/lib/x64;${VSPATH}/${VCDIR}/atlmfc/lib/x64;${VSPATH}/${SDKDIR}/lib/${SDK_VERSION}/um/x64;${VSPATH}/${SDKDIR}/lib/${SDK_VERSION}/ucrt/x64;${VSPATH}/dia sdk/lib/amd64"
export PATH="${UNIX_VSPATH}/${VCDIR}/bin/hostx64/x64:${UNIX_VSPATH}/${VCDIR}/bin/hostx86/x86:${UNIX_VSPATH}/${SDKDIR}/bin/${SDK_VERSION}/x64:${UNIX_VSPATH}/redist/x64/microsoft.vc141.crt:${UNIX_VSPATH}/${SDKDIR}/redist/ucrt/dlls/x64:${UNIX_VSPATH}/dia sdk/bin/amd64:$PATH"
export LIB="${VSPATH}/${VCDIR}/lib/${SDK_CPU};${VSPATH}/${VCDIR}/atlmfc/lib/${SDK_CPU};${VSPATH}/${SDKDIR}/lib/${SDK_VERSION}/um/${SDK_CPU};${VSPATH}/${SDKDIR}/lib/${SDK_VERSION}/ucrt/${SDK_CPU};${VSPATH}/dia sdk/lib/amd64"
export PATH="${UNIX_VSPATH}/${VCDIR}/bin/hostx64/${SDK_CPU}:${UNIX_VSPATH}/${VCDIR}/bin/hostx86/x86:${UNIX_VSPATH}/${SDKDIR}/bin/${SDK_VERSION}/${SDK_CPU}:${UNIX_VSPATH}/redist/${SDK_CPU}/microsoft.vc141.crt:${UNIX_VSPATH}/${SDKDIR}/redist/ucrt/dlls/${SDK_CPU}:${UNIX_VSPATH}/dia sdk/bin/amd64:$PATH"

@ -1,16 +0,0 @@
VSDIR=vs
VSPATH="${MOZ_FETCHES_DIR}/${VSDIR}"
UNIX_VSPATH="$(cd ${MOZ_FETCHES_DIR} && pwd)/${VSDIR}"
VCDIR=vc/tools/msvc/14.16.27023
if [ ! -d "${VSPATH}/${VCDIR}" ]; then
VCDIR=vc/tools/msvc/14.29.30133
fi
SDKDIR="windows kits/10"
SDK_VERSION=10.0.17134.0
if [ ! -d "${VSPATH}/${SDKDIR}/lib/${SDK_VERSION}" ]; then
SDK_VERSION=10.0.19041.0
fi
export INCLUDE="${VSPATH}/${VCDIR}/include;${VSPATH}/${VCDIR}/atlmfc/include;${VSPATH}/${SDKDIR}/include/${SDK_VERSION}/ucrt;${VSPATH}/${SDKDIR}/include/${SDK_VERSION}/shared;${VSPATH}/${SDKDIR}/include/${SDK_VERSION}/um;${VSPATH}/${SDKDIR}/include/${SDK_VERSION}/winrt;${VSPATH}/dia sdk/include"
export LIB="${VSPATH}/${VCDIR}/lib/x86;${VSPATH}/${VCDIR}/atlmfc/lib/x86;${VSPATH}/${SDKDIR}/lib/${SDK_VERSION}/um/x86;${VSPATH}/${SDKDIR}/lib/${SDK_VERSION}/ucrt/x86;${VSPATH}/dia sdk/lib"
export PATH="${UNIX_VSPATH}/${VCDIR}/bin/hostx64/x86:${UNIX_VSPATH}/${VCDIR}/bin/hostx64/x64:${UNIX_VSPATH}/${VCDIR}/bin/hostx86/x86:${UNIX_VSPATH}/${SDKDIR}/bin/${SDK_VERSION}/x86:${UNIX_VSPATH}/${VCDIR}/redist/x86/microsoft.vc141.crt:${UNIX_VSPATH}/${SDKDIR}/redist/ucrt/dlls/x86:${UNIX_VSPATH}/dia sdk/bin:$PATH"