2005-05-24 Stepan Kasal * lib/autoconf/general.m4 (AC_FOREACH): Make obsolete; it's replaced ... * lib/m4sugar/m4sugar.m4 (m4_foreach_w): ... by this new macro. Index: lib/autoconf/functions.m4 =================================================================== RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/functions.m4,v retrieving revision 1.93 diff -u -r1.93 functions.m4 --- lib/autoconf/functions.m4 14 May 2005 18:33:30 -0000 1.93 +++ lib/autoconf/functions.m4 24 May 2005 06:38:55 -0000 @@ -78,7 +78,7 @@ # AC_CHECK_FUNCS(FUNCTION..., [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # --------------------------------------------------------------------- AC_DEFUN([AC_CHECK_FUNCS], -[AC_FOREACH([AC_Func], [$1], +[m4_foreach_w([AC_Func], [$1], [AH_TEMPLATE(AS_TR_CPP(HAVE_[]AC_Func), [Define to 1 if you have the `]AC_Func[' function.])])dnl for ac_func in $1 @@ -93,7 +93,7 @@ # AC_REPLACE_FUNCS(FUNCTION...) # ----------------------------- AC_DEFUN([AC_REPLACE_FUNCS], -[AC_FOREACH([AC_Func], [$1], [AC_LIBSOURCE(AC_Func.c)])dnl +[m4_foreach_w([AC_Func], [$1], [AC_LIBSOURCE(AC_Func.c)])dnl AC_CHECK_FUNCS([$1], , [_AC_LIBOBJ($ac_func)]) ]) Index: lib/autoconf/general.m4 =================================================================== RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/general.m4,v retrieving revision 1.858 diff -u -r1.858 general.m4 --- lib/autoconf/general.m4 24 May 2005 06:12:10 -0000 1.858 +++ lib/autoconf/general.m4 24 May 2005 06:38:55 -0000 @@ -190,22 +190,9 @@ ## ----------------------------- ## -# AC_FOREACH(VARIABLE, LIST, EXPRESSION) -# -------------------------------------- -# -# Compute EXPRESSION assigning to VARIABLE each value of the LIST. -# LIST is a /bin/sh list, i.e., it has the form ` item_1 item_2 -# ... item_n ': white spaces are separators, and leading and trailing -# spaces are meaningless. -# -# This macro is robust to active symbols: -# AC_FOREACH([Var], [ active -# b act\ -# ive ], [-Var-])end -# => -active--b--active-end -m4_define([AC_FOREACH], -[m4_foreach([$1], m4_split(m4_normalize([$2])), [$3])]) - +# AU::AC_FOREACH(VARIABLE, LIST, EXPRESSION) +# ------------------------------------------ +AU_ALIAS([AC_FOREACH], [m4_foreach_w]) @@ -2425,7 +2412,7 @@ # AC_CHECK_FILES(FILE..., [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # ----------------------------------------------------------------- AC_DEFUN([AC_CHECK_FILES], -[AC_FOREACH([AC_FILE_NAME], [$1], +[m4_foreach_w([AC_FILE_NAME], [$1], [AC_CHECK_FILE(AC_FILE_NAME, [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_[]AC_FILE_NAME), 1, [Define to 1 if you have the Index: lib/autoconf/headers.m4 =================================================================== RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/headers.m4,v retrieving revision 1.43 diff -u -r1.43 headers.m4 --- lib/autoconf/headers.m4 14 May 2005 07:00:40 -0000 1.43 +++ lib/autoconf/headers.m4 24 May 2005 06:38:55 -0000 @@ -185,7 +185,7 @@ # AH_CHECK_HEADERS(HEADER-FILE...) # -------------------------------- m4_define([AH_CHECK_HEADERS], -[AC_FOREACH([AC_Header], [$1], +[m4_foreach_w([AC_Header], [$1], [AH_TEMPLATE(AS_TR_CPP(HAVE_[]AC_Header), [Define to 1 if you have the <]AC_Header[> header file.])])]) @@ -380,7 +380,7 @@ # AH_CHECK_HEADERS_DIRENT(HEADERS...) # ----------------------------------- m4_define([AH_CHECK_HEADERS_DIRENT], -[AC_FOREACH([AC_Header], [$1], +[m4_foreach_w([AC_Header], [$1], [AH_TEMPLATE(AS_TR_CPP(HAVE_[]AC_Header), [Define to 1 if you have the <]AC_Header[> header file, and it defines `DIR'.])])]) Index: lib/autoconf/status.m4 =================================================================== RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/status.m4,v retrieving revision 1.57 diff -u -r1.57 status.m4 --- lib/autoconf/status.m4 20 May 2005 08:13:16 -0000 1.57 +++ lib/autoconf/status.m4 24 May 2005 06:38:55 -0000 @@ -215,7 +215,7 @@ # ------------------------------------------------------- # Declare the DESTs depend upon their SOURCE1 etc. m4_define([_AC_CONFIG_DEPENDENCIES], -[AC_FOREACH([AC_File], [$1], +[m4_foreach_w([AC_File], [$1], [_AC_CONFIG_DEPENDENCY(m4_bpatsubst(AC_File, [:], [,]))])dnl ]) @@ -230,7 +230,7 @@ # Note that this macro does not check if the list $[1] itself # contains doubles. m4_define([_AC_CONFIG_UNIQUE], -[AC_FOREACH([AC_File], [$1], +[m4_foreach_w([AC_File], [$1], [m4_pushdef([AC_Dest], m4_bpatsubst(AC_File, [:.*]))dnl AC_CONFIG_IF_MEMBER(AC_Dest, [AC_LIST_HEADERS], [AC_FATAL(`AC_Dest' [is already registered with AC_CONFIG_HEADERS.])])dnl @@ -326,7 +326,7 @@ # commands must be associated with a NAME, which should be thought # as the name of a file the COMMANDS create. AC_DEFUN([AC_CONFIG_COMMANDS], -[AC_FOREACH([AC_Name], [$1], [_AC_CONFIG_COMMAND(m4_defn([AC_Name]), [$2])])dnl +[m4_foreach_w([AC_Name], [$1], [_AC_CONFIG_COMMAND(m4_defn([AC_Name]), [$2])])dnl _AC_CONFIG_COMMANDS_INIT([$3])dnl ac_config_commands="$ac_config_commands $1" ]) @@ -456,7 +456,7 @@ # AC_LIST_HEADERS_COMMANDS # esac AC_DEFUN([AC_CONFIG_HEADERS], -[AC_FOREACH([AC_File], [$1], [_AC_CONFIG_HEADER(m4_defn([AC_File]), [$2])])dnl +[m4_foreach_w([AC_File], [$1], [_AC_CONFIG_HEADER(m4_defn([AC_File]), [$2])])dnl _AC_CONFIG_COMMANDS_INIT([$3])dnl ac_config_headers="$ac_config_headers m4_normalize([$1])" ]) @@ -739,7 +739,7 @@ # Reject DEST=., because it is makes it hard for ./config.status # to guess the links to establish (`./config.status .'). AC_DEFUN([AC_CONFIG_LINKS], -[AC_FOREACH([AC_File], [$1], [_AC_CONFIG_LINK(m4_defn([AC_File]), [$2])])dnl +[m4_foreach_w([AC_File], [$1], [_AC_CONFIG_LINK(m4_defn([AC_File]), [$2])])dnl _AC_CONFIG_COMMANDS_INIT([$3])dnl ac_config_links="$ac_config_links m4_normalize([$1])" ]) @@ -870,7 +870,7 @@ # AC_LIST_FILES_COMMANDS # esac AC_DEFUN([AC_CONFIG_FILES], -[AC_FOREACH([AC_File], [$1], [_AC_CONFIG_FILE(m4_defn([AC_File]), [$2])])dnl +[m4_foreach_w([AC_File], [$1], [_AC_CONFIG_FILE(m4_defn([AC_File]), [$2])])dnl _AC_CONFIG_COMMANDS_INIT([$3])dnl ac_config_files="$ac_config_files m4_normalize([$1])" ]) @@ -908,11 +908,11 @@ dnl but quoted when config.status runs, so variables are expanded once. dnl Insert the sed substitutions of variables. m4_ifdef([_AC_SUBST_VARS], - [AC_FOREACH([AC_Var], m4_defn([_AC_SUBST_VARS]), + [m4_foreach_w([AC_Var], m4_defn([_AC_SUBST_VARS]), [s,@AC_Var@,$AC_Var,;t t ])])dnl m4_ifdef([_AC_SUBST_FILES], - [AC_FOREACH([AC_Var], m4_defn([_AC_SUBST_FILES]), + [m4_foreach_w([AC_Var], m4_defn([_AC_SUBST_FILES]), [/@AC_Var@/r $AC_Var s,@AC_Var@,,;t t ])])dnl @@ -1526,19 +1526,19 @@ do case "$ac_config_target" in # Handling of arguments. -AC_FOREACH([AC_File], AC_LIST_FILES, +m4_foreach_w([AC_File], AC_LIST_FILES, [ "m4_bpatsubst(AC_File, [:.*])" )dnl CONFIG_FILES="$CONFIG_FILES AC_File" ;; ])dnl -AC_FOREACH([AC_File], AC_LIST_LINKS, +m4_foreach_w([AC_File], AC_LIST_LINKS, [ "m4_bpatsubst(AC_File, [:.*])" )dnl CONFIG_LINKS="$CONFIG_LINKS AC_File" ;; ])dnl -AC_FOREACH([AC_File], AC_LIST_COMMANDS, +m4_foreach_w([AC_File], AC_LIST_COMMANDS, [ "m4_bpatsubst(AC_File, [:.*])" )dnl CONFIG_COMMANDS="$CONFIG_COMMANDS AC_File" ;; ])dnl -AC_FOREACH([AC_File], AC_LIST_HEADERS, +m4_foreach_w([AC_File], AC_LIST_HEADERS, [ "m4_bpatsubst(AC_File, [:.*])" )dnl CONFIG_HEADERS="$CONFIG_HEADERS AC_File" ;; ])dnl Index: lib/m4sugar/m4sugar.m4 =================================================================== RCS file: /cvsroot/autoconf/autoconf/lib/m4sugar/m4sugar.m4,v retrieving revision 2.88 diff -u -r2.88 m4sugar.m4 --- lib/m4sugar/m4sugar.m4 17 May 2005 09:49:37 -0000 2.88 +++ lib/m4sugar/m4sugar.m4 24 May 2005 06:38:55 -0000 @@ -690,6 +690,21 @@ [$3])])]) +# m4_foreach_w(VARIABLE, LIST, EXPRESSION) +# ---------------------------------------- +# +# Like m4_foreach, but the list is whitespace separated. +# +# This macro is robust to active symbols: +# m4_foreach_w([Var], [ active +# b act\ +# ive ], [-Var-])end +# => -active--b--active-end +# +m4_define([m4_foreach_w], +[m4_foreach([$1], m4_split(m4_normalize([$2])), [$3])]) + + ## --------------------------- ## ## 8. More diversion support. ## @@ -1555,7 +1570,7 @@ m4_if(m4_eval(m4_Cursor > m4_len(m4_Prefix)), 1, [m4_define([m4_Cursor], m4_len(m4_Prefix)) m4_Prefix])[]dnl -m4_foreach([m4_Word], m4_split(m4_normalize([$1])), +m4_foreach_w([m4_Word], [$1], [m4_define([m4_Cursor], m4_eval(m4_Cursor + m4_len(m4_defn([m4_Word])) + 1))dnl dnl New line if too long, else insert a space unless it is the first dnl of the words.