[PATCH 1/1] kbuild: use $(srctree) to locate config headers from external modules

From: Devin J. Pohly
Date: Fri Aug 01 2014 - 15:45:28 EST


When making modules_install for an out-of-tree module, the current
directory is $(KBUILD_OUTPUT), and the Makefile recipe which verifies
the existence of files in include/config is unable to find them using a
relative path. This leads to a spurious and puzzling "Kernel
configuration is invalid" warning when no configuration is actually
needed.

Since the file check is done in a recipe with `test -e' rather than as a
target or include, the usual search paths provided by VPATH and -I are
not consulted, so an explicit path is needed in this case.

Signed-off-by: Devin J. Pohly <djpohly+linux@xxxxxxxxx>
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index f6a7794..60c14a2 100644
--- a/Makefile
+++ b/Makefile
@@ -590,7 +590,7 @@ else
PHONY += include/config/auto.conf

include/config/auto.conf:
- $(Q)test -e include/generated/autoconf.h -a -e $@ || ( \
+ $(Q)test -e $(srctree)/include/generated/autoconf.h -a -e $(srctree)/$@ || ( \
echo >&2; \
echo >&2 " ERROR: Kernel configuration is invalid."; \
echo >&2 " include/generated/autoconf.h or $@ are missing.";\
--
2.0.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/