2 # Azure Pipeline build file for building a platform.
4 # Platform: EmulatorPkg
8 # Copyright (c) Microsoft Corporation.
9 # SPDX-License-Identifier: BSD-2-Clause-Patent
18 package: 'EmulatorPkg'
19 vm_image: 'ubuntu-latest'
21 run_flags: "MAKE_STARTUP_NSH=TRUE"
23 #Use matrix to speed up the build process
26 EmulatorPkg_X64_DEBUG:
27 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
31 Run.Flags: $(run_flags)
33 EmulatorPkg_X64_RELEASE:
34 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
37 Build.Target: "RELEASE"
38 Run.Flags: $(run_flags)
40 EmulatorPkg_X64_NOOPT:
41 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
45 Run.Flags: $(run_flags)
47 EmulatorPkg_IA32_DEBUG:
48 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
52 Run.Flags: $(run_flags)
54 EmulatorPkg_IA32_RELEASE:
55 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
58 Build.Target: "RELEASE"
59 Run.Flags: $(run_flags)
61 EmulatorPkg_IA32_NOOPT:
62 Build.File: "$(package)/PlatformCI/PlatformBuild.py"
66 Run.Flags: $(run_flags)
76 - template: ../../../.azurepipelines/templates/platform-build-run-steps.yml
80 build_target: $(Build.Target)
81 build_arch: $(Build.Arch)
82 build_file: $(Build.File)
83 build_flags: $(Build.Flags)
84 run_flags: $(Run.Flags)
85 # Add steps to install some IA32 only dependencies
87 - bash: sudo dpkg --add-architecture i386
88 displayName: Add i386 to dpkg
89 condition: and(gt(variables.pkg_count, 0), eq(variables['Build.Arch'], 'IA32'), succeeded())
90 - bash: sudo apt-get update
91 displayName: do apt-get update
92 condition: and(gt(variables.pkg_count, 0), eq(variables['Build.Arch'], 'IA32'), succeeded())
93 - bash: sudo apt-get install libc6-dev:i386 libx11-dev:i386 libxext-dev:i386 lib32gcc-7-dev
94 displayName: Add additional i386 packages
95 condition: and(gt(variables.pkg_count, 0), eq(variables['Build.Arch'], 'IA32'), succeeded())