x86, boot: Explicitly include autoconf.h for hostprogs
authorMatt Fleming <matt.fleming@intel.com>
Fri, 12 Oct 2012 10:19:59 +0000 (11:19 +0100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 14 Oct 2012 19:41:28 +0000 (12:41 -0700)
The hostprogs need access to the CONFIG_* symbols found in
include/generated/autoconf.h.  But commit abbf1590de22 ("UAPI: Partition
the header include path sets and add uapi/ header directories") replaced
$(LINUXINCLUDE) with $(USERINCLUDE) which doesn't contain the necessary
include paths.

This has the undesirable effect of breaking the EFI boot stub because
the #ifdef CONFIG_EFI_STUB code in arch/x86/boot/tools/build.c is
never compiled.

It should also be noted that because $(USERINCLUDE) isn't exported by
the top-level Makefile it's actually empty in arch/x86/boot/Makefile.

Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Ingo Molnar <mingo@kernel.org>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/x86/boot/Makefile

index ce03476..ccce0ed 100644 (file)
@@ -37,7 +37,8 @@ setup-y               += video-bios.o
 targets                += $(setup-y)
 hostprogs-y    := mkcpustr tools/build
 
-HOST_EXTRACFLAGS += -I$(srctree)/tools/include $(USERINCLUDE) \
+HOST_EXTRACFLAGS += -I$(srctree)/tools/include \
+                   -include include/generated/autoconf.h \
                    -D__EXPORTED_HEADERS__
 
 $(obj)/cpu.o: $(obj)/cpustr.h