Branch: refs/heads/master Home: https://github.com/tianocore/edk2 Commit: 81ba76f7df45b7bb18edae55375ea3b6abde4351 https://github.com/tianocore/edk2/commit/81ba76f7df45b7bb18edae55375ea3b6abde4351 Author: Oliver Smith-Denny <o...@microsoft.com> Date: 2025-01-22 (Wed, 22 Jan 2025)
Changed paths: M PrmPkg/PrmPkg.dsc M PrmPkg/Readme.md M PrmPkg/Samples/Readme.md Log Message: ----------- PrmPkg: Clarify Architecture Support Remove IA32 from supported architectures, as the MSVC build actually fails due to the linker expecting a __stdcall calling convention. IA32 PRMs are not supported anyway, only 64 bit OSes support PRM, so simply drop the building of IA32 PrmPkg and clarify the README. While there, clean up some markdown errors. Signed-off-by: Oliver Smith-Denny <o...@microsoft.com> Commit: 4613eb6abc22923a683f3f090601896eee4c4179 https://github.com/tianocore/edk2/commit/4613eb6abc22923a683f3f090601896eee4c4179 Author: Oliver Smith-Denny <o...@microsoft.com> Date: 2025-01-22 (Wed, 22 Jan 2025) Changed paths: M EmulatorPkg/EmulatorPkg.dsc M EmulatorPkg/Win/Host/WinHost.inf Log Message: ----------- EmulatorPkg: Fix IA32 MSVC Linker Warnings IA32 EmulatorPkg had many linker warnings because with the current set of linker flags, the MSVC linker was expecting the __stdcall calling convention on all entry points. This was an effect of having /SUBSYSTEM:CONSOLE on all binaries built in EmulatorPkg; this is only needed on WinHost, as that is what Windows launches. The linker options are adjusted to only set /SUBSYSTEM:CONSOLE on WinHost. Signed-off-by: Oliver Smith-Denny <o...@microsoft.com> Commit: 14cb48b0a053b44c5a6bcc89cbbbf86ac78c7820 https://github.com/tianocore/edk2/commit/14cb48b0a053b44c5a6bcc89cbbbf86ac78c7820 Author: Oliver Smith-Denny <o...@microsoft.com> Date: 2025-01-22 (Wed, 22 Jan 2025) Changed paths: M BaseTools/Conf/tools_def.template Log Message: ----------- BaseTools: Break Build on Linker Warnings Today VS2022 and GCC are set to treat all compiler warnings as errors and break the build. However, linker warnings for both do not break the build. There are critical errors that can be treated as warnings as the linker, such as not finding the module entry point and use a default address as the entry point. This will cause a runtime crash for something that should be caught at build time. This commit adds /WX to VS2022's DLINK_FLAGS and --fatal-warnings to GCC's DLINK_FLAGS for IA32, X64, ARM, and AARCH64 in order to break the build on linker warnings. VS2022 linker warning 4210 is ignored for all builds because it checks for static initializers and the linking of the VCRuntime. edk2 never links the VCRuntime (except for HOST_APPLICATIONs) and so the presence of static initializers will always cause this warning, even when the edk2 code calls these initializers that would otherwise be called in the _CRT_INIT function of the VCRuntime. At the time of this commit, it only fails in CryptoPkg for building OpenSSL, but could fail anywhere a static initializer is used. Signed-off-by: Oliver Smith-Denny <o...@microsoft.com> Compare: https://github.com/tianocore/edk2/compare/336e7e06eb91...14cb48b0a053 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