[PATCH 3.12 08/84] kbuild: forbid kernel directory to contain spaces and colons
From: Jiri Slaby
Date: Mon Oct 17 2016 - 04:07:52 EST
From: Robert Jarzmik <robert.jarzmik@xxxxxxx>
3.12-stable review patch. If anyone has any objections, please let me know.
===============
commit 51193b76bfff5027cf96ba63effae808ad67cca7 upstream.
When the kernel path contains a space or a colon somewhere in the path
name, the modules_install target doesn't work anymore, as the path names
are not enclosed in double quotes. It is also supposed that and O= build
will suffer from the same weakness as modules_install.
Instead of checking and improving kbuild to resist to directories
including these characters, error out early to prevent any build if the
kernel's main directory contains a space.
Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
Signed-off-by: Michal Marek <mmarek@xxxxxxxx>
Signed-off-by: Jiri Slaby <jslaby@xxxxxxx>
---
Makefile | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/Makefile b/Makefile
index 0b3a710c8a44..297c605c25bf 100644
--- a/Makefile
+++ b/Makefile
@@ -113,6 +113,10 @@ _all:
# Cancel implicit rules on top Makefile
$(CURDIR)/Makefile Makefile: ;
+ifneq ($(words $(subst :, ,$(CURDIR))), 1)
+ $(error main directory cannot contain spaces nor colons)
+endif
+
ifneq ($(KBUILD_OUTPUT),)
# Invoke a second make in the output directory, passing relevant variables
# check that the output directory actually exists
--
2.10.1