Hi Eric,
* Eric Blake wrote on Mon, Mar 24, 2008 at 01:47:21AM CET:
>
> So, for example, you could submit a patch to gcc to add this to
> configure.ac (or one of the files it includes), prior to calling AC_INIT:
>
> # As long as we aren't ready to upgrade to autoconf 2.60,
> # make sure that newer M4 will still use LIFO order:
> m4_define([arg1], [$1])dnl
> m4_define([m4_wrap],
> [m4_if([_$0_text],
> ~ [m4_define([_$0_text], [$1]m4_defn([_$0_text]))],
> ~ [m4_builtin([m4wrap],
> ~ [arg1(m4_defn([_$0_text])m4_undefine([_$0_text]))])dnl
> m4_define([_$0_text], [$1])])])dnl
This isn't sufficient (and also, arg1 is not namespace-clean):
cat >configure.ac <<'END'
# As long as we aren't ready to upgrade to autoconf 2.60,
# make sure that newer M4 will still use LIFO order:
m4_define([m4_arg1], [$1])dnl
m4_define([m4_wrap],
[m4_if([_$0_text],
[m4_define([_$0_text], [$1]m4_defn([_$0_text]))],
[m4_builtin([m4wrap],
[m4_arg1(m4_defn([_$0_text])m4_undefine([_$0_text]))])dnl
m4_define([_$0_text], [$1])])])dnl
AC_INIT
AC_OUTPUT
END
autoconf # using m4-1.4.10b from git
mv configure configure1
M4=/usr/bin/m4 # m4-1.4.10
export M4
sed '1,/^$/d' < configure.ac > t
mv -f t configure.ac
autoconf --force
diff configure configure1
| 274,275d273
| < ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix
program_transform_name bindir sbindir libexecdir datadir sysconfdir
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS LIBOBJS
LTLIBOBJS'
| < ac_subst_files=''
_______________________________________________
Bug-m4 mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-m4