On 03/16/2013 10:37 AM, Zack Weinberg wrote: > * lib/autoconf/headers.m4 (AC_CHECK_HEADER): Use _AC_CHECK_HEADER_COMPILE > by default. Continue to use _AC_CHECK_HEADER_PREPROC if fourth arg is '-'. > (_AC_CHECK_HEADER_PREPROC): Issue a deprecation warning. > (_AC_CHECK_HEADER_MONGREL, _AC_CHECK_HEADER_MONGREL_BODY): Remove. > > * tests/local.at (AT_CHECK_M4): Support 'stderr' as fourth argument. > * tests/c.at, tests/semantics.at: Update uses of AC_CHECK_HEADER(S). > * doc/autoconf.texi, NEWS: Document change. > > Signed-off-by: Zack Weinberg <za...@panix.com> > ---
> # The m4_indir allows for fewer expansions of $@. > AC_DEFUN([AC_CHECK_HEADER], > [m4_indir(m4_case([$4], > - [], [[_AC_CHECK_HEADER_MONGREL]], > [-], [[_AC_CHECK_HEADER_PREPROC]], > [[_AC_CHECK_HEADER_COMPILE]]), $@) Micro-optimization: when we had a ternary condition, m4_case was indeed fastest, but now that we have a binary condition, write this: [m4_indir(m4_if([$4], [-], [[_AC_CHECK_HEADER_PREPROC]], [[_AC_CHECK_HEADER_COMIPLE]]), $@) > +++ b/tests/local.at > @@ -113,13 +113,14 @@ m4_define([AT_CHECK_M4], > [AT_CHECK([$1], [$2], [$3], > m4_case([$4], [], [], [ignore], [ignore], [stderr])) > m4_case([$4], [], [], [ignore], [], > -[AT_CHECK([[sed 's/^[^:]*m4[-.ex0-9]*: *\([^:]*:\) *\([0-9][0-9]*: > \)/m4:\1\2/ > +[AT_CHECK([[mv stderr stderr-raw && > + sed 's/^[^:]*m4[-.ex0-9]*: *\([^:]*:\) *\([0-9][0-9]*: \)/m4:\1\2/ > s/^\([^:]*:\) *\([0-9][0-9]*:\)[^:]*m4[-.ex0-9]*: /m4:\1\2 / > s/: C\(annot open \)\([^`:]*\):/: c\1`\2'\'':/ > s/: include:\( cannot open\)/:\1/ > s/^autom4te: [^ ]*m4[.ex]* /autom4te: m4 / > s/ (E[A-Z]*)$// > - ' stderr >&2]], [0], [], [$4])]) > + ' stderr-raw >&2]], [0], [], [$4])]) This might be worth splitting into a separate patch, as it's a useful cleanup whether or not you change AC_CHECK_HEADER. Looks good with those changes. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature