[coreboot] [RFC] Setting C99 by default

Paul Menzel paulepanter at users.sourceforge.net
Sun Nov 27 23:07:37 CET 2016


Dear coreboot folks,


Using GCC 4.9.2 coreboot fails to build for certain boards, whose code
uses ‘for’ loop initial declarations.

```
$ gcc --version
gcc (Debian 4.9.2-10) 4.9.2
[…]
$ make # lenovo/x60 with native graphics initialization
[…]
    CC         ramstage/northbridge/intel/i945/gma.o
src/northbridge/intel/i945/gma.c: In function 'probe_edid':
src/northbridge/intel/i945/gma.c:570:2: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
  for (int i = 0; i < 8; i++) {
  ^
src/northbridge/intel/i945/gma.c:570:2: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
Makefile:316: recipe for target 'build/ramstage/northbridge/intel/i945/gma.o' failed
make: *** [build/ramstage/northbridge/intel/i945/gma.o] Error 1
```

As Linux has switched to C99 in version 3.18, I suggest that coreboot
also explicitly sets that in the Makefiles, so that code can easily be
copied and so that there is no dependency on the compiler default.

Are there any objections?


Thanks,

Paul


[1] https://review.coreboot.org/17623/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20161127/caa60198/attachment.asc>


More information about the coreboot mailing list