X-Git-Url: https://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fgetdate.m4;h=67f9c6566da136f77dc1f5592a62271c75ff9114;hb=0a3f7af426469ab51370585e1a3afba66ff24b57;hp=e3c517b39b992c86082859a0b47b1c306559ea60;hpb=53b8fa05726a7fb30010e42ce02e44a35f0d7489;p=gnulib.git diff --git a/m4/getdate.m4 b/m4/getdate.m4 index e3c517b39..67f9c6566 100644 --- a/m4/getdate.m4 +++ b/m4/getdate.m4 @@ -1,23 +1,39 @@ -# getdate.m4 serial 1 -dnl Copyright (C) 2002 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. +# getdate.m4 serial 14 +dnl Copyright (C) 2002-2006, 2008, 2009 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. + +dnl Define HAVE_COMPOUND_LITERALS if the C compiler supports compound literals +dnl as in ISO C99. +dnl Note that compound literals such as (struct s) { 3, 4 } can be used for +dnl initialization of stack-allocated variables, but are not constant +dnl expressions and therefore cannot be used as initializer for global or +dnl static variables (even though gcc supports this in pre-C99 mode). +AC_DEFUN([gl_C_COMPOUND_LITERALS], +[ + AC_CACHE_CHECK([for compound literals], [gl_cv_compound_literals], + [AC_TRY_COMPILE([struct s { int i, j; };], + [struct s t = (struct s) { 3, 4 }; + if (t.i != 0) return 0;], + gl_cv_compound_literals=yes, + gl_cv_compound_literals=no)]) + if test $gl_cv_compound_literals = yes; then + AC_DEFINE([HAVE_COMPOUND_LITERALS], [1], + [Define if you have compound literals.]) + fi +]) AC_DEFUN([gl_GETDATE], [ dnl Prerequisites of lib/getdate.h. - AC_HEADER_TIME - AC_CHECK_HEADERS_ONCE(sys/time.h) + AC_REQUIRE([AM_STDBOOL_H]) + AC_REQUIRE([gl_TIMESPEC]) dnl Prerequisites of lib/getdate.y. - AC_REQUIRE([jm_BISON]) - AC_REQUIRE([AC_FUNC_ALLOCA]) - AC_REQUIRE([AC_HEADER_STDC]) - AC_CHECK_HEADERS_ONCE(stdlib.h string.h) - AC_CHECK_FUNCS_ONCE(isascii) + AC_REQUIRE([gl_BISON]) + AC_REQUIRE([gl_C_COMPOUND_LITERALS]) AC_STRUCT_TIMEZONE + AC_REQUIRE([gl_CLOCK_TIME]) AC_REQUIRE([gl_TM_GMTOFF]) ])