Kbuild works in objtree, not in srctree. So, __FILE__ is prefixed with $(srctree)/ for out-of-tree build. For example, WARN_ON() will look as follows if you built your kernel out of source tree: WARNING: CPU: 1 PID: 1 at /path/to/build/directory/arch/arm64/kernel/foo.c:... With this series, it will always look like follows regardless of O= option. WARNING: CPU: 1 PID: 1 at arch/arm64/kernel/foo.c:... If GCC does not support -Wno-builtin-macro-redefined (i.e. gcc version < 4.4), the output is prefixed with absolute path. Masahiro Yamada (2): kbuild: add stringify helper to quote a string passed to C files kbuild: redefine __FILE__ as relative path from $(srctree) if possible Makefile | 9 +++++++++ scripts/Kbuild.include | 4 ++++ scripts/Makefile.lib | 2 +- 3 files changed, 14 insertions(+), 1 deletion(-) -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html