Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
9705cea
Build, but do not run, the ARM/ARM64 tests
cbezault Dec 1, 2020
9afcce7
Suppress alignment warning
cbezault Dec 10, 2020
a6ca78d
Vectorcall is meaningless on ARM so don't test it.
cbezault Dec 10, 2020
7ed36a3
Fixup warning in bit for ARM
cbezault Dec 9, 2020
4263ecb
Skip clang tests on ARM
cbezault Dec 11, 2020
2dc447d
Workaround missing 128-bit intrinsics on LLVM 11
cbezault Dec 15, 2020
319641a
Merge branch 'master' into build-arm64
cbezault Dec 18, 2020
f54dd73
Bring the impoved cloning behavior to the cross build
cbezault Dec 18, 2020
2617a08
Rename BUILD_ONLY to TESTS_BUILD_ONLY
cbezault Jan 12, 2021
7363944
Fix typo
cbezault Jan 12, 2021
a4af2c5
Fix the variable name in the s
cbezault Jan 12, 2021
b005aa8
cleanup yaml
cbezault Jan 24, 2021
763a561
Fixup bit
cbezault Jan 24, 2021
c38416b
Fixup some whitespace errors
cbezault Jan 24, 2021
ffa2fa4
More whitespace
cbezault Jan 24, 2021
c3cd0be
Try strategies
cbezault Jan 25, 2021
045f6aa
whitespace
cbezault Jan 25, 2021
ed708c1
More small
cbezault Jan 25, 2021
e8d4dcd
more
cbezault Jan 25, 2021
4cc38ee
more whitespace
cbezault Jan 25, 2021
0afa935
yaml shenanigans
cbezault Jan 25, 2021
4f6d6ce
Move the variables around
cbezault Jan 25, 2021
3b6311f
more
cbezault Jan 25, 2021
9ae51b6
more
cbezault Jan 25, 2021
1a075bb
more
cbezault Jan 25, 2021
6f10701
more
cbezault Jan 25, 2021
5646fe6
more
cbezault Jan 25, 2021
e179cc5
more
cbezault Jan 25, 2021
4fd39dd
clang-format
cbezault Jan 25, 2021
3130de9
more
cbezault Jan 25, 2021
bba2026
More
cbezault Jan 25, 2021
50b8bc4
more
cbezault Jan 25, 2021
91ed1dd
more
cbezault Jan 25, 2021
44528d0
Comment improvement
cbezault Jan 25, 2021
fac1c07
more
cbezault Jan 25, 2021
421afac
more
cbezault Jan 25, 2021
eb5a08e
More cleanup
cbezault Jan 25, 2021
b14211a
Try publishing the artifact
cbezault Jan 25, 2021
3f7f974
Don't upload such large artifact
cbezault Jan 25, 2021
b0033cd
fix artifact name
cbezault Jan 25, 2021
a9e4546
Reinitalizing seems to corrupt the index file when extensions are ena…
cbezault Jan 25, 2021
8dd0e0e
one last attempt
cbezault Jan 25, 2021
5b5bdf0
Try adding .git
cbezault Jan 25, 2021
cf99068
add debugging dirs
cbezault Jan 25, 2021
b2bee33
Check for the index file
cbezault Jan 25, 2021
9095122
Make checkout more straightforward and robust
cbezault Jan 25, 2021
f6b15b6
fixup
cbezault Jan 25, 2021
5f691e9
Merge branch 'master' into build-arm64
StephanTLavavej Jan 26, 2021
2161e61
Attempt to simplify names of checks.
StephanTLavavej Jan 26, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 70 additions & 0 deletions azure-devops/checkout-sources.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

