lkml.org 
[lkml]   [2019]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [PATCH v2] kbuild: gitignore output directory
    Date
    Hi,

    > 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

    just found this when testing -rc1.
    Unfortunately this breaks my setup, because I keep a totally separate
    git repository in my build directories to track (various versions of)
    .config. So .gitignore there is carefully crafted to ignore most build
    artefacts, but not .config, for instance.

    I am not sure how git would interact with the build directory for you?
    Do you build into a subdirectory of the kernel tree?

    I was hoping that we would not overwrite unrelated files in directories
    outside of the kernel tree. In case this is about a subdirectory of the
    source tree, can we somehow check for this case?

    Cheers,
    Andre.

    >
    > Signed-off-by: Vladimir Kondratiev <vladimir.kondratiev@linux.intel.com>
    > Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
    > ---
    > Makefile | 3 +++
    > 1 file changed, 3 insertions(+)
    >
    > diff --git a/Makefile b/Makefile
    > index 97ee0be24d52..d487fca342c4 100644
    > --- 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),)
    > --
    > 2.17.1

    \
     
     \ /
      Last update: 2019-03-22 16:54    [W:3.688 / U:1.112 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site