summaryrefslogtreecommitdiff
path: root/m4/ax_var_timezone_externals.m4
diff options
context:
space:
mode:
authorDaniel Richard G <skunk@iSKUNK.ORG>2011-04-29 18:16:45 +0200
committerPeter Simons <simons@cryp.to>2011-04-29 18:35:37 +0200
commitfe98ff5ba53859debed8bfeca24d5fc8daf4277a (patch)
tree446850d10b246165ac37fa11d6e7eb3ce3040bc5 /m4/ax_var_timezone_externals.m4
parentda0d41b5f95be3f671a2127c230297d611b9281d (diff)
downloadautoconf-archive-fe98ff5ba53859debed8bfeca24d5fc8daf4277a.tar.gz
AX_VAR_TIMEZONE_EXTERNALS: updated for Autoconf 2.68
Diffstat (limited to 'm4/ax_var_timezone_externals.m4')
-rw-r--r--m4/ax_var_timezone_externals.m463
1 files changed, 40 insertions, 23 deletions
diff --git a/m4/ax_var_timezone_externals.m4 b/m4/ax_var_timezone_externals.m4
index 06ef076..372a8cb 100644
--- a/m4/ax_var_timezone_externals.m4
+++ b/m4/ax_var_timezone_externals.m4
@@ -13,9 +13,13 @@
# `HAVE_TIMEZONE', `HAVE_ALTZONE' and `HAVE_DAYLIGHT' respectively (as
# well as gaining the macros defined by `AC_STRUCT_TIMEZONE').
#
+# Rewritten for Autoconf 2.68, and made robust against BSD's timezone()
+# function, by Daniel Richard G.
+#
# LICENSE
#
-# Copyright (c) 2008 Mark R. Bannister
+# Copyright (c) 2008 Mark R. Bannister <markb@freedomware.co.uk>
+# Copyright (c) 2011 Daniel Richard G. <skunk@iSKUNK.ORG>
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
@@ -43,36 +47,49 @@
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
-#serial 5
+#serial 6
AU_ALIAS([AC_VAR_TIMEZONE_EXTERNALS], [AX_VAR_TIMEZONE_EXTERNALS])
AC_DEFUN([AX_VAR_TIMEZONE_EXTERNALS],
[ AC_REQUIRE([AC_STRUCT_TIMEZONE])dnl
- AC_CACHE_CHECK(for timezone external, mb_cv_var_timezone,
- [ AC_TRY_LINK([#include <time.h>], [return (int)timezone;],
- mb_cv_var_timezone=yes,
- mb_cv_var_timezone=no)
+
+ AC_LANG_PUSH([C])
+
+ AC_CACHE_CHECK([for `timezone' variable in time.h], [mb_cv_var_timezone],
+ [ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <time.h>],
+ [int *foo = (int *)0xdeadbeef; return foo@<:@timezone@:>@ /* ; */])],
+ [mb_cv_var_timezone=yes],
+ [mb_cv_var_timezone=no])
])
- AC_CACHE_CHECK(for altzone external, mb_cv_var_altzone,
- [ AC_TRY_LINK([#include <time.h>], [return (int)altzone;],
- mb_cv_var_altzone=yes,
- mb_cv_var_altzone=no)
+
+ AC_CACHE_CHECK([for `altzone' variable in time.h], [mb_cv_var_altzone],
+ [ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <time.h>],
+ [int *foo = (int *)0xdeadbeef; return foo@<:@altzone@:>@ /* ; */])],
+ [mb_cv_var_altzone=yes],
+ [mb_cv_var_altzone=no])
])
- AC_CACHE_CHECK(for daylight external, mb_cv_var_daylight,
- [ AC_TRY_LINK([#include <time.h>], [return (int)daylight;],
- mb_cv_var_daylight=yes,
- mb_cv_var_daylight=no)
+
+ AC_CACHE_CHECK([for `daylight' variable in time.h], [mb_cv_var_daylight],
+ [ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <time.h>],
+ [int *foo = (int *)0xdeadbeef; return foo@<:@daylight@:>@ /* ; */])],
+ [mb_cv_var_daylight=yes],
+ [mb_cv_var_daylight=no])
])
- if test $mb_cv_var_timezone = yes; then
- AC_DEFINE([HAVE_TIMEZONE], 1,
- [Define if you have the external `timezone' variable.])
+
+ if test "$mb_cv_var_timezone" = "yes"; then
+ AC_DEFINE([HAVE_TIMEZONE], [1],
+ [Define to 1 if you have the external `timezone' variable.])
fi
- if test $mb_cv_var_altzone = yes; then
- AC_DEFINE([HAVE_ALTZONE], 1,
- [Define if you have the external `altzone' variable.])
+
+ if test "$mb_cv_var_altzone" = "yes"; then
+ AC_DEFINE([HAVE_ALTZONE], [1],
+ [Define to 1 if you have the external `altzone' variable.])
fi
- if test $mb_cv_var_daylight = yes; then
- AC_DEFINE([HAVE_DAYLIGHT], 1,
- [Define if you have the external `daylight' variable.])
+
+ if test "$mb_cv_var_daylight" = "yes"; then
+ AC_DEFINE([HAVE_DAYLIGHT], [1],
+ [Define to 1 if you have the external `daylight' variable.])
fi
+
+ AC_LANG_POP
])