parameters:
- name: vcpkgSHAVar
type: string
default: vcpkgSHA
- name: llvmSHAVar
type: string
default: llvmSHA
steps:
- checkout: self
clean: true
submodules: false
- task: PowerShell@2
displayName: 'Get submodule SHAs'
timeoutInMinutes: 1
inputs:
targetType: inline
script: |
cd $(Build.SourcesDirectory)
$regexSubmoduleSHA = '^[ \-+]([0-9a-f]+) .*$'
$llvmSHA = git submodule status --cached llvm-project | %{$_ -replace $regexSubmoduleSHA, '$1'}
Write-Host "##vso[task.setvariable variable=${{ parameters.llvmSHAVar }};]$llvmSHA"
$vcpkgSHA = git submodule status --cached vcpkg | %{$_ -replace $regexSubmoduleSHA, '$1'}
Write-Host "##vso[task.setvariable variable=${{ parameters.vcpkgSHAVar }};]$vcpkgSHA"
- script: |
cd $(Build.SourcesDirectory)
if not exist "llvm-project" (
mkdir llvm-project
)
cd llvm-project

if not exist ".git" (
del /S /Q *
git init
)

git remote get-url llvm
if errorlevel 1 (
git remote add llvm https://github.com/llvm/llvm-project.git
git config --local extensions.partialClone llvm
)

git fetch --filter=tree:0 --depth=1 llvm $(${{ parameters.llvmSHAVar }})
git reset --quiet FETCH_HEAD
git sparse-checkout init --cone
git sparse-checkout set libcxx/test libcxx/utils/libcxx llvm/utils/lit
displayName: "Checkout LLVM source"
- script: |
cd $(Build.SourcesDirectory)
if not exist "vcpkg" (
mkdir vcpkg
)
cd vcpkg

if not exist ".git" (
del /S /Q *
git init
)

git remote get-url vcpkg
if errorlevel 1 (
git remote add vcpkg https://github.com/Microsoft/vcpkg.git
git config --local extensions.partialClone vcpkg
)

git fetch --filter=tree:0 --depth=1 vcpkg $(${{ parameters.vcpkgSHAVar }})
git checkout -f FETCH_HEAD
displayName: "Checkout vcpkg source"
52 changes: 52 additions & 0 deletions azure-devops/cmake-configure-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

parameters:
- name: hostArch
type: string
- name: targetArch
type: string
- name: vcpkgLocationVar
type: string
default: vcpkgLocation
- name: targetPlatform
type: string
- name: buildOutputLocationVar
type: string
default: buildOutputLocation
- name: cmakeAdditionalFlags
type: string
default: ''
steps:
- task: PowerShell@2
displayName: 'Get Test Parallelism'
timeoutInMinutes: 1
inputs:
targetType: inline
script: |
$testParallelism = $env:NUMBER_OF_PROCESSORS - 2
Write-Host "##vso[task.setvariable variable=testParallelism;]$testParallelism"
- script: |
if exist "$(${{ parameters.buildOutputLocationVar }})" (
rmdir /S /Q "$(${{ parameters.buildOutputLocationVar }})"
)
call "%PROGRAMFILES(X86)%\Microsoft Visual Studio\2019\Preview\Common7\Tools\VsDevCmd.bat" ^
-host_arch=${{ parameters.hostArch }} -arch=${{ parameters.targetArch }} -no_logo
cmake ${{ parameters.cmakeAdditionalFlags}} -G Ninja ^
-DCMAKE_TOOLCHAIN_FILE=$(${{ parameters.vcpkgLocationVar }})\scripts\buildsystems\vcpkg.cmake ^
-DVCPKG_TARGET_TRIPLET=${{ parameters.targetPlatform }}-windows ^
-DCMAKE_CXX_COMPILER=cl ^
-DCMAKE_BUILD_TYPE=Release ^
-DLIT_FLAGS=$(litFlags) ^
-DCMAKE_CXX_FLAGS=/analyze:autolog- ^
-S $(Build.SourcesDirectory) -B $(${{ parameters.buildOutputLocationVar }})
displayName: 'Configure the STL'
timeoutInMinutes: 2
env: { TMP: $(tmpDir), TEMP: $(tmpDir) }
- script: |
call "%PROGRAMFILES(X86)%\Microsoft Visual Studio\2019\Preview\Common7\Tools\VsDevCmd.bat" ^
-host_arch=${{ parameters.hostArch }} -arch=${{ parameters.targetArch }} -no_logo
cmake --build $(${{ parameters.buildOutputLocationVar }})
displayName: 'Build the STL'
timeoutInMinutes: 10
env: { TMP: $(tmpDir), TEMP: $(tmpDir) }
51 changes: 51 additions & 0 deletions azure-devops/cross-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

