Branch: refs/heads/master
  Home:   https://github.com/tianocore/edk2
  Commit: f1e014a5caa576655170ae794dc1907c6304ea1b
      
https://github.com/tianocore/edk2/commit/f1e014a5caa576655170ae794dc1907c6304ea1b
  Author: Oliver Smith-Denny <o...@microsoft.com>
  Date:   2024-12-10 (Tue, 10 Dec 2024)

  Changed paths:
    M BaseTools/Conf/tools_def.template

  Log Message:
  -----------
  BaseTools: Add /WHOLEARCHIVE for VS2022 Builds

VS2022's DLINK2_FLAGS (containing only /WHOLEARCHIVE) was commented
out during upstreaming, due to some downstream platform issues
when /WHOLEARCHIVE was set. This does not prove an issue for edk2
and is what is used for earlier versions of VS, so is added here
for VS2022.

If platforms see issues, bugs should be filed on edk2 (or fixed in
the platform if applicable).

Signed-off-by: Oliver Smith-Denny <o...@microsoft.com>


  Commit: bcbb7099594af28b5ba40521ba2ecef253adaa9f
      
https://github.com/tianocore/edk2/commit/bcbb7099594af28b5ba40521ba2ecef253adaa9f
  Author: Oliver Smith-Denny <o...@microsoft.com>
  Date:   2024-12-10 (Tue, 10 Dec 2024)

  Changed paths:
    M BaseTools/Conf/build_rule.template
    M BaseTools/Conf/target.template
    M BaseTools/Conf/tools_def.template
    M CryptoPkg/CryptoPkg.dsc
    M SecurityPkg/SecurityPkg.dsc

  Log Message:
  -----------
  BaseTools: Add VS2022 XIPFLAGS

BaseTools has a limitation that modules in FVs that are force rebased
must have the same file and section alignment. This is intended for
XIP modules.

VS2019 and previous VS toolchains did not set 4k section alignment,
but VS2022 does, in order for memory protections to be applied to
images. This causes issues when building SEC and PEI modules on
VS2022 as the file alignment is 0x20 but the section alignment
is 0x1000, so BaseTools will fail to generate the FV. One option
is to set the file alignment to 0x1000 for all of these files, but
that is a large waste of space and is not feasible on some platforms
that have limited flash space. The other option is to selectively
set 0x20 as the section alignment for SEC and PEI modules, which is
the approach GCC ARM/AARCH64 took.

This is only an issue for building 64-bit PEI on x86 currently, as
other architectures are not supported by VS2022 in edk2 yet. For IA32,
the section alignment is set to 0x20 and so it matches the file
alignment, however x64 PEI uses the X64 DLINK flags which have 0x1000
set. For other architectures that don't have the PEI/DXE architecture
split, this is also an issue.

This commit is required to use VS2022 as the default CI in edk2, as
OvmfPkgX64.dsc will fail to build. Any platform with 64-bit PEI also
requires this.

This commit also updates CryptoPkg.dsc and SecurityPkg.dsc as they
are setting custom section alignments.

Continuous-integration-options: PatchCheck.ignore-multi-package

Signed-off-by: Oliver Smith-Denny <o...@microsoft.com>


  Commit: 1c5c951ec33b7851da67feeaf222d3edd6eb89be
      
https://github.com/tianocore/edk2/commit/1c5c951ec33b7851da67feeaf222d3edd6eb89be
  Author: Oliver Smith-Denny <o...@microsoft.com>
  Date:   2024-12-10 (Tue, 10 Dec 2024)

  Changed paths:
    M .azurepipelines/Windows-VS2019.yml
    M .azurepipelines/templates/pr-gate-build-job.yml
    M .github/workflows/codeql.yml
    M .pytool/Readme.md
    M BaseTools/Edk2ToolsBuild.py
    M BaseTools/toolsetup.bat
    M EmulatorPkg/PlatformCI/.azurepipelines/Windows-VS2019.yml
    M EmulatorPkg/PlatformCI/PlatformBuild.py
    M EmulatorPkg/PlatformCI/ReadMe.md
    M EmulatorPkg/Readme.md
    M OvmfPkg/PlatformCI/.azurepipelines/Windows-VS2019.yml
    M OvmfPkg/PlatformCI/ReadMe.md
    M PrmPkg/Readme.md
    M PrmPkg/Samples/Readme.md
    M ReadMe.rst
    M UnitTestFrameworkPkg/ReadMe.md

  Log Message:
  -----------
  Update CI to VS2022

This PR updates the CI pipelines to use VS2022 instead of VS2019
as that is the latest supported VS toolchain on edk2.

Continuous-integration-options: PatchCheck.ignore-multi-package

Signed-off-by: Oliver Smith-Denny <o...@microsoft.com>


Compare: https://github.com/tianocore/edk2/compare/4c7c90254fa5...1c5c951ec33b

To unsubscribe from these emails, change your notification settings at 
https://github.com/tianocore/edk2/settings/notifications


_______________________________________________
edk2-commits mailing list
edk2-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to