x86, boot: Correct CFLAGS for hostprogs
authorH. Peter Anvin <hpa@zytor.com>
Thu, 22 Mar 2012 18:08:18 +0000 (11:08 -0700)
committerH. Peter Anvin <hpa@zytor.com>
Thu, 22 Mar 2012 19:42:51 +0000 (12:42 -0700)
commit446e1c86d51d0823e003a43a2b85c430efce2733
treea51969c3537002c1be427dd1f76a337bc97f87b8
parent13354dc412c36fe554f9904a92f1268c74af7e87
x86, boot: Correct CFLAGS for hostprogs

This is a partial revert of commit:
    d40f833 "Restrict CFLAGS for hostprogs"

The endian-manipulation macros in tools/include need <linux/types.h>,
but the hostprogs in arch/x86/boot need several headers from the
kernel build tree, which means we have to add the kernel headers to
the include path.  This picks up <linux/types.h> from the kernel tree,
which gives a warning.

Since this use of <linux/types.h> is intentional, add
-D__EXPORTED_HEADERS__ to the command line to silence the warning.

A better way to fix this would be to always install the exported
kernel headers into $(objtree)/usr/include as a standard part of the
kernel build, but that is a lot more involved.

Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Acked-by: Matt Fleming <matt.fleming@intel.com>
Link: http://lkml.kernel.org/r/1330436245-24875-5-git-send-email-matt@console-pimps.org
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
arch/x86/boot/Makefile