mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-20 08:38:56 +01:00
build: parallelize cli build
Put all win and macOS builds on their own machine, since they take a minute. Build the two GNU ARM builds together on an x64 machine, since they're faster and can cross-compile in ~5 minutes. This makes the CompileCLI step take a little less time than the VS Code "Compile" step.
This commit is contained in:
@@ -37,18 +37,25 @@ steps:
|
||||
displayName: Extract openssl prebuilt
|
||||
|
||||
# inspired by: https://github.com/emk/rust-musl-builder/blob/main/Dockerfile
|
||||
- bash: |
|
||||
set -e
|
||||
sudo apt-get update
|
||||
sudo apt-get install -yq build-essential curl file git graphviz musl-dev musl-tools linux-libc-dev pkgconf zip unzip xutils-dev ninja-build
|
||||
sudo ln -s "/usr/bin/g++" "/usr/bin/musl-g++" || echo "link exists"
|
||||
displayName: Install build dependencies
|
||||
- ${{ if or(eq(parameters.VSCODE_BUILD_LINUX_ALPINE_ARM64, true), eq(parameters.VSCODE_BUILD_LINUX_ALPINE, true)) }}:
|
||||
- bash: |
|
||||
set -e
|
||||
sudo apt-get update
|
||||
sudo apt-get install -yq build-essential musl-dev musl-tools linux-libc-dev pkgconf xutils-dev
|
||||
sudo ln -s "/usr/bin/g++" "/usr/bin/musl-g++" || echo "link exists"
|
||||
displayName: Install musl build dependencies
|
||||
|
||||
- ${{ if eq(parameters.VSCODE_BUILD_LINUX_ARMHF, true) }}:
|
||||
- bash: |
|
||||
set -e
|
||||
sudo apt-get install -yq gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf binutils-arm-linux-gnueabihf
|
||||
displayName: Install cross compilation toolchains
|
||||
displayName: Install arm32 toolchains
|
||||
|
||||
- ${{ if eq(parameters.VSCODE_BUILD_LINUX_ARM64, true) }}:
|
||||
- bash: |
|
||||
set -e
|
||||
sudo apt-get install -yq gcc-aarch64-linux-gnu g++-aarch64-linux-gnu binutils-aarch64-linux-gnu
|
||||
displayName: Install arm64 toolchains
|
||||
|
||||
- task: NodeTool@0
|
||||
inputs:
|
||||
@@ -107,6 +114,7 @@ steps:
|
||||
VSCODE_CLI_TARGET: aarch64-unknown-linux-gnu
|
||||
VSCODE_CLI_ARTIFACT: vscode_cli_linux_arm64_cli
|
||||
VSCODE_CLI_ENV:
|
||||
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER: aarch64-linux-gnu-gcc
|
||||
OPENSSL_LIB_DIR: $(Build.ArtifactStagingDirectory)/openssl/arm64-linux/lib
|
||||
OPENSSL_INCLUDE_DIR: $(Build.ArtifactStagingDirectory)/openssl/arm64-linux/include
|
||||
|
||||
|
||||
Reference in New Issue
Block a user