Subject: Re: cygwin's autoconf?
From: Robert Collins <[email-masked]>
To: Soren A <[email-masked]>
Cc: [email-masked]
Date: 02 Dec 2002 20:21:57 +1100

On Mon, 2002-12-02 at 11:36, Soren A wrote:

> At the very LEAST, something that does what AM_MAINTAINER_MODE causes, 
> should have been the *default* for all autotool'd packages, and only by 
> significant contortions should it have been made possible to cause all that 
> "default" behavior to get activated. But instead it's the other way around, 
> and users are at the mercy of package maintainers' ignorance or awareness 
> of the importance of (at the very MINIMUM) placing AM_MAINTAINER_MODE in 
> their configuration file.

Soren, please don't rant on the wrong list. Firstly, few people here are
autotool gurus, and thus your erroneous statements may go uncorrected
(see below for the correction). Secondly, this is a CYGWIN list, not a
autotool design philosophy list.

Now, for the problem reported.... the root problem here is *NOT*
autotools brokenness. It's CVS being broken (unless I'm seriously
mistaken).

The autotools very carefully set datestamps on the files that depend on
each to ensure they don't rebuild automatically on user machines. CVS
records the files as all having the datestamp of the commit AFAIK...
I've seen this behaviour before.

There are three solutions, none of which need AM_MAINTAINER_MODE.

1) Commit the generated files into CVS in date order, to preserve the
semantics of the dependency graph.
2) Give the *users* tarballs to download, generated via 'make dist'
which enforces the date stamps as well.
3) Remove all the autotool generated files from CVS, tell developers or
hacking-users to bootstrap their CVS based copy, and all other users to
get a nightly snapshot (created via make dist). (Best of all options,
IMO).

AM_MAINTAINER_MODE is dangerous because it can easily lead to dependency
problems when a user patches some autotool file, and then doesn't run
the appropriate autotool to update. So, avoid AM_MAINTAINER_MODE
whenever possible.

'Nuff said, getting off the shoebox now.

Rob
-- 
---
GPG key available at: http://users.bigpond.net.au/robertc/keys.txt.
---