[U-Boot] [PATCH] dts/Makefile: Turn off system-/gcc-specific predefined macros

Mike Frysinger
2012-07-26T16:23:20Z

On Thursday 26 July 2012 03:06:06 Horst Kronstorfer wrote:
> On 07/25/2012 06:06 PM, Mike Frysinger wrote:
> > On Tuesday 24 July 2012 15:38:55 Horst Kronstorfer wrote:
> >> On 07/24/2012 05:28 PM, Mike Frysinger wrote:
> >>> On Tuesday 24 July 2012 06:11:04 Horst Kronstorfer wrote:
> >>>> On 07/19/2012 05:22 AM, Mike Frysinger wrote:
> >>>>> On Friday 13 July 2012 09:03:40 Horst Kronstorfer wrote:
> >>>>>> Add '-undef' to DTS_CPPFLAGS to avoid unwanted expansion of dts
> >>>>>> content that matches system-specific or gcc-specific predefined
> >>>>>> macros.
> >>>>>>
> >>>>>> Example: A number of PowerPC related *.dts files in the kernel
> >>>>>> define a property named 'linux,network-index' which (w/o '-undef')
> >>>>>> is expanded to '1,network-index' by the preprocessor because of
> >>>>>> '#define linux 1.'
> >>>>>
> >>>>> i think you should use -ansi instead. that's what we use in other
> >>>>> places for the same reason.
> >>>>
> >>>> this would increase the probability of a name clash.
> >>>
> >>> no idea what you're talking about. have you actually looked at the
> >>> output of `gcc -E -dD -ansi` ?
> >>
> >> $ gcc -E -dM -ansi - </dev/null | wc -l
> >> 229
> >> $ gcc -E -dM -undef - </dev/null | wc -l
> >> 2
> >
> > and ? did you *look* at the output ? they're all of the form __foo__.
>
> i already considered that.
>
> > do any device trees really use __foo__ names ? i don't think so.
>
> is there any drawback using '-undef' in this particular case besides
> "we use -ansi in other places for the same reason"?

we use -ansi because it's more portable and has known behavior in the build
system
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20120726/1480d2fb/attachment.pgp>