lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 19 Jun 2014 17:52:57 +0300
From:	Boaz Harrosh <>
To:	Michal Marek <>
CC:	linux-kernel <>,
	Alexei Starovoitov <>,
	Sam Ravnborg <>
Subject: [PATCH] kbuild: support of new KBUILD_FULL_PATH

The commit 9da0763bdd82572be243fcf5161734f11568960f

	kbuild: Use relative path when building in a subdir of the source tree

	When doing make O=<subdir>, use '..' to refer to the source tree. This
	allows for more readable compiler messages, and, more importantly, it
	sets the VPATH to '..', so filenames in WARN_ON() etc. will be shorter.

	Acked-by: Sam Ravnborg <>
	Signed-off-by: Michal Marek <>

Broke IDEs and other tools which analyze the make output.
Introduce a new KBUILD_FULL_PATH switch to Makefile that will revert
to the old output if KBUILD_FULL_PATH=1 is specified.
The default is KBUILD_FULL_PATH=0

Signed-off-by: Boaz Harrosh <>
 Documentation/kbuild/kbuild.txt |  9 +++++++++
 Makefile                        | 13 ++++++++-----
 2 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/Documentation/kbuild/kbuild.txt b/Documentation/kbuild/kbuild.txt
index 6466704..9133b47 100644
--- a/Documentation/kbuild/kbuild.txt
+++ b/Documentation/kbuild/kbuild.txt
@@ -77,6 +77,15 @@ Specify the output directory when building the kernel.
 The output directory can also be specified using "O=...".
 Setting "O=..." takes precedence over KBUILD_OUTPUT.
+Since Linux v3.16-rc1 the Kernel build system prefers to use
+relative paths when supplying file-paths to gcc and other
+tools. This will break IDEs and other environments that would
+parse the gcc output to find files and lines.
+Use KBUILD_FULL_PATH=1 on make command line to revert to old
+way of feeding tools with full-paths.
 For the deb-pkg target, allows overriding the normal heuristics deployed by
diff --git a/Makefile b/Makefile
index 97b2861..51fcebd 100644
--- a/Makefile
+++ b/Makefile
@@ -153,11 +153,14 @@ ifeq ($(KBUILD_SRC),)
         # building in the source tree
         srctree := .
-        ifeq ($(KBUILD_SRC)/,$(dir $(CURDIR)))
-                # building in a subdirectory of the source tree
-                srctree := ..
-        else
-                srctree := $(KBUILD_SRC)
+        srctree := $(KBUILD_SRC)
+        # if KBUILD_FULL_PATH=1 then do not use relative path
+	ifneq ($(KBUILD_FULL_PATH), 1)
+                ifeq ($(KBUILD_SRC)/,$(dir $(CURDIR)))
+                        # building in a subdirectory of the source tree
+                        srctree := ..
+                endif
 objtree		:= .

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

Powered by blists - more mailing lists