Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 14 Jan 2016 14:53:21 -0700
From:      Warner Losh <imp@bsdimp.com>
To:        Pedro Giffuni <pfg@freebsd.org>
Cc:        Steven Hartland <steven@multiplay.co.uk>, Nathan Whitehorn <nwhitehorn@freebsd.org>,  src-committers <src-committers@freebsd.org>,  "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>,  "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>
Subject:   Re: svn commit: r294029 - in head/sys/boot/efi: . boot1 loader
Message-ID:  <CANCZdfrOPJxSDNYbK_n8f6XSZ5b8qGb3DgT65pyiNnM8LLfVFw@mail.gmail.com>
In-Reply-To: <5698172E.6040107@FreeBSD.org>
References:  <201601141853.u0EIrshB007863@repo.freebsd.org> <56980BAE.6070304@freebsd.org> <569812A6.9020101@freebsd.org> <5698172E.6040107@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jan 14, 2016 at 2:46 PM, Pedro Giffuni <pfg@freebsd.org> wrote:

>
>
> El 14/01/2016 a las 16:27, Steven Hartland escribi=C3=B3:
>
>>
>>
>> On 14/01/2016 20:57, Nathan Whitehorn wrote:
>>
>>>
>>>
>>> On 01/14/16 10:53, Steven Hartland wrote:
>>>
>>>> Author: smh
>>>> Date: Thu Jan 14 18:53:54 2016
>>>> New Revision: 294029
>>>> URL: https://svnweb.freebsd.org/changeset/base/294029
>>>>
>>>> Log:
>>>>    Only build EFI components on supported compilers
>>>>       As the in-tree GCC does not support __attribute__((ms_abi)) EFI
>>>> can only
>>>>    be built with Clang.
>>>>       The EFI loader and boot1 validated this, but unused libefi was
>>>> still built
>>>>    causing issues under GCC after warnings where enabled by r293724.
>>>>       Disable building all of EFI when the selected compiler is GCC.
>>>>
>>>
>>> How about with newer-than-4.2 versions of GCC? Surely this *is*
>>> supported in newer compilers. Do we need some build infrastructure to h=
ow
>>> about the compiler version as well as type?
>>> -Nathan
>>>
>>
>> If it is then even without this change you wouldn't have have got the EF=
I
>> loader or boot1, just an unused libefi.
>>
>> This change ensures that builds with in-tree Clang and GCC build on all
>> platforms, even if GCC doesn't build the EFI components.
>>
>> If someone that uses none in-tree GCC has some time to dedicate to make
>> this work that would be great :)
>>
>>
> Specially since the gcc-4.2 compiler will be axed mercilessly before
> 11.0-RELEASE.


We hope, you mean.

Never versions of gcc will be supported where they work, and will be
required for some platforms where clang isn't quite there.
It looks to be added somewhere around the gcc 4.7 or  4.8 time frame,
though I couldn't find it in the release notes. The latest
attribute docs have this listed as supported. I suspect that 4.9 or 5.0
will be the earliest version of gcc to be realistically
supported with the external toolchain...

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfrOPJxSDNYbK_n8f6XSZ5b8qGb3DgT65pyiNnM8LLfVFw>