Mercurial > hg > octave-kai > gnulib-hg
changeset 14181:bceb1351a723
include_next: do not check for standard headers like stddef.h
I found this problem when modifying Emacs to use gnulib.
I noticed that it added HAVE_STDDEF_H to config.h, even though
gnulib always assumes <stddef.h> exists as per README and this
symbol is unnecessary.
* m4/include_next.m4 (gl_NEXT_HEADERS): New macro, which does not
use AC_CHECK_HEADERS_ONCE, but which otherwise contains what
gl_CHECK_NEXT_HEADERS used to contain. This makes 'configure' run
faster for headers like stddef.h that are known to exist.
(gl_CHECK_NEXT_HEADERS): Use it.
* m4/float_h.m4 (gl_FLOAT_H): For float.h, use gl_NEXT_HEADERS
rather than gl_CHECK_NEXT_HEADERS.
* m4/stdarg.m4 (gl_STDARG_H): Likewise, for stdarg.h.
* m4/stddef_h.m4 (gl_STDDEF_H): Likewise, for stddef.h.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Tue, 18 Jan 2011 22:38:10 -0800 |
parents | 0d67836109b5 |
children | f6ec6d171e52 |
files | ChangeLog m4/float_h.m4 m4/include_next.m4 m4/stdarg.m4 m4/stddef_h.m4 |
diffstat | 5 files changed, 36 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,21 @@ +2011-01-18 Paul Eggert <eggert@cs.ucla.edu> + + include_next: do not check for standard headers like stddef.h + + I found this problem when modifying Emacs to use gnulib. + I noticed that it added HAVE_STDDEF_H to config.h, even though + gnulib always assumes <stddef.h> exists as per README and this + symbol is unnecessary. + * m4/include_next.m4 (gl_NEXT_HEADERS): New macro, which does not + use AC_CHECK_HEADERS_ONCE, but which otherwise contains what + gl_CHECK_NEXT_HEADERS used to contain. This makes 'configure' run + faster for headers like stddef.h that are known to exist. + (gl_CHECK_NEXT_HEADERS): Use it. + * m4/float_h.m4 (gl_FLOAT_H): For float.h, use gl_NEXT_HEADERS + rather than gl_CHECK_NEXT_HEADERS. + * m4/stdarg.m4 (gl_STDARG_H): Likewise, for stdarg.h. + * m4/stddef_h.m4 (gl_STDDEF_H): Likewise, for stddef.h. + 2011-01-18 Eric Blake <eblake@redhat.com> ansi-c++-opt: skip C++ dependency style if C++ is unused
--- a/m4/float_h.m4 +++ b/m4/float_h.m4 @@ -1,4 +1,4 @@ -# float_h.m4 serial 4 +# float_h.m4 serial 5 dnl Copyright (C) 2007, 2009-2011 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -12,7 +12,7 @@ case "$host_os" in beos* | openbsd* | mirbsd*) FLOAT_H=float.h - gl_CHECK_NEXT_HEADERS([float.h]) + gl_NEXT_HEADERS([float.h]) ;; esac AC_SUBST([FLOAT_H])
--- a/m4/include_next.m4 +++ b/m4/include_next.m4 @@ -1,4 +1,4 @@ -# include_next.m4 serial 16 +# include_next.m4 serial 17 dnl Copyright (C) 2006-2011 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -149,9 +149,19 @@ # provides some type/enum definitions or function/variable declarations. AC_DEFUN([gl_CHECK_NEXT_HEADERS], [ + AC_CHECK_HEADERS_ONCE([$1]) + gl_NEXT_HEADERS([$1]) +]) + +# gl_NEXT_HEADERS(HEADER1 HEADER2 ...) +# ------------------------------------ +# Like gl_CHECK_NEXT_HEADERS, except do not check whether the headers exist. +# This is suitable for headers like <stddef.h> that are standardized by C89 +# and therefore can be assumed to exist. +AC_DEFUN([gl_NEXT_HEADERS], +[ AC_REQUIRE([gl_INCLUDE_NEXT]) AC_REQUIRE([AC_CANONICAL_HOST]) - AC_CHECK_HEADERS_ONCE([$1]) m4_foreach_w([gl_HEADER_NAME], [$1], [AS_VAR_PUSHDEF([gl_next_header],
--- a/m4/stdarg.m4 +++ b/m4/stdarg.m4 @@ -1,4 +1,4 @@ -# stdarg.m4 serial 4 +# stdarg.m4 serial 5 dnl Copyright (C) 2006, 2008-2011 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -41,7 +41,7 @@ if test $gl_aixcc = yes; then dnl Provide a substitute <stdarg.h> file. STDARG_H=stdarg.h - gl_CHECK_NEXT_HEADERS([stdarg.h]) + gl_NEXT_HEADERS([stdarg.h]) dnl Fallback for the case when <stdarg.h> contains only macro definitions. if test "$gl_cv_next_stdarg_h" = '""'; then gl_cv_next_stdarg_h='"///usr/include/stdarg.h"'
--- a/m4/stddef_h.m4 +++ b/m4/stddef_h.m4 @@ -1,5 +1,5 @@ dnl A placeholder for POSIX 2008 <stddef.h>, for platforms that have issues. -# stddef_h.m4 serial 2 +# stddef_h.m4 serial 3 dnl Copyright (C) 2009-2011 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -25,7 +25,7 @@ STDDEF_H=stddef.h fi if test -n "$STDDEF_H"; then - gl_CHECK_NEXT_HEADERS([stddef.h]) + gl_NEXT_HEADERS([stddef.h]) fi ])