GNU bug report logs - #7893
HP-UX make causes autoconf timestamp issues

Previous Next

Package: automake;

Reported by: Ralf Wildenhues <Ralf.Wildenhues <at> gmx.de>

Date: Sun, 23 Jan 2011 10:49:01 UTC

Severity: minor

Tags: wontfix

Done: Stefano Lattarini <stefano.lattarini <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 7893 in the body.
You can then email your comments to 7893 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to owner <at> debbugs.gnu.org, bug-automake <at> gnu.org:
bug#7893; Package automake. (Sun, 23 Jan 2011 10:49:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Ralf Wildenhues <Ralf.Wildenhues <at> gmx.de>:
New bug report received and forwarded. Copy sent to bug-automake <at> gnu.org. (Sun, 23 Jan 2011 10:49:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ralf Wildenhues <Ralf.Wildenhues <at> gmx.de>
To: bug-automake <at> gnu.org, autoconf-patches <at> gnu.org
Subject: HP-UX make causes autoconf timestamp issues
Date: Sun, 23 Jan 2011 11:56:04 +0100
http://autobuild.josefsson.org/automake/log-201101181921247117000.txt
This HP-UX 11.31 system is fast enough to trigger test failures for
at least these Automake tests, besides the ones already fixed:

insthook
libobj16b
output10
posixsubst-data
posixsubst-scripts
subcond2
subpkg2
suffix13

all due to the bug that HP-UX make considers targets out of date when
they have the same time stamp as a prerequisite (cf. pending
autoconf.texi patch).  The symptom is that autoconf is triggered during
`make distcheck' due to aclocal.m4 having same time stamp as configure,
which of course then fails in the read-only distdir tree:

+ make distcheck
[...]
        CDPATH="${ZSH_VERSION+.}:" && cd .. && /bin/sh /tmp/build-ia64-hp-hpux11.31/tests/libobj16b.dir/libobj16b-1.0/missing --run autoconf
autom4te: cannot create autom4te.cache: No such file or directory

Now, with even faster systems, that problem will only get worse over
time, i.e., happen in many more tests, and maybe also in user projects.

Question is what to do about it.  Possibilities include:

- Add $sleep after every $ACLOCAL in problematic cases.  Not
  maintainable.
- sleep in aclocal, or even autom4te.  Ugh!
- Let autom4te not fail if, in a read-only directory, autom4te.cache
  creation fails but configure is actually up to date (seems doable,
  but would probably require a number of changes in Autoconf).
- Work around it by using a global cache (not so good) or turning off
  autom4te.cache creation completely, on HP-UX.  Modify Autoconf to do
  so by default, or at least recommend it?

The latter point deserves some explanation as to why I think it works:

autom4te updates an output file if at least one of its inputs is not
older than an existing output file.  IOW, the semantics actually match
that of HP-UX make.  Not using a cache means configure will be updated
at the first time $MAKE is run, and since files created after configure
are strictly newer than files created before, all will be well; at least
until one more dependency level is added to the bootstrap chain.
(Boy, am I glad gnulib-tool and aclocal are so slow.)

If a global autom4te.cache is used (which IIRC still has some bugs),
then autom4te will detect that configure doesn't change, but of course
time stamps persist in the problematic state, so several harmless but
time-consuming autoconf reruns will be triggered from within '$MAKE
distcheck'.  So this works reliably, but is a bit suboptimal.


My question is, (how) should autotools cater to this HP-UX make wart?
Many users might use GNU make for their projects anyway, for them it
would not be nice to turn off caching outright.

Thus I suggest to document the issue, as below.  I'm turning off
autom4te.cache for my future testing on this system.

Thanks,
Ralf

    Recommend turning off autom4te.cache for HP-UX make.
    
    * BUGS: Document HP-UX make bug causing failed autom4te.cache
    creation during `make distcheck'.

diff --git a/BUGS b/BUGS
index 82c438e..6c95934 100644
--- a/BUGS
+++ b/BUGS
@@ -35,3 +35,8 @@ and use with caution an Autoconf with ``Important bugs''.
   possible that other difficulties will be encountered, whether with
   shell or platform limitations; help is appreciated in improving
   parallel testsuite support.
+
+* The non-Posix time stamp semantics of HP-UX make can cause Automake's
+  `make distcheck' to fail due to failed autom4te.cache directory creation.
+  It is recommended to turn off autom4te caching on these systems if GNU
+  make cannot be used (see info Autoconf 'Customizing autom4te').




Information forwarded to bug-automake <at> gnu.org:
bug#7893; Package automake. (Wed, 28 Dec 2011 13:32:02 GMT) Full text and rfc822 format available.

Message #8 received at 7893 <at> debbugs.gnu.org (full text, mbox):

From: Stefano Lattarini <stefano.lattarini <at> gmail.com>
To: bug-autoconf <at> gnu.org
Cc: 7893 <at> debbugs.gnu.org
Subject: HP-UX make causes autoconf timestamp issues
Date: Wed, 28 Dec 2011 14:28:15 +0100
Ping: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7893>

I intend to close that bug report soon as a "wontfix", since the issue is due to
such a broken, anti-POSIX behaviour of HP-UX make that it is pointless trying to
work around it.  Still, it would be nice if autoconf would explicitly document the
issue, at least in the BUGS file (and IMHO even in the manual).  Hence this ping.

Regards,
  Stefano




Information forwarded to bug-automake <at> gnu.org:
bug#7893; Package automake. (Wed, 28 Dec 2011 20:31:02 GMT) Full text and rfc822 format available.

Message #11 received at 7893 <at> debbugs.gnu.org (full text, mbox):

From: Paul Eggert <eggert <at> cs.ucla.edu>
To: Stefano Lattarini <stefano.lattarini <at> gmail.com>
Cc: bug-autoconf <at> gnu.org, 7893 <at> debbugs.gnu.org
Subject: Re: HP-UX make causes autoconf timestamp issues
Date: Wed, 28 Dec 2011 12:27:52 -0800
That issue is now documented in the INSTALL file, as well
as in the Autoconf manual.  Here's the relevant commit:

http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=2d082fa1ca25a16b60fb874e80f51ee79408e1f4




Information forwarded to bug-automake <at> gnu.org:
bug#7893; Package automake. (Wed, 28 Dec 2011 20:41:02 GMT) Full text and rfc822 format available.

Message #14 received at 7893 <at> debbugs.gnu.org (full text, mbox):

From: Stefano Lattarini <stefano.lattarini <at> gmail.com>
To: Paul Eggert <eggert <at> cs.ucla.edu>
Cc: bug-autoconf <at> gnu.org, 7893 <at> debbugs.gnu.org
Subject: Re: bug#7893: HP-UX make causes autoconf timestamp issues
Date: Wed, 28 Dec 2011 21:37:06 +0100
tags 7893 wontfix
severity 7893 minor
close 7893
thanks

On 12/28/2011 09:27 PM, Paul Eggert wrote:
> That issue is now documented in the INSTALL file, as well
> as in the Autoconf manual.  Here's the relevant commit:
> 
> http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=2d082fa1ca25a16b60fb874e80f51ee79408e1f4
> 
> 
Oops, sorry I missed that!  My bad.  Closing this bug report now.

Thanks,
  Stefano





Added tag(s) wontfix. Request was from Stefano Lattarini <stefano.lattarini <at> gmail.com> to control <at> debbugs.gnu.org. (Wed, 28 Dec 2011 20:41:02 GMT) Full text and rfc822 format available.

Severity set to 'minor' from 'normal' Request was from Stefano Lattarini <stefano.lattarini <at> gmail.com> to control <at> debbugs.gnu.org. (Wed, 28 Dec 2011 20:41:02 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 7893 <at> debbugs.gnu.org and Ralf Wildenhues <Ralf.Wildenhues <at> gmx.de> Request was from Stefano Lattarini <stefano.lattarini <at> gmail.com> to control <at> debbugs.gnu.org. (Wed, 28 Dec 2011 20:41:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 26 Jan 2012 12:24:02 GMT) Full text and rfc822 format available.

This bug report was last modified 13 years and 150 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.