[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
automake 1.5 bug causing needless rebuild of config.h
From: |
Paul Eggert |
Subject: |
automake 1.5 bug causing needless rebuild of config.h |
Date: |
Mon, 24 Sep 2001 11:45:39 -0700 (PDT) |
automake 1.5 has some code to use stamp file names like 'stamp-h1',
'stamp-h2' etc, but this code isn't working properly. A patch is
enclosed at the end of this message. The patch simply removes the
trailing '1', '2', etc. Quite possibly this fix is just a workaround
for the real problem, but it works for me.
This problem was originally reported by Bruno Haible (thanks!) for GNU
tar 1.13.24 and textutils 2.0.15. I enclose his bug report below.
You can find copies of the buggy package distributions in
<ftp://alpha.gnu.org/gnu/tar/tar-1.13.24.gz> and in
<ftp://alpha.gnu.org/gnu/fetish/textutils-2.0.15.tar.gz>.
> From: Bruno Haible <address@hidden>
> Date: Mon, 24 Sep 2001 19:21:29 +0200 (CEST)
>
> In both textutils-2.0.15 and tar-1.13.24, when I type
>
> ./configure
> make
>
> the "make" starts out re-making config.h which was already created at
> the end of configure.
>
> $ ./configure
> .....
> config.status: creating config.h
> config.status: executing default-1 commands
> config.status: executing default-2 commands
> config.status: creating po/POTFILES
> config.status: creating po/Makefile
> $ make
> cd . \
> && CONFIG_FILES= CONFIG_HEADERS=config.h \
> /bin/sh ./config.status
> config.status: creating config.h
> config.status: config.h is unchanged
> config.status: executing default-1 commands
> config.status: executing default-2 commands
> make all-recursive
> ....
>
> Where does this come from? I don't have this stupid Makefile behaviour
> in projects with automake-1.4-p5.
Here is the patch.
2001-09-24 Paul Eggert <address@hidden>
* m4/header.m4 (_AM_Config_Header_Index): Remove.
(AM_CONFIG_HEADER): Don't use it. It wasn't working, and was
causing needless rebuilds.
===================================================================
RCS file: m4/header.m4,v
retrieving revision 1.5
retrieving revision 1.5.0.1
diff -pu -r1.5 -r1.5.0.1
--- m4/header.m4 2001/07/21 05:27:26 1.5
+++ m4/header.m4 2001/09/24 18:29:30 1.5.0.1
@@ -11,18 +11,16 @@ AC_PREREQ([2.12])
AC_DEFUN([AM_CONFIG_HEADER],
[ifdef([AC_FOREACH],dnl
- [dnl init our file count if it isn't already
- m4_ifndef([_AM_Config_Header_Index],
m4_define([_AM_Config_Header_Index], [0]))
+ [
dnl prepare to store our destination file list for use in config.status
AC_FOREACH([_AM_File], [$1],
[m4_pushdef([_AM_Dest], m4_patsubst(_AM_File, [:.*]))
- m4_define([_AM_Config_Header_Index],
m4_incr(_AM_Config_Header_Index))
dnl and add it to the list of files AC keeps track of, along
dnl with our hook
AC_CONFIG_HEADERS(_AM_File,
dnl COMMANDS, [, INIT-CMDS]
[# update the timestamp
-echo timestamp
>"AS_ESCAPE(_AM_DIRNAME(]_AM_Dest[))/stamp-h]_AM_Config_Header_Index["
+echo timestamp >"AS_ESCAPE(_AM_DIRNAME(]_AM_Dest[))/stamp-h"
][$2]m4_ifval([$3], [, [$3]]))dnl AC_CONFIG_HEADERS
m4_popdef([_AM_Dest])])],dnl
[AC_CONFIG_HEADER([$1])
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- automake 1.5 bug causing needless rebuild of config.h,
Paul Eggert <=