kbuild: gitignore output directory
authorVladimir Kondratiev <vladimir.kondratiev@linux.intel.com>
Sun, 3 Feb 2019 08:48:40 +0000 (10:48 +0200)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Tue, 19 Feb 2019 13:50:32 +0000 (22:50 +0900)
When compiling into output directory using O=, many files
created under KBUILD_OUTPUT that git considers
as new ones; git clients, ex. "git gui" lists it, and it clutters
file list making it difficult to see what was really changed

Generate .gitignore in output directory that ignores all
its content

Signed-off-by: Vladimir Kondratiev <vladimir.kondratiev@linux.intel.com>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Makefile

index 97ee0be24d52bb40fc04c8ac0bcb28522ae54449..d487fca342c49892a9d85cba447f573ea43ef18e 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -483,10 +483,13 @@ PHONY += outputmakefile
 # outputmakefile generates a Makefile in the output directory, if using a
 # separate output directory. This allows convenient use of make in the
 # output directory.
+# At the same time when output Makefile generated, generate .gitignore to
+# ignore whole output directory
 outputmakefile:
 ifneq ($(KBUILD_SRC),)
        $(Q)ln -fsn $(srctree) source
        $(Q)$(CONFIG_SHELL) $(srctree)/scripts/mkmakefile $(srctree)
+       $(Q){ echo "# this is build directory, ignore it"; echo "*"; } > .gitignore
 endif
 
 ifneq ($(shell $(CC) --version 2>&1 | head -n 1 | grep clang),)