Hello,
there were no more comments, so I committed these patches:
autoconf-20050629-canon.patch
autoconf-20050629-ccc.patch
autoconf-20050629-precious.patch
autoconf-20050630-subst-files.patch
For your convenience, I attached them to this mail again.
Stepan
2005-06-29 Stepan Kasal <[EMAIL PROTECTED]>
* lib/autoconf/general.m4 (AC_CANONICAL_BUILD): Rename
ac_cv_build_alias to ac_build_alias.
(AC_CANONICAL_HOST, AC_CANONICAL_TARGET): Simplify.
Index: lib/autoconf/general.m4
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/general.m4,v
retrieving revision 1.869
diff -u -r1.869 general.m4
--- lib/autoconf/general.m4 29 Jun 2005 06:37:48 -0000 1.869
+++ lib/autoconf/general.m4 29 Jun 2005 06:39:38 -0000
@@ -1663,7 +1663,6 @@
# Generate the variables THING, THING_{alias cpu vendor os}.
m4_define([_AC_CANONICAL_SPLIT],
[AC_SUBST([$1], [$ac_cv_$1])dnl
-dnl FIXME: AC_SUBST([$1_alias], [$ac_cv_$1_alias])dnl
ac_save_IFS=$IFS; IFS='-'
set x $ac_cv_$1
shift
@@ -1698,13 +1697,13 @@
AC_MSG_ERROR([cannot run $ac_config_sub])
AC_CACHE_CHECK([build system type], [ac_cv_build],
-[ac_cv_build_alias=$build_alias
-test -z "$ac_cv_build_alias" &&
- ac_cv_build_alias=`$ac_config_guess`
-test -z "$ac_cv_build_alias" &&
+[ac_build_alias=$build_alias
+test "x$ac_build_alias" = x &&
+ ac_build_alias=`$ac_config_guess`
+test "x$ac_build_alias" = x &&
AC_MSG_ERROR([cannot guess build type; you must specify one])
-ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
- AC_MSG_ERROR([$ac_config_sub $ac_cv_build_alias failed])
+ac_cv_build=`$ac_config_sub $ac_build_alias` ||
+ AC_MSG_ERROR([$ac_config_sub $ac_build_alias failed])
])
_AC_CANONICAL_SPLIT(build)
])# AC_CANONICAL_BUILD
@@ -1717,11 +1716,12 @@
m4_divert_text([HELP_CANON],
[[ --host=HOST cross-compile to build programs to run on HOST
[BUILD]]])dnl
AC_CACHE_CHECK([host system type], [ac_cv_host],
-[ac_cv_host_alias=$host_alias
-test -z "$ac_cv_host_alias" &&
- ac_cv_host_alias=$ac_cv_build_alias
-ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
- AC_MSG_ERROR([$ac_config_sub $ac_cv_host_alias failed])
+[if test "x$host_alias" = x; then
+ ac_cv_host=$ac_cv_build
+else
+ ac_cv_host=`$ac_config_sub $host_alias` ||
+ AC_MSG_ERROR([$ac_config_sub $host_alias failed])
+fi
])
_AC_CANONICAL_SPLIT([host])
])# AC_CANONICAL_HOST
@@ -1735,12 +1735,12 @@
m4_divert_text([HELP_CANON],
[[ --target=TARGET configure for building compilers for TARGET [HOST]]])dnl
AC_CACHE_CHECK([target system type], [ac_cv_target],
-[dnl Set target_alias.
-ac_cv_target_alias=$target_alias
-test "x$ac_cv_target_alias" = "x" &&
- ac_cv_target_alias=$ac_cv_host_alias
-ac_cv_target=`$ac_config_sub $ac_cv_target_alias` ||
- AC_MSG_ERROR([$ac_config_sub $ac_cv_target_alias failed])
+[if test "x$target_alias" = x; then
+ ac_cv_target=$ac_cv_host
+else
+ ac_cv_target=`$ac_config_sub $target_alias` ||
+ AC_MSG_ERROR([$ac_config_sub $target_alias failed])
+fi
])
_AC_CANONICAL_SPLIT([target])
2005-06-29 Stepan Kasal <[EMAIL PROTECTED]>
On 2005-02-24, an unintentional AC_SUBST([CC]) was introduced; this
change eliminates it. Problem reported by Alexandre Duret-Lutz.
* lib/autoconf/general.m4 (_AC_ARG_VAR_PRECIOUS): Move the AC_SUBST ...
(AC_ARG_VAR): ... here.
(_AC_INIT_PREPARE): Call AC_SUBST for build_alias, host_alias and
target_alias.
Index: lib/autoconf/general.m4
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/general.m4,v
retrieving revision 1.869
diff -u -r1.869 general.m4
--- lib/autoconf/general.m4 29 Jun 2005 06:37:48 -0000 1.869
+++ lib/autoconf/general.m4 29 Jun 2005 06:39:05 -0000
@@ -1294,9 +1294,9 @@
AC_SITE_LOAD
AC_CACHE_LOAD
_AC_ARG_VAR_VALIDATE
-_AC_ARG_VAR_PRECIOUS([build_alias])dnl
-_AC_ARG_VAR_PRECIOUS([host_alias])dnl
-_AC_ARG_VAR_PRECIOUS([target_alias])dnl
+_AC_ARG_VAR_PRECIOUS([build_alias])AC_SUBST([build_alias])dnl
+_AC_ARG_VAR_PRECIOUS([host_alias])AC_SUBST([host_alias])dnl
+_AC_ARG_VAR_PRECIOUS([target_alias])AC_SUBST([target_alias])dnl
AC_LANG_PUSH(C)
dnl Substitute for predefined variables.
@@ -1426,6 +1426,7 @@
m4_expand_once([m4_divert_once([HELP_VAR],
[AS_HELP_STRING([$1], [$2], [ ])])],
[$0($1)])dnl
+AC_SUBST([$1])dnl
_AC_ARG_VAR_PRECIOUS([$1])dnl
])# AC_ARG_VAR
@@ -1445,8 +1446,7 @@
# In subsequent runs, after having loaded the cache, compare
# ac_cv_env_foo against ac_env_foo. See _AC_ARG_VAR_VALIDATE.
m4_define([_AC_ARG_VAR_PRECIOUS],
-[AC_SUBST([$1])dnl
-m4_divert_once([PARSE_ARGS],
+[m4_divert_once([PARSE_ARGS],
[ac_env_$1_set=${$1+set}
ac_env_$1_value=$$1
ac_cv_env_$1_set=${$1+set}
2005-06-29 Stepan Kasal <[EMAIL PROTECTED]>
Keep a list of all precious variables and process them with one simple
for loop, instead of expanding all commands, or, OTOH, complicated
processing of output of "set".
* lib/autoconf/general.m4 (_AC_ARG_VAR_PRECIOUS): Acumulate the
variable names in new macro...
(_AC_PRECIOUS_VARS): ... which will be assigned to ac_precious_vars.
(_AC_ARG_VAR_STORE): New macro which writes to diversion PARSE_ARGS
a loop to assign all ac_env_* and ac_cv_env_* variables.
(_AC_ARG_VAR_VALIDATE): Use shell variable ac_precious_vars, divert
to INIT_PREPARE.
(_AC_INIT_DEFAULTS): At the end, if _AC_PRECIOUS_VARS is set, assign
its value to shell variable ac_precious_vars and call
_AC_ARG_VAR_STORE and _AC_ARG_VAR_VALIDATE.
* lib/autoconf/general.m4 (_AC_INIT_PREPARE): Don't call
_AC_ARG_VAR_VALIDATE.
* lib/autoconf/general.m4 (_AC_INIT_PREPARE): Move AC_LANG_PUSH(C)
and the AC_SUBSTs ...
(AC_INIT): ... here.
diff -ur autoconf-clean/lib/autoconf/general.m4 autoconf/lib/autoconf/general.m4
--- lib/autoconf/general.m4 2005-06-29 10:42:12.000000000 +0200
+++ lib/autoconf/general.m4 2005-06-29 11:01:31.000000000 +0200
@@ -416,7 +416,12 @@
m4_divert_pop([DEFAULTS])dnl
m4_wrap([m4_divert_text([DEFAULTS],
[ac_subst_vars='m4_ifdef([_AC_SUBST_VARS], [m4_defn([_AC_SUBST_VARS])])'
-ac_subst_files='m4_ifdef([_AC_SUBST_FILES],
[m4_defn([_AC_SUBST_FILES])])'])])dnl
+ac_subst_files='m4_ifdef([_AC_SUBST_FILES], [m4_defn([_AC_SUBST_FILES])])'
+m4_ifdef([_AC_PRECIOUS_VARS],
+ [_AC_ARG_VAR_STORE[]dnl
+ _AC_ARG_VAR_VALIDATE[]dnl
+ ac_precious_vars='m4_defn([_AC_PRECIOUS_VARS])'])dnl
+])])dnl
])# _AC_INIT_DEFAULTS
@@ -1150,8 +1155,8 @@
# 1. Trap and clean up various tmp files.
# 2. Set up the fd and output files
# 3. Remember the options given to `configure' for `config.status --recheck'.
-# 4. Ensure a correct environment
-# 5. Required macros (cache, default AC_SUBST etc.)
+# 4. Initiates confdefs.h
+# 5. Loads site and cache files
m4_define([_AC_INIT_PREPARE],
[m4_divert_push([INIT_PREPARE])dnl
@@ -1293,18 +1298,6 @@
# Let the site file select an alternate cache file if it wants to.
AC_SITE_LOAD
AC_CACHE_LOAD
-_AC_ARG_VAR_VALIDATE
-_AC_ARG_VAR_PRECIOUS([build_alias])AC_SUBST([build_alias])dnl
-_AC_ARG_VAR_PRECIOUS([host_alias])AC_SUBST([host_alias])dnl
-_AC_ARG_VAR_PRECIOUS([target_alias])AC_SUBST([target_alias])dnl
-AC_LANG_PUSH(C)
-
-dnl Substitute for predefined variables.
-AC_SUBST([DEFS])dnl
-AC_SUBST([ECHO_C])dnl
-AC_SUBST([ECHO_N])dnl
-AC_SUBST([ECHO_T])dnl
-AC_SUBST([LIBS])dnl
m4_divert_pop([INIT_PREPARE])dnl
])# _AC_INIT_PREPARE
@@ -1348,6 +1341,18 @@
_AC_INIT_NOTICE
_AC_INIT_COPYRIGHT
m4_ifval([$2], , [m4_ifval([$1], [AC_CONFIG_SRCDIR([$1])])])dnl
+dnl
+dnl Substitute for predefined variables.
+AC_SUBST([DEFS])dnl
+AC_SUBST([ECHO_C])dnl
+AC_SUBST([ECHO_N])dnl
+AC_SUBST([ECHO_T])dnl
+AC_SUBST([LIBS])dnl
+_AC_ARG_VAR_PRECIOUS([build_alias])AC_SUBST([build_alias])dnl
+_AC_ARG_VAR_PRECIOUS([host_alias])AC_SUBST([host_alias])dnl
+_AC_ARG_VAR_PRECIOUS([target_alias])AC_SUBST([target_alias])dnl
+dnl
+AC_LANG_PUSH(C)
])
@@ -1434,7 +1439,14 @@
# _AC_ARG_VAR_PRECIOUS(VARNAME)
# -----------------------------
# Declare VARNAME is precious.
-#
+m4_define([_AC_ARG_VAR_PRECIOUS],
+[m4_append_uniq([_AC_PRECIOUS_VARS], [$1], [
+])dnl
+])
+
+
+# _AC_ARG_VAR_STORE
+# -----------------
# We try to diagnose when precious variables have changed. To do this,
# make two early snapshots (after the option processing to take
# explicit variables into account) of those variables: one (ac_env_)
@@ -1445,12 +1457,14 @@
#
# In subsequent runs, after having loaded the cache, compare
# ac_cv_env_foo against ac_env_foo. See _AC_ARG_VAR_VALIDATE.
-m4_define([_AC_ARG_VAR_PRECIOUS],
-[m4_divert_once([PARSE_ARGS],
-[ac_env_$1_set=${$1+set}
-ac_env_$1_value=$$1
-ac_cv_env_$1_set=${$1+set}
-ac_cv_env_$1_value=$$1])dnl
+m4_define([_AC_ARG_VAR_STORE],
+[m4_divert_text([PARSE_ARGS],
+[for ac_var in $ac_precious_vars; do
+ eval ac_env_${ac_var}_set=\${${ac_var}+set}
+ eval ac_env_${ac_var}_value=\$${ac_var}
+ eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
+ eval ac_cv_env_${ac_var}_value=\$${ac_var}
+done])dnl
])
@@ -1468,11 +1482,11 @@
# So we check that `ac_env_' and `ac_cv_env_' are consistent. If
# they aren't, die.
m4_define([_AC_ARG_VAR_VALIDATE],
+[m4_divert_text([INIT_PREPARE],
[# Check that the precious variables saved in the cache have kept the same
# value.
ac_cache_corrupted=false
-for ac_var in `(set) 2>&1 |
- sed -n 's/^ac_env_\([[a-zA-Z_0-9]]*\)_set=.*/\1/p'`; do
+for ac_var in $ac_precious_vars; do
eval ac_old_set=\$ac_cv_env_${ac_var}_set
eval ac_new_set=\$ac_env_${ac_var}_set
eval ac_old_val=\$ac_cv_env_${ac_var}_value
@@ -1511,7 +1525,7 @@
if $ac_cache_corrupted; then
AS_MESSAGE([error: changes in the environment can compromise the build], 2)
AS_ERROR([run `make distclean' and/or `rm $cache_file' and start over])
-fi
+fi])dnl
])# _AC_ARG_VAR_VALIDATE
2005-06-30 Stepan Kasal <[EMAIL PROTECTED]>
* lib/autoconf/general.m4 (_AC_INIT_PREPARE): Changed the title of
the ac_subst_files section in config.log.
Index: lib/autoconf/general.m4
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/general.m4,v
retrieving revision 1.870
diff -u -r1.870 general.m4
--- lib/autoconf/general.m4 29 Jun 2005 09:33:21 -0000 1.870
+++ lib/autoconf/general.m4 30 Jun 2005 13:06:17 -0000
@@ -1242,7 +1242,7 @@
echo
if test -n "$ac_subst_files"; then
- AS_BOX([Output files.])
+ AS_BOX([File substitutions.])
echo
for ac_var in $ac_subst_files
do