今天偶然注意到edk2 的最新版本:edk2-stable202008 在
https://github.com/tianocore/edk2/releases/tag/edk2-stable202008 可以下载到。
从资料上看,目前 Windows 下的编译工具已经切换到了 VS2019。

这个版本是 2020 九月 四日 Release 的,改动如下:
- BootGuard TOCTOU vulnerability (CVE-2019-11098)
- Provide MACROs to disable SHA1 support
- Update openssl version to latest stable version 1.1.1g
- TPM Add capability to let PEIM extend TcgEvent
- TPM Bios to verify TPM2_ChangeEPS Support through TPM Capabilities command request and enable it if available
- Add FSP binary measurement
- CXL 1.1 Base Specification Register definitions
- BaseTools: Add support on C files to consume ASL files
- Enable BSD-2-Clause-Patent license checker for new added files in open CI
- Enable ECC (EFI Code Checker) checker in open CI
- Add UNIT_TESTING_DEBUG define to enable source level debugging of host based unit tests
- Add new instance of BaseLib that for host based unit tests called UnitTestHostBaseLib
- Add a pre-memory AP vector at 0xFF000
- IntelFsp2Pkg: Add FSP*_ARCH_UPD
- Dynamic AML: A solution to simplify runtime generation of Definition Block tables
- Add support to OVMF for AMD SEV-ES
- Add bhyve hypervisor support to EDK2
- Add LSI 53C895A SCSI controller support to OVMF
下载代码进行简单的测试(我仍然使用 VS2015):
第一步,在 VS2015 X86 Native 窗口下,使用 edksetup forcerebuild 命令编译 build 中使用到的工具。但是编译过程中会报错,错误指向 Brotli ,这是一个压缩算法, Github 给出的代码只是给出了指向它的链接,所以下载到的代码中并不包括,所以需要我们手工补充之。

下载到指定的版本(这里是 66C328),放置在edk202008\BaseTools\Source\C\BrotliCompress 目录下,再次编译即可通过:

第二步,编译模拟器的代码。在 edk2/MdeModulePkg/Library/BrotliCustomDecompressLib/ 同样需要放置Brotli的代码。编译命令:
build -p EmulatorPkg\EmulatorPkg.dsc -t VS2015x86 -a X64

编译结果是edk202008\Build\EmulatorX64\DEBUG_VS2015x86\X64\ WinHost.exe

结论:使用 VS2015 仍然可以正常编译 EDK2 202008。
完整的代码我在Baidu网盘中放置了一份,有需要的朋友可以下载:
链接: https://pan.baidu.com/s/14luXRtDvtfx0zR9-8_WmNQ 提取码: 6i33
提供的没有AppPkg,采用罗冰提供的AppPkg编译不过,采用罗冰提供的ekd2,EmulatorPkg编译不过。