dist: remove Windows vcpkg workaround

This commit is contained in:
Peter Williams 2022-11-02 12:59:32 -04:00
parent b3c02e7f71
commit caab2c23dc
2 changed files with 13 additions and 78 deletions

View File

@ -13,9 +13,6 @@ parameters:
- name: canaryBuild
type: boolean
default: false
- name: windowsVcpkgWorkaround
type: boolean
default: false
- name: testIt
type: boolean
default: true
@ -40,45 +37,19 @@ steps:
displayName: "Install vcpkg dependencies (Ubuntu)"
condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux'))
- bash: |
set -xeuo pipefail
echo CUSTOM VCPKG
###cargo install cargo-vcpkg
cargo install --git https://github.com/mcgoo/cargo-vcpkg --branch master cargo-vcpkg
displayName: Install cargo-vcpkg
# Note: setvariable + `set -x` adds spurious single quotes at ends of variable values
- bash: |
echo "##vso[task.setvariable variable=VCPKG_ROOT;]$(pwd)/target/vcpkg"
echo "##vso[task.setvariable variable=TECTONIC_DEP_BACKEND;]vcpkg"
displayName: Setup build variables
- ${{ if parameters.windowsVcpkgWorkaround }}:
- download: current
- bash: |
set -xeuo pipefail
BASH_WORKSPACE="$(Pipeline.Workspace)"
# work around https://github.com/microsoft/azure-pipelines-tasks/issues/10653
# (in an `if` statement for future-proofiness)
if [[ $AGENT_OS == Windows_NT ]] ; then
BASH_WORKSPACE=$(echo "$BASH_WORKSPACE" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|')
fi
mkdir -p target
mv $BASH_WORKSPACE/vcpkg-deps-windows target/vcpkg
displayName: Recover vcpkg deps from artifacts
- ${{ if not(parameters.windowsVcpkgWorkaround) }}:
- bash: |
set -xeuo pipefail
echo CUSTOM VCPKG
###cargo install cargo-vcpkg
cargo install --git https://github.com/mcgoo/cargo-vcpkg --branch master cargo-vcpkg
displayName: Install cargo-vcpkg
- bash: |
set -xeuo pipefail
cargo vcpkg -v build --target $TARGET
ls target/vcpkg
echo target/vcpkg/installed/*
ls target/vcpkg/installed/*/lib
displayName: Build vcpkg deps
# Without RUST_TEST_THREAD=1, on Windows the doctests fail with a
# PermissionDenied issue that seems to be due to creating multiple tempfiles in
# the same directory (tests/) at once. $VCPKG_DEFAULT_HOST_TRIPLET speeds
@ -92,6 +63,11 @@ steps:
displayName: Setup build variables (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- bash: |
set -xeuo pipefail
cargo vcpkg -v build --target $TARGET
displayName: Build vcpkg deps
- template: azure-generic-build.yml
parameters:
canaryBuild: ${{ parameters.canaryBuild }}

View File

@ -157,8 +157,7 @@ parameters:
- name: x86_64_pc_windows_msvc
vmImage: windows-2019
params:
windowsVcpkgWorkaround: true
params: {}
vars:
TARGET: x86_64-pc-windows-msvc
TOOLCHAIN: stable-x86_64-pc-windows-msvc
@ -199,8 +198,6 @@ jobs:
# vcpkg builds
- ${{ each build in parameters.vcpkgBuilds }}:
- job: ${{ format('build_{0}_vcpkg', build.name) }}
${{ if eq(build.name, 'x86_64_pc_windows_msvc') }}: # work around timeouts with slow builds
dependsOn: windows_vcpkg_prebuild
pool:
vmImage: ${{ build.vmImage }}
steps:
@ -302,41 +299,3 @@ jobs:
artifactName: book
- bash: cd docs && ../mdbook test
displayName: mdbook test
# Hack to build Windows vcpkg deps in their own job, because it takes so long
# that the Windows jobs routinely hit the 60-minute timeout.
- job: windows_vcpkg_prebuild
pool:
vmImage: windows-2019
steps:
- bash: |
echo "##vso[task.setvariable variable=VCPKG_ROOT;]$(pwd)/target/vcpkg"
displayName: Set up build variables
- bash: |
echo CUSTOM VCPKG
###cargo install cargo-vcpkg
cargo install --git https://github.com/mcgoo/cargo-vcpkg --branch master cargo-vcpkg
displayName: Install cargo-vcpkg
- bash: |
set -xeuo pipefail
cargo vcpkg -v build
# There is something weird about buildtrees/icu/ that prevents
# us from easily rm -rf'ing it. Too bad because that directory
# is easily the largest part of the vcpkg tree.
rm -rf target/vcpkg/downloads
cd target/vcpkg/buildtrees
for d in * ; do
if [ $d != icu ] ; then
rm -rf $d
fi
done
displayName: Build vcpkg deps
- task: PublishPipelineArtifact@1
displayName: Publish vcpkg deps as artifact
inputs:
targetPath: 'target/vcpkg'
artifactName: vcpkg-deps-windows