| # stdbool.m4 serial 3 (gettext-0.12) |
| dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. |
| dnl This file is free software, distributed under the terms of the GNU |
| dnl General Public License. As a special exception to the GNU General |
| dnl Public License, this file may be distributed as part of a program |
| dnl that contains a configuration script generated by Autoconf, under |
| dnl the same distribution terms as the rest of that program. |
| |
| dnl From Bruno Haible. |
| dnl Test whether <stdbool.h> is supported or must be substituted. |
| |
| AC_DEFUN([gt_STDBOOL_H], |
| [dnl gcc 2.95.2 has an <stdbool.h> for which both 'true' and 'false' evaluate |
| dnl to 0 in preprocessor expressions. |
| dnl HP-UX 11 cc has an <stdbool.h> but the compiler doesn't understand the |
| dnl type '_Bool' (to which 'bool' expands). |
| AC_MSG_CHECKING([for stdbool.h]) |
| AC_CACHE_VAL(gt_cv_header_stdbool_h, [ |
| AC_TRY_COMPILE([#include <stdbool.h> |
| #if false |
| int A[-1]; |
| #endif |
| #define b -1 |
| #if true |
| #undef b |
| #define b 1 |
| #endif |
| int B[b]; |
| bool c; |
| ], [], gt_cv_header_stdbool_h=yes, gt_cv_header_stdbool_h=no)]) |
| AC_MSG_RESULT([$gt_cv_header_stdbool_h]) |
| if test $gt_cv_header_stdbool_h = yes; then |
| AC_DEFINE(HAVE_STDBOOL_H, 1, |
| [Define if you have a working <stdbool.h> header file.]) |
| STDBOOL_H='' |
| else |
| STDBOOL_H='stdbool.h' |
| AC_MSG_CHECKING([for _Bool type]) |
| AC_CACHE_VAL(gt_cv_type_Bool, [ |
| AC_TRY_COMPILE([_Bool x = sizeof (_Bool);], [], |
| gt_cv_type_Bool=yes, gt_cv_type_Bool=no)]) |
| AC_MSG_RESULT([$gt_cv_type_Bool]) |
| if test $gt_cv_type_Bool = yes; then |
| HAVE__BOOL=1 |
| else |
| HAVE__BOOL=0 |
| fi |
| AC_SUBST(HAVE__BOOL) |
| fi |
| AC_SUBST(STDBOOL_H) |
| ]) |