[U-Boot] building cross_tools, _POSIX_C_SOURCE and _XOPEN_SOURCE are redefined

Jelle van der Waa jelle at vdwaa.nl
Tue Mar 28 11:36:51 UTC 2017


On 03/28/17 at 05:51am, Robert P. J. Day wrote:
> On Fri, 17 Mar 2017, Tom Rini wrote:
> 
> > On Wed, Mar 15, 2017 at 04:02:20AM -0400, Robert P. J. Day wrote:
> > >                  from ././include/libfdt_env.h:12,
> > >                  from <command-line>:0:
> > > /usr/include/features.h:225:0: note: this is the location of the previous definition
> > >  # define _POSIX_C_SOURCE 200809L
> > >  ^
> > > In file included from /usr/include/python2.7/pyconfig.h:6:0,
> > >                  from /usr/include/python2.7/Python.h:8,
> > >                  from tools/libfdt_wrap.c:143:
> > > /usr/include/python2.7/pyconfig-64.h:1225:0: warning: "_XOPEN_SOURCE" redefined
> > >  #define _XOPEN_SOURCE 600
> > >  ^
> > > In file included from /usr/include/stdint.h:25:0,
> > >                  from /usr/lib/gcc/x86_64-redhat-linux/5.3.1/include/stdint.h:9,
> > >                  from ././include/compiler.h:19,
> > >                  from ././include/libfdt_env.h:12,
> > >                  from <command-line>:0:
> > > /usr/include/features.h:166:0: note: this is the location of the previous definition
> > >  # define _XOPEN_SOURCE 700
> > >  ^
> > >
> > >
> > >   not sure if that concerns anyone enough to want to tweak it.
> >
> > This is the second report I've gotten about this.  But, we don't set any
> > of those things directly.  It's something related to the python install
> > you have.  Can you please dig a bit more?  Thanks!
> 
>   if no one else has figured out what is going on here, i'll try
> poking around this weekend. but AFAIK, i haven't done anything out of
> the ordinary with my python installation.

The issue is that Python.h has to be included before the rest of the
header files. As can be read in the Python documentation:

"Note Since Python may define some pre-processor definitions which
affect the standard headers on some systems, you must include Python.h
before any standard headers are included." [1]

I have no idea how to achieve this though in u-boot.

[1] https://docs.python.org/3/c-api/intro.html#includes

-- 
Jelle van der Waa


More information about the U-Boot mailing list