222 lines
5.9 KiB
YAML
222 lines
5.9 KiB
YAML
## @file
|
|
# Azure Pipeline build file for Slim Bootloader
|
|
#
|
|
# Copyright (c) 2020, Intel Corporation. All rights reserved.<BR>
|
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
##
|
|
|
|
trigger:
|
|
- master
|
|
|
|
pr:
|
|
- master
|
|
|
|
|
|
jobs:
|
|
|
|
|
|
- job: QEMU
|
|
|
|
pool:
|
|
vmImage: 'ubuntu-20.04'
|
|
|
|
steps:
|
|
- task: UsePythonVersion@0
|
|
inputs:
|
|
versionSpec: '3.8.x'
|
|
architecture: 'x64'
|
|
displayName: Set Python version
|
|
|
|
- bash: |
|
|
git config --global user.email "you@example.com"
|
|
git config --global user.name "Your Name"
|
|
sudo apt-get update
|
|
displayName: Update apt
|
|
|
|
- script: |
|
|
git fetch origin $(System.PullRequest.TargetBranch):$(System.PullRequest.TargetBranch)
|
|
python BaseTools/Scripts/PatchCheck.py $(System.PullRequest.TargetBranch)..$(System.PullRequest.SourceCommitId)
|
|
displayName: Check patch format
|
|
condition: eq(variables['Build.Reason'], 'PullRequest')
|
|
|
|
- bash: |
|
|
sudo apt-get install -y nasm uuid-dev iasl qemu-system-x86
|
|
displayName: Install required tools
|
|
|
|
- script: |
|
|
python BuildLoader.py build qemu -k
|
|
displayName: 'Run QEMU build'
|
|
|
|
- script: |
|
|
python Platform/QemuBoardPkg/Script/qemu_test.py
|
|
displayName: 'Run QEMU tests'
|
|
|
|
|
|
|
|
- job: Linux
|
|
|
|
strategy:
|
|
matrix:
|
|
QEMU_X64_RELEASE:
|
|
Build.Name: "qemu"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: "-r"
|
|
APL_X64_DEBUG:
|
|
Build.Name: "apl"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: ""
|
|
CFL_X64_RELEASE:
|
|
Build.Name: "cfl"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: "-r"
|
|
CML_X86_DEBUG:
|
|
Build.Name: "cml"
|
|
Build.Arch: ""
|
|
Build.Target: ""
|
|
CMLV_X64_DEBUG:
|
|
Build.Name: "cmlv"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: ""
|
|
TGL_X86_DEBUG:
|
|
Build.Name: "tgl"
|
|
Build.Arch: ""
|
|
Build.Target: ""
|
|
EHL_X86_DEBUG:
|
|
Build.Name: "ehl"
|
|
Build.Arch: ""
|
|
Build.Target: ""
|
|
ADLS_X86_DEBUG:
|
|
Build.Name: "adls"
|
|
Build.Arch: ""
|
|
Build.Target: ""
|
|
|
|
pool:
|
|
vmImage: 'ubuntu-20.04'
|
|
|
|
steps:
|
|
- task: UsePythonVersion@0
|
|
inputs:
|
|
versionSpec: '3.8.x'
|
|
architecture: 'x64'
|
|
displayName: Set Python version
|
|
|
|
- bash: |
|
|
git config --global user.email "you@example.com"
|
|
git config --global user.name "Your Name"
|
|
sudo apt-get update
|
|
sudo apt-get install -y nasm uuid-dev
|
|
|
|
wget --no-check-certificate http://archive.ubuntu.com/ubuntu/pool/universe/a/acpica-unix/acpica-tools_20190509-1_amd64.deb -P ~/asl/
|
|
sudo dpkg -i ~/asl/acpica-tools_20190509-1_amd64.deb
|
|
displayName: Install required tools
|
|
|
|
- script: |
|
|
python BuildLoader.py build $(Build.Name) $(Build.Arch) $(Build.Target) -k
|
|
displayName: 'Run $(Build.Name) build'
|
|
|
|
|
|
- job: Windows
|
|
|
|
strategy:
|
|
matrix:
|
|
APL_X86_DEBUG:
|
|
Build.Name: "apl"
|
|
Build.Arch: ""
|
|
Build.Target: ""
|
|
APL_X64_RELEASE:
|
|
Build.Name: "apl"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: "-r"
|
|
CFL_X86_RELEASE:
|
|
Build.Name: "cfl"
|
|
Build.Arch: ""
|
|
Build.Target: "-r"
|
|
CFL_X64_DEBUG:
|
|
Build.Name: "cfl"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: ""
|
|
CML_X86_DEBUG:
|
|
Build.Name: "cml"
|
|
Build.Arch: ""
|
|
Build.Target: ""
|
|
CML_X64_RELEASE:
|
|
Build.Name: "cml"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: "-r"
|
|
CMLV_X86_RELEASE:
|
|
Build.Name: "cmlv"
|
|
Build.Arch: ""
|
|
Build.Target: "-r"
|
|
CMLV_X64_DEBUG:
|
|
Build.Name: "cmlv"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: ""
|
|
TGL_X86_RELEASE:
|
|
Build.Name: "tgl"
|
|
Build.Arch: ""
|
|
Build.Target: "-r"
|
|
TGL_X64_DEBUG:
|
|
Build.Name: "tgl"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: ""
|
|
EHL_X86_RELEASE:
|
|
Build.Name: "ehl"
|
|
Build.Arch: ""
|
|
Build.Target: "-r"
|
|
EHL_X64_DEBUG:
|
|
Build.Name: "ehl"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: ""
|
|
ADLS_X86_RELEASE:
|
|
Build.Name: "adls"
|
|
Build.Arch: ""
|
|
Build.Target: "-r"
|
|
ADLS_X64_DEBUG:
|
|
Build.Name: "adls"
|
|
Build.Arch: "-a x64"
|
|
Build.Target: ""
|
|
|
|
pool:
|
|
vmImage: 'windows-2019'
|
|
|
|
steps:
|
|
- task: UsePythonVersion@0
|
|
inputs:
|
|
versionSpec: '3.8.x'
|
|
architecture: 'x64'
|
|
displayName: Set Python version
|
|
|
|
- powershell: |
|
|
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
|
|
add-type @"
|
|
using System.Net;
|
|
using System.Security.Cryptography.X509Certificates;
|
|
public class TrustAllCertsPolicy : ICertificatePolicy {
|
|
public bool CheckValidationResult(
|
|
ServicePoint srvPoint, X509Certificate certificate,
|
|
WebRequest request, int certificateProblem) {
|
|
return true;
|
|
}
|
|
}
|
|
"@
|
|
[System.Net.ServicePointManager]::CertificatePolicy = New-Object TrustAllCertsPolicy
|
|
Invoke-WebRequest -Uri https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/win64/nasm-2.14.02-win64.zip -OutFile nasm.zip
|
|
Expand-Archive .\nasm.zip C:\
|
|
Invoke-WebRequest -Uri https://acpica.org/sites/acpica/files/iasl-win-20190509.zip -OutFile iasl.zip
|
|
Expand-Archive .\iasl.zip C:\iasl
|
|
echo "##vso[task.setvariable variable=nasm_prefix;]C:\nasm-2.14.02\"
|
|
echo "##vso[task.setvariable variable=iasl_prefix;]C:\iasl\"
|
|
echo "##vso[task.setvariable variable=openssl_path;]C:\Program Files\OpenSSL\bin\"
|
|
displayName: Windows EDK II Prerequisites
|
|
|
|
- script: |
|
|
git config --global user.email "you@example.com"
|
|
git config --global user.name "Your Name"
|
|
displayName: Environment configuration
|
|
|
|
- script: |
|
|
python BuildLoader.py build $(Build.Name) $(Build.Arch) $(Build.Target) -t vs2019 -k
|
|
displayName: 'Run $(Build.Name) build'
|
|
|
|
|