BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3156
This commit re-enables the EmulatorPkg IA32 GCC5 CI builds with fixing library dependencies. The IA32 GCC5 CI builds are broken as the CI runner environment has changed. According to commit `612edbe6cd71f4392b681b75849b2ab6e48f592d`, which temporary disabled the CI builds, they are not working due to a failure to install the i386 library dependencies in Ubuntu 18.04. As previously commented in the Github Actions issue[1], the missing gcc multi-architecture libraries prevent from successful build. This commit fixes this issue by adding the missing library with version specified. [1] https://github.com/actions/virtual-environments/issues/2324#issuecomment-749985726 Cc: Andrew Fish <af...@apple.com> Cc: Ray Ni <ray...@intel.com> Signed-off-by: Akira Moroo <retrag...@gmail.com> --- .../.azurepipelines/Ubuntu-GCC5.yml | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml b/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml index 416c15e708..587976d815 100644 --- a/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml +++ b/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml @@ -47,6 +47,27 @@ jobs: Build.Target: "NOOPT" Run.Flags: $(run_flags) Run: $(should_run) + EmulatorPkg_IA32_DEBUG: + Build.File: "$(package)/PlatformCI/PlatformBuild.py" + Build.Arch: "IA32" + Build.Flags: "" + Build.Target: "DEBUG" + Run.Flags: $(run_flags) + Run: $(should_run) + EmulatorPkg_IA32_RELEASE: + Build.File: "$(package)/PlatformCI/PlatformBuild.py" + Build.Arch: "IA32" + Build.Flags: "" + Build.Target: "RELEASE" + Run.Flags: $(run_flags) + Run: $(should_run) + EmulatorPkg_IA32_NOOPT: + Build.File: "$(package)/PlatformCI/PlatformBuild.py" + Build.Arch: "IA32" + Build.Flags: "" + Build.Target: "NOOPT" + Run.Flags: $(run_flags) + Run: $(should_run) EmulatorPkg_X64_FULL_DEBUG: Build.File: "$(package)/PlatformCI/PlatformBuild.py" Build.Arch: "X64" @@ -68,6 +89,27 @@ jobs: Build.Target: "NOOPT" Run.Flags: $(run_flags) Run: $(should_run) + EmulatorPkg_IA32_FULL_DEBUG: + Build.File: "$(package)/PlatformCI/PlatformBuild.py" + Build.Arch: "IA32" + Build.Flags: "BLD_*_SECURE_BOOT_ENABLE=TRUE" + Build.Target: "DEBUG" + Run.Flags: $(run_flags) + Run: $(should_run) + EmulatorPkg_IA32_FULL_RELEASE: + Build.File: "$(package)/PlatformCI/PlatformBuild.py" + Build.Arch: "IA32" + Build.Flags: "BLD_*_SECURE_BOOT_ENABLE=TRUE" + Build.Target: "RELEASE" + Run.Flags: $(run_flags) + Run: $(should_run) + EmulatorPkg_IA32_FULL_NOOPT: + Build.File: "$(package)/PlatformCI/PlatformBuild.py" + Build.Arch: "IA32" + Build.Flags: "BLD_*_SECURE_BOOT_ENABLE=TRUE" + Build.Target: "NOOPT" + Run.Flags: $(run_flags) + Run: $(should_run) workspace: clean: all @@ -85,3 +127,14 @@ jobs: build_file: $(Build.File) build_flags: $(Build.Flags) run_flags: $(Run.Flags) + # Add steps to install some IA32 only dependencies + extra_install_step: + - bash: sudo dpkg --add-architecture i386 + displayName: Add i386 to dpkg + condition: and(gt(variables.pkg_count, 0), eq(variables['Build.Arch'], 'IA32'), succeeded()) + - bash: sudo apt-get update + displayName: do apt-get update + condition: and(gt(variables.pkg_count, 0), eq(variables['Build.Arch'], 'IA32'), succeeded()) + - bash: sudo apt-get install libc6-dev:i386 libx11-dev:i386 libxext-dev:i386 lib32gcc-9-dev gcc-9-multilib + displayName: Add additional i386 packages + condition: and(gt(variables.pkg_count, 0), eq(variables['Build.Arch'], 'IA32'), succeeded()) -- 2.33.0 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#83216): https://edk2.groups.io/g/devel/message/83216 Mute This Topic: https://groups.io/mt/86785442/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-