|
version 1.1, 2012/05/29 09:29:44
|
version 1.1.1.2, 2021/03/17 13:38:46
|
|
Line 1
|
Line 1
|
| dnl A placeholder for POSIX 2008 <stddef.h>, for platforms that have issues. | dnl A placeholder for <stddef.h>, for platforms that have issues. |
| # stddef_h.m4 serial 4 | # stddef_h.m4 serial 6 |
| dnl Copyright (C) 2009-2011 Free Software Foundation, Inc. | dnl Copyright (C) 2009-2019 Free Software Foundation, Inc. |
| dnl This file is free software; the Free Software Foundation |
dnl This file is free software; the Free Software Foundation |
| dnl gives unlimited permission to copy and/or distribute it, |
dnl gives unlimited permission to copy and/or distribute it, |
| dnl with or without modifications, as long as this notice is preserved. |
dnl with or without modifications, as long as this notice is preserved. |
|
Line 10 AC_DEFUN([gl_STDDEF_H],
|
Line 10 AC_DEFUN([gl_STDDEF_H],
|
| AC_REQUIRE([gl_STDDEF_H_DEFAULTS]) |
AC_REQUIRE([gl_STDDEF_H_DEFAULTS]) |
| AC_REQUIRE([gt_TYPE_WCHAR_T]) |
AC_REQUIRE([gt_TYPE_WCHAR_T]) |
| STDDEF_H= |
STDDEF_H= |
| |
|
| |
dnl Test whether the type max_align_t exists and whether its alignment |
| |
dnl "is as great as is supported by the implementation in all contexts". |
| |
AC_CACHE_CHECK([for good max_align_t], |
| |
[gl_cv_type_max_align_t], |
| |
[AC_COMPILE_IFELSE( |
| |
[AC_LANG_PROGRAM( |
| |
[[#include <stddef.h> |
| |
unsigned int s = sizeof (max_align_t); |
| |
#if defined __GNUC__ || defined __IBM__ALIGNOF__ |
| |
int check1[2 * (__alignof__ (double) <= __alignof__ (max_align_t)) - 1]; |
| |
int check2[2 * (__alignof__ (long double) <= __alignof__ (max_align_t)) - 1]; |
| |
#endif |
| |
]])], |
| |
[gl_cv_type_max_align_t=yes], |
| |
[gl_cv_type_max_align_t=no]) |
| |
]) |
| |
if test $gl_cv_type_max_align_t = no; then |
| |
HAVE_MAX_ALIGN_T=0 |
| |
STDDEF_H=stddef.h |
| |
fi |
| |
|
| if test $gt_cv_c_wchar_t = no; then |
if test $gt_cv_c_wchar_t = no; then |
| HAVE_WCHAR_T=0 |
HAVE_WCHAR_T=0 |
| STDDEF_H=stddef.h |
STDDEF_H=stddef.h |
| fi |
fi |
| |
|
| AC_CACHE_CHECK([whether NULL can be used in arbitrary expressions], |
AC_CACHE_CHECK([whether NULL can be used in arbitrary expressions], |
| [gl_cv_decl_null_works], |
[gl_cv_decl_null_works], |
| [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stddef.h> |
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stddef.h> |
|
Line 25 AC_DEFUN([gl_STDDEF_H],
|
Line 48 AC_DEFUN([gl_STDDEF_H],
|
| REPLACE_NULL=1 |
REPLACE_NULL=1 |
| STDDEF_H=stddef.h |
STDDEF_H=stddef.h |
| fi |
fi |
| |
|
| AC_SUBST([STDDEF_H]) |
AC_SUBST([STDDEF_H]) |
| AM_CONDITIONAL([GL_GENERATE_STDDEF_H], [test -n "$STDDEF_H"]) |
AM_CONDITIONAL([GL_GENERATE_STDDEF_H], [test -n "$STDDEF_H"]) |
| if test -n "$STDDEF_H"; then |
if test -n "$STDDEF_H"; then |
|
Line 43 AC_DEFUN([gl_STDDEF_H_DEFAULTS],
|
Line 67 AC_DEFUN([gl_STDDEF_H_DEFAULTS],
|
| [ |
[ |
| dnl Assume proper GNU behavior unless another module says otherwise. |
dnl Assume proper GNU behavior unless another module says otherwise. |
| REPLACE_NULL=0; AC_SUBST([REPLACE_NULL]) |
REPLACE_NULL=0; AC_SUBST([REPLACE_NULL]) |
| |
HAVE_MAX_ALIGN_T=1; AC_SUBST([HAVE_MAX_ALIGN_T]) |
| HAVE_WCHAR_T=1; AC_SUBST([HAVE_WCHAR_T]) |
HAVE_WCHAR_T=1; AC_SUBST([HAVE_WCHAR_T]) |
| ]) |
]) |