bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: .cvsignore and .gitignore


From: Reuben Thomas
Subject: Re: .cvsignore and .gitignore
Date: Thu, 20 Nov 2008 23:38:41 +0100 (CET)
User-agent: Alpine 2.00 (DEB 1167 2008-08-23)

On Thu, 6 Nov 2008, Bruno Haible wrote:

Hi,

Reuben Thomas wrote:
There seem to be basically two classes of user when it comes to what is
ignored:

1. gnulib is considered as a build dependency, so no files provided or
generated by gnulib are put in CVS/git.

2. gnulib is not considered as a build dependency, so files provided by
gnulib are put in CVS/git, but files generated from them are not.

Yes, this is also how the gnulib documentation, section "Issues with Version
Control Systems", describes it.

This does not seem to be the case.

The gnulib documentation describes two types of build system:

a. All sources, generated or not, are put in VCS; use --no-vc-files. This differs from my case 2, where generated files are not checked in.

b. Same as my 1 above: no files provided or generated by gnulib are stored in VCS (except gnulib-cache.m4).

So, the documentation does not explain what --vc-files is for (in fact, it doesn't mention it). In case 1 (or b), --vc-files is not sufficient, as it does not include generated files. In case a, --no-vc-files is required. In case 2, --no-vc-files is also required, although this doesn't fully solve the problem either.

It seems that the easiest approach for me is to switch to case 1/b. Thus, gnulib becomes a build dependency, but only for git sources; for distributions, gnulib provides the needed rules to include all the sources. This is fine for me. Then, I still have to supplement the .gitignore files manually, but the worst that happens is that I get some ugly notices about uncontrolled files, rather than the current case, where I have the wrong files in git.

In summary:

i. What is --vc-files for? It doesn't seem to have a use, unless automake automatically supplies the rest of the list needed for case 1/b.

ii. It would be good if the gnulib docs explained that what I was trying to do was a bad idea, and why.

I'd be happy to help with the documentation issues here.

The doc says that if you're a case 2, you can pass the option --no-vc-files
to gnulib-tool. This will solve half of your problem.

The other half is that you have files generated from "make" while you perform
VCS operations, and you wish them to be added to .cvsignore or .gitignore.
That is an issue you should bring up with the automake developers, IMO. If
you were developing packages without gnulib, that use the automake
BUILT_SOURCES variable, you would have the same problem.

This bit of the conversation I leave up to the automake developers!

--
http://rrt.sc3d.org/ | compulsion, n.  the eloquence of power (Bierce)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]