|
From: Hans-Bernhard B. <HBB...@t-...> - 2011-02-17 23:05:35
|
On 17.02.2011 22:48, Ethan A Merritt wrote: > On Wednesday, February 16, 2011 03:38:13 pm Hans-Bernhard Bröker wrote: >> That's not really supposed to happen. There's code in the Makefiles >> that automatically builds everything, _including_ configure itself, >> whenever any of the files it's made from change. > Actually, I do not see any such depency or target in the Makefiles. They're there (see the top-level Makefile, look for am__configure_deps and its uses), but they're disabled. You actually disabled those yourself, Ethan, when you put the AM_MAINTAINER_MODE macro into configure.in. Now people need to run configure with --enable-maintainer-mode to get back those rules, but since neither ./prepare nor any of the README files mentions this fact, just about everybody, including yourself, missed that. IMHO that rather convincingly proves that AM_MAINTAINER_MODE is a bad idea, and I suggest we take back that change. > On the other hand, I have no strong objection to putting a copy of > the configure script into CVS. Doing so would be no worse than > keeping a copy of gnuplot.texi in .../docs, which we already do. ... and which routinely gets way out of synch, because 'make' doesn't even build it, so people don't even know they forgot to update it. Which brings us to the key reason why generated files really should never be in CVS: their timestamps get jumbled at checkout/update time, and thus they will get out of synch without the Makefiles getting a chance to notice. As-is, the gnuplot.texi in CVS is basically useless --- it's out of synch most of the time (by 8 revisions, or two months, right now), and even if you decide you want to build it explicitly by cd docs ; make gnuplot.texi there are significant odds that 'make' will claim there's nothing to do even though the file is actually out of date. |