2 # Azure Pipeline build file for building a platform.
8 # Copyright (c) Microsoft Corporation.
9 # SPDX-License-Identifier: BSD-2-Clause-Patent
21 vm_image: 'windows-latest'
23 run_flags: "MAKE_STARTUP_NSH=TRUE QEMU_HEADLESS=TRUE"
25 #Use matrix to speed up the build process
29 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
33 Run.Flags: $(run_flags)
36 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
39 Build.Target: "RELEASE"
40 Run.Flags: $(run_flags)
43 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
47 Run.Flags: $(run_flags)
51 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
55 Run.Flags: $(run_flags)
58 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
61 Build.Target: "RELEASE"
62 Run.Flags: $(run_flags)
65 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
69 Run.Flags: $(run_flags)
73 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
74 Build.Arch: "IA32,X64"
77 Run.Flags: $(run_flags)
80 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
81 Build.Arch: "IA32,X64"
83 Build.Target: "RELEASE"
84 Run.Flags: $(run_flags)
87 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
88 Build.Arch: "IA32,X64"
91 Run.Flags: $(run_flags)
94 OVMF_IA32X64_FULL_DEBUG:
95 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
96 Build.Arch: "IA32,X64"
97 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"
99 Run.Flags: $(run_flags)
101 OVMF_IA32X64_FULL_RELEASE:
102 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
103 Build.Arch: "IA32,X64"
104 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"
105 Build.Target: "RELEASE"
106 Run.Flags: $(run_flags)
109 # This currently creates a very large image which is too big for the FDF declared range
110 # Ovmf maintainers suggest to skip this build for now.
112 # OVMF_IA32X64_FULL_NOOPT:
113 # Build.File: "$(package)/PlatformCI/PlatformBuild.py"
114 # Build.Arch: "IA32,X64"
115 # 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"
116 # Build.Target: "NOOPT"
117 # Run.Flags: $(run_flags)
127 - template: ../../../.azurepipelines/templates/platform-build-run-steps.yml
129 tool_chain_tag: VS2019
130 build_pkg: $(package)
131 build_target: $(Build.Target)
132 build_arch: $(Build.Arch)
133 build_file: $(Build.File)
134 build_flags: $(Build.Flags)
135 run_flags: $(Run.Flags)
137 - powershell: choco install qemu --version=2021.5.5; Write-Host "##vso[task.prependpath]c:\Program Files\qemu"
138 displayName: Install QEMU and Set QEMU on path # friendly name displayed in the UI
139 condition: and(gt(variables.pkg_count, 0), succeeded())