[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: gnulib doesn't add lib/spawn.h to .gitignore?
From: |
Stefano Lattarini |
Subject: |
Re: gnulib doesn't add lib/spawn.h to .gitignore? |
Date: |
Tue, 02 Oct 2012 13:06:45 +0200 |
On 10/01/2012 12:00 AM, Bruno Haible wrote:
> [Dropping bug-coreutils from CC]
>
> Hi Stefano,
>
Hi Bruno, sorry for the late answer.
>> OK, this is a minor annoyance rather than a real bug, but I guess
>> reporting it won't hurt.
>>
>> In GNU coreutils, the gnulib-provided 'bootstrap' script fails to add
>> the generated file 'lib/spawn.h' to the .gitignore in 'lib/':
>>
>> $ ./bootstrap && ./configure && make
>> ... [all is OK]
>> $ git status
>> ...
>> # Untracked files:
>> # (use "git add <file>..." to include in what will be committed)
>> #
>> # lib/spawn.h
>> nothing added to commit but untracked files present (use "git add" to
>> track)
>> $ grep spawn lib/.gitignore
>> /spawn-pipe.c
>> /spawn-pipe.h
>> /spawn.in.h
>> /spawn_faction_addclose.c
>> /spawn_faction_adddup2.c
>> /spawn_faction_addopen.c
>> /spawn_faction_destroy.c
>> /spawn_faction_init.c
>> /spawn_int.h
>> /spawnattr_destroy.c
>> /spawnattr_init.c
>> /spawnattr_setflags.c
>> /spawnattr_setsigmask.c
>> /spawni.c
>> /spawnp.c
>> /w32spawn.h
>
> I believe that the right choice of which files to put under version
> control and which files to declare gitignored, in a project that uses
> the GNU Autotools, is the following:
>
> Because releases are rolled through automake's "make distcheck", unused files
> can lie around in the working checkout. A separate "-clean" checkout is used
> which should not contain modifications nor unused files.
>
> in in
> Committed .gitignore .git/info/exclude
>
> Source Y N N
>
> gnulib-cache.m4 Y N N
>
> Brought in by autotools, N Y N
> gnulib-tool
>
> Generated by autotools N Y N
>
> Generated by "make" and N Y N
> distributed (i.e. kept by
> "make distclean")
>
> Generated by "make" and N N Y
> not distributed (i.e. erased by
> "make distclean")
>
Here I disagree: I believe also this kind of files should be listed
in .gitignore. So I'd appreciate if the .gitignore file generated by
gnulib-tool would list all the files that, through rules provided by
gnulib, are (or can be) be generated by "make all" and are cleaned by
"make distheck". Still, ad I said, this was just a minor annoyance,
and now that I understand the gnulib behaviour was deliberate, you are
fully free to disagree and keep the situation as-is; I can adjust by
tweaking .git/info/exclude, as you suggested.
> Editor backup files N Y N
>
>
> Currently gnulib-tool augments .gitignore for the files categorized as
> "Brought in by autotools, gnulib-tool".
>
> An option that would tell gnulib-tool to add also the files "Generated by
> "make" and distributed" could be useful, for modules that have a
> MAINTAINERCLEANFILES augmentation (such as 'parse-datetime' or 'iconv_open').
>
> But what you are talking about is the category "Generated by "make" and
> not distributed". I believe it depends on project policy whether such files
> go into .gitignore. To get at this list of files, gnulib-tool should collect
> the intersection of BUILT_SOURCES and MOSTLYCLEANFILES of all modules, right?
>
Well, for my "use case", it would be enough if, for each '*.h.in' file
added to .gitignore, it also added the corresponding '*.h' file. Not
truly general, but good enough for me. Still, as I said, no big deal.
Thanks,
Stefano
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: gnulib doesn't add lib/spawn.h to .gitignore?,
Stefano Lattarini <=