Re: Updating kernel.org cross compilers?
From: Arnd Bergmann
Date: Wed May 10 2017 - 03:58:20 EST
On Wed, May 10, 2017 at 12:18 AM, Segher Boessenkool
<segher@xxxxxxxxxxxxxxxxxxx> wrote:
> On Tue, May 09, 2017 at 03:59:27PM +0100, Andre Przywara wrote:
>> >> I was able to build (bare-metal) toolchains for
>> >> all architectures except arc, m68k, tilegx and tilepro.
>> >
>> > arc needs a more recent GCC; the other probably as well. GCC 7 should
>> > be out very soon, you probably want to wait for that :-)
>>
>> Well, GCC 7 indeed builds better, but then again is a very new compiler.
>> For instance in the moment it spits a lot of warnings when compiling the
>> kernel (mostly due to some *printf analysis). It's not hard to fix, but
>> this will take a while to trickle in and it's questionable whether this
>> will be backported everywhere.
>> So in addition to GCC 7.1 I'd like to have at least GCC 6.3 around,
>> which builds kernels without warnings today.
>
> If you don't want warnings, turn off the warnings or just don't look at
> them... or fix the problems? Many of the new warnings point out actual
> problems.
>
> Many of those sprintf problems in the kernel have already been fixed.
I've been using gcc-7.0 for a long time and fixed a lot of bugs it found,
along with more harmless warnings, but I had disabled a couple of
warning options when I first installed gcc-7 and ended up ignoring
those.
The exact set of additional options I used is:
-Wimplicit-fallthrough=0 -Wno-duplicate-decl-specifier
-Wno-int-in-bool-context -Wno-bool-operation -Wno-format-truncation
-Wno-format-overflow
there were a couple of others that I sent kernel fixes for instead.
I should probably revisit that list and for each of them either
only enable it with "make W=1" or fix all known warnings.
In the long run, I'd actually hope to fix all W=1 warnings too
and enable them by default.
Arnd