The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
121 lines
3.2 KiB
121 lines
3.2 KiB
# intel oneapi installation is based on the examples at |
|
# https://github.com/oneapi-src/oneapi-ci |
|
# |
|
# and are copyrighted: |
|
# |
|
# SPDX-FileCopyrightText: 2020 Intel Corporation |
|
# SPDX-License-Identifier: MIT |
|
# |
|
# The rest of this file contains the standard Meson project copyright: |
|
# |
|
# SPDX-License-Identifer: Apache-2.0 |
|
# Copyright 2022 The Meson development team |
|
|
|
|
|
name: $(BuildID) |
|
|
|
trigger: |
|
branches: |
|
include: |
|
- 'master' |
|
# Release branches |
|
- '1.*' |
|
paths: |
|
include: |
|
- 'mesonbuild' |
|
- 'test cases' |
|
- 'unittests' |
|
- 'azure-pipelines.yml' |
|
- 'ci/run.ps1' |
|
- 'run_project_tests.py' |
|
- 'run_tests.py' |
|
- 'run_unittests.py' |
|
pr: |
|
autoCancel: true |
|
branches: |
|
include: |
|
- '*' |
|
paths: |
|
include: |
|
- 'mesonbuild' |
|
- 'test cases' |
|
- 'unittests' |
|
- 'azure-pipelines.yml' |
|
- 'ci/run.ps1' |
|
- 'run_project_tests.py' |
|
- 'run_tests.py' |
|
- 'run_unittests.py' |
|
|
|
variables: |
|
CI: 1 |
|
SOURCE_VERSION: $(Build.SourceVersion) |
|
WINDOWS_HPCKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/18680/w_HPCKit_p_2022.2.0.173_offline.exe |
|
WINDOWS_FORTRAN_COMPONENTS: intel.oneapi.win.ifort-compiler |
|
|
|
jobs: |
|
|
|
- job: vs2019 |
|
timeoutInMinutes: 120 |
|
pool: |
|
vmImage: windows-2019 |
|
|
|
strategy: |
|
matrix: |
|
vc2019x64ninja: |
|
arch: x64 |
|
compiler: msvc2019 |
|
backend: ninja |
|
ifort: true |
|
vc2019x64vs: |
|
arch: x64 |
|
compiler: msvc2019 |
|
backend: vs2019 |
|
# mysteriously, several tests fail because vs cannot find |
|
# executables such as cmd.exe ??? |
|
ifort: false |
|
vc2019arm64ninjacross: |
|
arch: arm64 |
|
compiler: msvc2019 |
|
backend: ninja |
|
extraargs: --cross arm64cl.txt --cross-only |
|
# ifort doesn't support arm64 |
|
ifort: false |
|
|
|
steps: |
|
- task: Cache@2 |
|
inputs: |
|
path: C:\Program Files (x86)\Intel\oneAPI |
|
key: '"install" | "$(WINDOWS_HPCKIT_URL)" | "$(WINDOWS_FORTRAN_COMPONENTS)" | "compiler" | ci/intel-scripts/cache_exclude_windows.sh' |
|
cacheHitVar: CACHE_RESTORED |
|
condition: eq(variables.ifort, 'true') |
|
- script: ci/intel-scripts/install_windows.bat $(WINDOWS_HPCKIT_URL) $(WINDOWS_FORTRAN_COMPONENTS) |
|
displayName: install ifort |
|
condition: and(ne(variables.CACHE_RESTORED, 'true'), eq(variables.ifort, 'true')) |
|
- bash: ci/intel-scripts/cache_exclude_windows.sh |
|
displayName: exclude unused files from cache |
|
condition: and(ne(variables.CACHE_RESTORED, 'true'), eq(variables.ifort, 'true')) |
|
- script: choco install -y nasm |
|
displayName: install NASM |
|
- task: UsePythonVersion@0 |
|
inputs: |
|
versionSpec: '3.7' |
|
addToPath: true |
|
architecture: 'x64' |
|
- task: BatchScript@1 |
|
displayName: insert ifort into environment |
|
inputs: |
|
filename: ci/intel-scripts/activate_windows.bat |
|
arguments: vs2019 |
|
modifyEnvironment: True |
|
condition: eq(variables.ifort, 'true') |
|
- task: PowerShell@2 |
|
inputs: |
|
targetType: 'filePath' |
|
filePath: .\ci\run.ps1 |
|
env: |
|
MESON_CI_JOBNAME: azure-$(System.JobName) |
|
- task: PowerShell@2 |
|
displayName: Gathering coverage report |
|
inputs: |
|
targetType: 'filePath' |
|
filePath: .\ci\coverage.ps1
|
|
|