parameters:
- name: hostArch
type: string
default: amd64
- name: targetPlatform
type: string
- name: vsDevCmdArch
type: string
- name: buildOutputLocationVar
type: string
default: buildOutputLocation
- name: numShards
type: number
default: 8
jobs:
- job: '${{ parameters.targetPlatform }}'
variables:
fixedFlags: '--timeout=240;--shuffle'
parallelismFlag: '-j$(testParallelism)'
xmlOutputFlag: '--xunit-xml-output=$(${{ parameters.buildOutputLocationVar }})/test-results.xml'
shardFlags: '--num-shards=$(System.TotalJobsInPhase);--run-shard=$(System.JobPositionInPhase)'
litFlags: '$(fixedFlags);$(parallelismFlag);$(xmlOutputFlag);$(shardFlags)'
strategy:
parallel: ${{ parameters.numShards }}
timeoutInMinutes: 360
steps:
- script: |
if exist "$(tmpDir)" (rmdir /S /Q $(tmpDir))
mkdir $(tmpDir)
displayName: 'Setup TMP Directory'

- template: checkout-sources.yml
- template: vcpkg-dependencies.yml
parameters:
targetPlatform: ${{ parameters.targetPlatform }}
- template: cmake-configure-build.yml
parameters:
targetPlatform: ${{ parameters.targetPlatform }}
hostArch: ${{ parameters.hostArch }}
targetArch: ${{ parameters.vsDevCmdArch }}
cmakeAdditionalFlags: '-DTESTS_BUILD_ONLY=ON'
- template: run-tests.yml
parameters:
hostArch: ${{ parameters.hostArch }}
targetPlatform: ${{ parameters.targetPlatform }}
targetArch: ${{ parameters.vsDevCmdArch }}
displayName: 'Build Tests'
publishArtifact: true
45 changes: 45 additions & 0 deletions azure-devops/native-build-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

parameters:
- name: targetPlatform
type: string
- name: vsDevCmdArch
type: string
- name: buildOutputLocationVar
type: string
default: buildOutputLocation
- name: numShards
type: number
default: 8
jobs:
- job: '${{ parameters.targetPlatform }}'
variables:
fixedFlags: '--timeout=240;--shuffle'
parallelismFlag: '-j$(testParallelism)'
xmlOutputFlag: '--xunit-xml-output=$(${{ parameters.buildOutputLocationVar }})/test-results.xml'
shardFlags: '--num-shards=$(System.TotalJobsInPhase);--run-shard=$(System.JobPositionInPhase)'
litFlags: '$(fixedFlags);$(parallelismFlag);$(xmlOutputFlag);$(shardFlags)'
strategy:
parallel: ${{ parameters.numShards }}
timeoutInMinutes: 360
steps:
- script: |
if exist "$(tmpDir)" (rmdir /S /Q $(tmpDir))
mkdir $(tmpDir)
displayName: 'Setup TMP Directory'

- template: checkout-sources.yml
- template: vcpkg-dependencies.yml
parameters:
targetPlatform: ${{ parameters.targetPlatform }}
- template: cmake-configure-build.yml
parameters:
targetPlatform: ${{ parameters.targetPlatform }}
targetArch: ${{ parameters.vsDevCmdArch }}
hostArch: ${{ parameters.vsDevCmdArch }}
- template: run-tests.yml
parameters:
hostArch: ${{ parameters.vsDevCmdArch }}
targetPlatform: ${{ parameters.targetPlatform }}
targetArch: ${{ parameters.vsDevCmdArch }}
130 changes: 0 additions & 130 deletions azure-devops/run-build.yml

This file was deleted.

Loading