On 6 December 2015 at 09:03, Jordan Justen <[email protected]> wrote: > On 2015-12-05 22:26:53, Ard Biesheuvel wrote: >> On 6 December 2015 at 01:44, Jordan Justen <[email protected]> wrote: >> > On 2015-12-04 11:21:18, Ard Biesheuvel wrote: [...] >> >> Is this a clean rebuild? >> > >> > Yes, it was. >> > >> >> And did you regenerate your Conf/tools_def.txt as well? > > Yes-ish. I symlink the templates from BaseTools/Conf to Conf. > >> I cannot reproduce the behavior where COMMON sections are created by >> GCC in the presence of -fno-common. > > The issue appears to be that GCC44_ALL_CC_FLAGS needs to also be > modified. OVMF seems reasonably happy with the flag on GCC49. >
Ah yes. I should have remembered that the GCC4x toolchains for X64 and IA32 don't include GCC_ALL_CC_FLAGS while ARM and AARCH64 do. I would expect the OVMF build to fail with secure boot enabled, since I have two patches pending against CryptoPkg dealing with duplicated uninitialized globals. > I found this by searching for '-include AutoGen.h'. Maybe there are > some other cases we should cover? > Well, only the users of GccBase.lds must pass -fno-common (or they will get the same results you got). But once we know the code base is COMMON-clean so to say (i.e., all uninitialized globals with external linkage are defined exactly once), it no longer matters that much, although I would hate to create more ways that VS users can break the GCC build inadvertently. So let's see what Liming can find out about Visual Studio in this regard. _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

