[sane-devel] Autotools generated files and CVS

Chris Bagwell chris at cnpbagwell.com
Sat Jan 17 02:25:24 UTC 2009


Hi all,

I've not seen this discussed in mailing list archive.  Is there any past 
discussions?

Its pretty common practice (but not 100%) that projects using autotools 
to not check in files generated by autoconf/autoreconf into 
CVS/git/etc.  Currently, the sane project falls into the camp that they 
check these files into CVS.  Is the project open to removing these files?

What would that change mean to you?  It requires CVS users to have 
autotools installed on their system and the first time you check out 
CVS, you'd have to manually run "autoreconf --install".  Not much beyond 
that; although autotools will be required to stay on the system in case 
a CVS update requires rerunning it.

Reasons to continue leaving them in CVS:

* Autotools not required, as long as developer is not modifying configure.in

Reasons for leaving them out of CVS:

* People submitting patches tend to have a wide range of autotools 
versions on their systems.  This leads to multiple issue.  They include 
but are not limited to:
** A one line change to configure.in will cause 100's of lines of 
updates to CVS after running "autoreconf" if submitters version of 
autotools doesn't match the previous persons (newer or older).  For 
example, I'm running autoconf 2.63 but main submitter to current CVS 
seems to be using 2.61
** Autotools scripts are not perfect when it updates files.  When you 
rerun autoreconf, its easy to have only some autotools support files 
updated.  The support files could be from incompatible versions of 
autotools. Its easy for this mismatched files to find their way into CVS 
and cause other peoples compiles to fail.  I've seen this in other 
projects.  The work around is to run "autoreconf --install --force" but 
that has its own issues (like overwriting our custom ltmain.sh).

Files requested to remove from CVS.

acinclude.m4
aclocal.m4
config.guess
config.sub
configure
install-sh
mkinstalldirs
include/sane/config.h.in

Files note requested to remove:

ltmail.sh [ custom modified ]
libtool.m4 [ forces aclocal.m4 to have macros that match custom ltmail.sh ]
[ automake can install/overwrite the following files at times ]
INSTALL
NEWS
README
AUTHORS
ChangeLog
COPYING

Chris



More information about the sane-devel mailing list