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

Reply via email to