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]) |
]) |
]) |