[OE-core] [PATCH 2/2] grub-efi: allow compilation without large model support

jhuang0 jackie.huang at windriver.com
Fri Nov 22 06:18:32 UTC 2013



On 11/22/2013 1:04 PM, Darren Hart wrote:
> On Fri, 2013-11-22 at 11:37 +0800, jhuang0 wrote:
>>
>> On 11/22/2013 10:49 AM, Darren Hart wrote:
>>> On Wed, 2013-11-20 at 09:40 +0800, jackie.huang at windriver.com wrote:
>>>> From: Jackie Huang <jackie.huang at windriver.com>
>>>>
>>>> -mcmodel=large is not supported by gcc with version lower
>>>> than 4.4, but we don't need to use memory over 4GiB, so add
>>>> a patch to allow compilation without large model support.
>>>>
>>>> Signed-off-by: Jackie Huang <jackie.huang at windriver.com>
>>>> ---
>>>>    ...allow-a-compilation-without-mcmodel-large.patch | 69 ++++++++++++++++++++++
>>>>    meta/recipes-bsp/grub/grub-efi_2.00.bb             |  1 +
>>>>    2 files changed, 70 insertions(+)
>>>>    create mode 100644 meta/recipes-bsp/grub/files/grub-efi-allow-a-compilation-without-mcmodel-large.patch
>>>>
>>>> diff --git a/meta/recipes-bsp/grub/files/grub-efi-allow-a-compilation-without-mcmodel-large.patch b/meta/recipes-bsp/grub/files/grub-efi-allow-a-compilation-without-mcmodel-large.patch
>>>> new file mode 100644
>>>> index 0000000..b2be74a
>>>> --- /dev/null
>>>> +++ b/meta/recipes-bsp/grub/files/grub-efi-allow-a-compilation-without-mcmodel-large.patch
>>>> @@ -0,0 +1,69 @@
>>>> +From 0cea0e4266214da1f11e812834f5d5c47a6e04e6 Mon Sep 17 00:00:00 2001
>>>> +From: Jackie Huang <jackie.huang at windriver.com>
>>>> +Date: Tue, 5 Nov 2013 07:23:32 -0500
>>>> +Subject: [PATCH] Allow a compilation without -mcmodel=large
>>>> +
>>>> +* kern/efi/mm.c (grub_efi_allocate_pages): don't allocate >4GiB
>>>> +  when compiled without -mcmodel=large
>>>> +  (filter_memory_map): remove memory post 4 GiB when compiled
>>>> +  without -mcmodel=large
>>>> +* configure.ac: add -DMCMODEL_SMALL=1 to TARGET_CFLAGS when
>>>> +  -mcmodel=large isn't supported
>>>> +
>>>> +Upstream-Status: Inappropriate [configuration]
>>>
>>> Nice try ;-) This is compatibility, not configuration. If grub-efi
>>> maintainers refuse to accept the patch that's up to them, but we need to
>>
>> Actually it's ported from old version of grub which means that they
>> allowed the comilation without large model support before, but not now.
>>   From the Changelog, it was added in 2009:
>>
>> 2009-06-04  Vladimir Serbinenko  <phcoder at gmail.com>
>>
>>           Allow a compilation without -mcmodel=large
>>
>>           * kern/efi/mm.c (grub_efi_allocate_pages): don't allocate >4GiB
>>           when compiled without -mcmodel=large
>>           (filter_memory_map): remove memory post 4 GiB when compiled
>>           without -mcmodel=large
>>           * configure.ac: fail gracefully and add -DMCMODEL_SMALL=1 to
>>           TARGET_CFLAGS when -mcmodel=large isn't supported
>>
>> but it was removed in 2010:
>> 2010-04-21  Vladimir Serbinenko  <phcoder at gmail.com>
>>
>>           * configure.ac: Refuse to compile for x86_64-efi is mcmodel=large
>>           is not supported.
>>
>> So I think they may not accept this patch again.
>
> It does appear to be a deliverate removale, fortunatley, you know
> exactly who to Cc on the list now :-) It's worth shooting it off to the
> list to see what they say. Either way, it is definitely not a
> configuration patch.

Yes, I will change to compatibility in v4 and add Vladimir in cc list.

Thanks,
Jackie

>
> --
> Darren Hart
> Intel Open Source Technology Center
> Yocto Project - Linux Kernel
>
>
>
>

-- 
Jackie Huang
WIND RIVER | China Development Center
MSN:jackielily at hotmail.com
Tel: +86 8477 8594
Mobile: +86 138 1027 4745



More information about the Openembedded-core mailing list