Make Eshell's "which" command extensible
[emacs.git] / m4 / mbstate_t.m4
blob66d65cd7c110fa4ddb9ec9f84a2715c35ff98c74
1 # mbstate_t.m4
2 # serial 14
3 dnl Copyright (C) 2000-2002, 2008-2024 Free Software Foundation, Inc.
4 dnl This file is free software; the Free Software Foundation
5 dnl gives unlimited permission to copy and/or distribute it,
6 dnl with or without modifications, as long as this notice is preserved.
8 # From Paul Eggert.
10 # BeOS 5 has <wchar.h> but does not define mbstate_t,
11 # so you can't declare an object of that type.
12 # Check for this incompatibility with Standard C.
14 # AC_TYPE_MBSTATE_T
15 # -----------------
16 AC_DEFUN([AC_TYPE_MBSTATE_T],
18    AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) dnl for HP-UX 11.11
20    AC_CACHE_CHECK([for mbstate_t], [ac_cv_type_mbstate_t],
21      [AC_COMPILE_IFELSE(
22         [AC_LANG_PROGRAM(
23            [AC_INCLUDES_DEFAULT[
24              #include <wchar.h>]],
25            [[mbstate_t x; return sizeof x;]])],
26         [ac_cv_type_mbstate_t=yes],
27         [ac_cv_type_mbstate_t=no])])
28    if test $ac_cv_type_mbstate_t = yes; then
29      AC_DEFINE([HAVE_MBSTATE_T], [1],
30                [Define to 1 if <wchar.h> declares mbstate_t.])
31    else
32      AC_DEFINE([mbstate_t], [int],
33                [Define to a type if <wchar.h> does not define.])
34    fi