summaryrefslogtreecommitdiff
path: root/m4/stddef_h.m4
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2012-01-10 19:18:38 +0400
committerIgor Pashev <pashev.igor@gmail.com>2012-01-10 19:18:38 +0400
commit5ff08f42f094dbdcdc00a60808a19477b1e02a08 (patch)
treedb4091d7927e8362e290bff942ca2dc440c3df51 /m4/stddef_h.m4
parent57ca2d0d3bcd61d22e6778a5d2a3f7450b66d9e3 (diff)
downloadapt-5ff08f42f094dbdcdc00a60808a19477b1e02a08.tar.gz
Ported to Illumos/Solaris with autotools and Gnulib
Diffstat (limited to 'm4/stddef_h.m4')
-rw-r--r--m4/stddef_h.m447
1 files changed, 47 insertions, 0 deletions
diff --git a/m4/stddef_h.m4 b/m4/stddef_h.m4
new file mode 100644
index 00000000..1ae23443
--- /dev/null
+++ b/m4/stddef_h.m4
@@ -0,0 +1,47 @@
+dnl A placeholder for POSIX 2008 <stddef.h>, for platforms that have issues.
+# stddef_h.m4 serial 4
+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,
+dnl with or without modifications, as long as this notice is preserved.
+
+AC_DEFUN([gl_STDDEF_H],
+[
+ AC_REQUIRE([gl_STDDEF_H_DEFAULTS])
+ AC_REQUIRE([gt_TYPE_WCHAR_T])
+ STDDEF_H=
+ if test $gt_cv_c_wchar_t = no; then
+ HAVE_WCHAR_T=0
+ STDDEF_H=stddef.h
+ fi
+ AC_CACHE_CHECK([whether NULL can be used in arbitrary expressions],
+ [gl_cv_decl_null_works],
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stddef.h>
+ int test[2 * (sizeof NULL == sizeof (void *)) -1];
+]])],
+ [gl_cv_decl_null_works=yes],
+ [gl_cv_decl_null_works=no])])
+ if test $gl_cv_decl_null_works = no; then
+ REPLACE_NULL=1
+ STDDEF_H=stddef.h
+ fi
+ AC_SUBST([STDDEF_H])
+ AM_CONDITIONAL([GL_GENERATE_STDDEF_H], [test -n "$STDDEF_H"])
+ if test -n "$STDDEF_H"; then
+ gl_NEXT_HEADERS([stddef.h])
+ fi
+])
+
+AC_DEFUN([gl_STDDEF_MODULE_INDICATOR],
+[
+ dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+ AC_REQUIRE([gl_STDDEF_H_DEFAULTS])
+ gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+])
+
+AC_DEFUN([gl_STDDEF_H_DEFAULTS],
+[
+ dnl Assume proper GNU behavior unless another module says otherwise.
+ REPLACE_NULL=0; AC_SUBST([REPLACE_NULL])
+ HAVE_WCHAR_T=1; AC_SUBST([HAVE_WCHAR_T])
+])