2 # Azure Pipeline build file for building a platform.
8 # Copyright (c) Microsoft Corporation.
9 # SPDX-License-Identifier: BSD-2-Clause-Patent
19 vm_image: 'windows-latest'
21 run_flags: "MAKE_STARTUP_NSH=TRUE QEMU_HEADLESS=TRUE"
23 #Use matrix to speed up the build process
27 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
31 Run.Flags: $(run_flags)
34 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
37 Build.Target: "RELEASE"
38 Run.Flags: $(run_flags)
41 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
45 Run.Flags: $(run_flags)
49 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
53 Run.Flags: $(run_flags)
56 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
59 Build.Target: "RELEASE"
60 Run.Flags: $(run_flags)
63 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
67 Run.Flags: $(run_flags)
71 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
72 Build.Arch: "IA32,X64"
75 Run.Flags: $(run_flags)
78 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
79 Build.Arch: "IA32,X64"
81 Build.Target: "RELEASE"
82 Run.Flags: $(run_flags)
85 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
86 Build.Arch: "IA32,X64"
89 Run.Flags: $(run_flags)
92 OVMF_IA32X64_FULL_DEBUG:
93 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
94 Build.Arch: "IA32,X64"
95 Build.Flags: "BLD_*_SECURE_BOOT_ENABLE=1 BLD_*_SMM_REQUIRE=1 BLD_*_TPM_ENABLE=1 BLD_*_TPM_CONFIG_ENABLE=1 BLD_*_NETWORK_TLS_ENABLE=1 BLD_*_NETWORK_IP6_ENABLE=1 BLD_*_NETWORK_HTTP_BOOT_ENABLE=1"
97 Run.Flags: $(run_flags)
99 OVMF_IA32X64_FULL_RELEASE:
100 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
101 Build.Arch: "IA32,X64"
102 Build.Flags: "BLD_*_SECURE_BOOT_ENABLE=1 BLD_*_SMM_REQUIRE=1 BLD_*_TPM_ENABLE=1 BLD_*_TPM_CONFIG_ENABLE=1 BLD_*_NETWORK_TLS_ENABLE=1 BLD_*_NETWORK_IP6_ENABLE=1 BLD_*_NETWORK_HTTP_BOOT_ENABLE=1"
103 Build.Target: "RELEASE"
104 Run.Flags: $(run_flags)
107 # This currently creates a very large image which is too big for the FDF declared range
108 # Ovmf maintainers suggest to skip this build for now.
110 # OVMF_IA32X64_FULL_NOOPT:
111 # Build.File: "$(package)/PlatformCI/PlatformBuild.py"
112 # Build.Arch: "IA32,X64"
113 # Build.Flags: "BLD_*_SECURE_BOOT_ENABLE=1 BLD_*_SMM_REQUIRE=1 BLD_*_TPM_ENABLE=1 BLD_*_TPM_CONFIG_ENABLE=1 BLD_*_NETWORK_TLS_ENABLE=1 BLD_*_NETWORK_IP6_ENABLE=1 BLD_*_NETWORK_HTTP_BOOT_ENABLE=1"
114 # Build.Target: "NOOPT"
115 # Run.Flags: $(run_flags)
125 - template: ../../../.azurepipelines/templates/platform-build-run-steps.yml
127 tool_chain_tag: VS2019
128 build_pkg: $(package)
129 build_target: $(Build.Target)
130 build_arch: $(Build.Arch)
131 build_file: $(Build.File)
132 build_flags: $(Build.Flags)
133 run_flags: $(Run.Flags)
135 - powershell: choco install qemu; Write-Host "##vso[task.prependpath]c:\Program Files\qemu"
136 displayName: Install QEMU and Set QEMU on path # friendly name displayed in the UI
137 condition: and(gt(variables.pkg_count, 0), succeeded())