xref: /freebsd/contrib/file/acinclude.m4 (revision 649d615c25f64d6f740ad79df7d6d25d98c9a88b)
175a6cdb3SDavid E. O'Briendnl cloned from autoconf 2.13 acspecific.m4
275a6cdb3SDavid E. O'BrienAC_DEFUN(AC_C_LONG_LONG,
375a6cdb3SDavid E. O'Brien[AC_CACHE_CHECK(for long long, ac_cv_c_long_long,
475a6cdb3SDavid E. O'Brien[if test "$GCC" = yes; then
575a6cdb3SDavid E. O'Brien  ac_cv_c_long_long=yes
675a6cdb3SDavid E. O'Brienelse
775a6cdb3SDavid E. O'BrienAC_TRY_RUN([int main() {
875a6cdb3SDavid E. O'Brienlong long foo = 0;
975a6cdb3SDavid E. O'Brienexit(sizeof(long long) < sizeof(long)); }],
1075a6cdb3SDavid E. O'Brienac_cv_c_long_long=yes, ac_cv_c_long_long=no)
1175a6cdb3SDavid E. O'Brienfi])
1275a6cdb3SDavid E. O'Brienif test $ac_cv_c_long_long = yes; then
1375a6cdb3SDavid E. O'Brien  AC_DEFINE(HAVE_LONG_LONG)
1475a6cdb3SDavid E. O'Brienfi
1575a6cdb3SDavid E. O'Brien])
1675a6cdb3SDavid E. O'Brien
1775a6cdb3SDavid E. O'Briendnl from autoconf 2.13 acgeneral.m4, with patch:
1875a6cdb3SDavid E. O'Briendnl Date: Fri, 15 Jan 1999 05:52:41 -0800
1975a6cdb3SDavid E. O'Briendnl Message-ID: <199901151352.FAA18237@shade.twinsun.com>
2075a6cdb3SDavid E. O'Briendnl From: eggert@twinsun.com (Paul Eggert)
2175a6cdb3SDavid E. O'Briendnl Subject: autoconf 2.13 AC_CHECK_TYPE doesn't allow shell vars
2275a6cdb3SDavid E. O'Briendnl Newsgroups: gnu.utils.bug
2375a6cdb3SDavid E. O'Brien
24649d615cSDavid E. O'Briendnl from autoconf 2.13 acspecific.m4, with changes to check for daylight
25649d615cSDavid E. O'Brien
26649d615cSDavid E. O'BrienAC_DEFUN(AC_STRUCT_TIMEZONE_DAYLIGHT,
27649d615cSDavid E. O'Brien[AC_REQUIRE([AC_STRUCT_TM])dnl
28649d615cSDavid E. O'BrienAC_CACHE_CHECK([for tm_zone in struct tm], ac_cv_struct_tm_zone,
29649d615cSDavid E. O'Brien[AC_TRY_COMPILE([#include <sys/types.h>
30649d615cSDavid E. O'Brien#include <$ac_cv_struct_tm>], [struct tm tm; tm.tm_zone;],
31649d615cSDavid E. O'Brien  ac_cv_struct_tm_zone=yes, ac_cv_struct_tm_zone=no)])
32649d615cSDavid E. O'Brienif test "$ac_cv_struct_tm_zone" = yes; then
33649d615cSDavid E. O'Brien  AC_DEFINE(HAVE_TM_ZONE)
34649d615cSDavid E. O'Brienfi
35649d615cSDavid E. O'BrienAC_CACHE_CHECK(for tzname, ac_cv_var_tzname,
36649d615cSDavid E. O'Brien[AC_TRY_LINK(
37649d615cSDavid E. O'Brienchangequote(<<, >>)dnl
38649d615cSDavid E. O'Brien<<#include <time.h>
39649d615cSDavid E. O'Brien#ifndef tzname /* For SGI.  */
40649d615cSDavid E. O'Brienextern char *tzname[]; /* RS6000 and others reject char **tzname.  */
41649d615cSDavid E. O'Brien#endif>>,
42649d615cSDavid E. O'Brienchangequote([, ])dnl
43649d615cSDavid E. O'Brien[atoi(*tzname);], ac_cv_var_tzname=yes, ac_cv_var_tzname=no)])
44649d615cSDavid E. O'Brien  if test $ac_cv_var_tzname = yes; then
45649d615cSDavid E. O'Brien    AC_DEFINE(HAVE_TZNAME)
46649d615cSDavid E. O'Brien  fi
47649d615cSDavid E. O'Brien
48649d615cSDavid E. O'BrienAC_CACHE_CHECK([for tm_isdst in struct tm], ac_cv_struct_tm_isdst,
49649d615cSDavid E. O'Brien[AC_TRY_COMPILE([#include <sys/types.h>
50649d615cSDavid E. O'Brien#include <$ac_cv_struct_tm>], [struct tm tm; tm.tm_isdst;],
51649d615cSDavid E. O'Brien  ac_cv_struct_tm_isdst=yes, ac_cv_struct_tm_isdst=no)])
52649d615cSDavid E. O'Brienif test "$ac_cv_struct_tm_isdst" = yes; then
53649d615cSDavid E. O'Brien  AC_DEFINE(HAVE_TM_ISDST)
54649d615cSDavid E. O'Brienfi
55649d615cSDavid E. O'BrienAC_CACHE_CHECK(for daylight, ac_cv_var_daylight,
56649d615cSDavid E. O'Brien[AC_TRY_LINK(
57649d615cSDavid E. O'Brienchangequote(<<, >>)dnl
58649d615cSDavid E. O'Brien<<#include <time.h>
59649d615cSDavid E. O'Brien#ifndef daylight /* In case IRIX #defines this, too  */
60649d615cSDavid E. O'Brienextern int daylight;
61649d615cSDavid E. O'Brien#endif>>,
62649d615cSDavid E. O'Brienchangequote([, ])dnl
63649d615cSDavid E. O'Brien[atoi(daylight);], ac_cv_var_daylight=yes, ac_cv_var_daylight=no)])
64649d615cSDavid E. O'Brien  if test $ac_cv_var_daylight = yes; then
65649d615cSDavid E. O'Brien    AC_DEFINE(HAVE_DAYLIGHT)
66649d615cSDavid E. O'Brien  fi
67649d615cSDavid E. O'Brien])
68649d615cSDavid E. O'Brien
6975a6cdb3SDavid E. O'Briendnl AC_CHECK_TYPE2(TYPE, DEFAULT)
7075a6cdb3SDavid E. O'BrienAC_DEFUN(AC_CHECK_TYPE2,
7175a6cdb3SDavid E. O'Brien[AC_REQUIRE([AC_HEADER_STDC])dnl
7275a6cdb3SDavid E. O'BrienAC_MSG_CHECKING(for $1)
7375a6cdb3SDavid E. O'BrienAC_CACHE_VAL(ac_cv_type_$1,
7475a6cdb3SDavid E. O'Brien[AC_EGREP_CPP(dnl
7575a6cdb3SDavid E. O'Brienchangequote(<<,>>)dnl
7675a6cdb3SDavid E. O'Brien<<(^|[^a-zA-Z_0-9])$1[^a-zA-Z_0-9]>>dnl
7775a6cdb3SDavid E. O'Brienchangequote([,]), [#include <sys/types.h>
7875a6cdb3SDavid E. O'Brien#if STDC_HEADERS
7975a6cdb3SDavid E. O'Brien#include <stdlib.h>
8075a6cdb3SDavid E. O'Brien#include <stddef.h>
8175a6cdb3SDavid E. O'Brien#endif], eval "ac_cv_type_$1=yes", eval "ac_cv_type_$1=no")])dnl
8275a6cdb3SDavid E. O'Brienif eval "test \"`echo '$ac_cv_type_'$1`\" = yes"; then
8375a6cdb3SDavid E. O'Brien  AC_MSG_RESULT(yes)
8475a6cdb3SDavid E. O'Brienelse
8575a6cdb3SDavid E. O'Brien  AC_MSG_RESULT(no)
8675a6cdb3SDavid E. O'Brien  AC_DEFINE_UNQUOTED($1, $2)
8775a6cdb3SDavid E. O'Brienfi
8875a6cdb3SDavid E. O'Brien])
8975a6cdb3SDavid E. O'Brien
9075a6cdb3SDavid E. O'Briendnl from autoconf 2.13 acgeneral.m4, with additional third argument
9175a6cdb3SDavid E. O'Briendnl AC_CHECK_SIZEOF_INCLUDES(TYPE [, CROSS-SIZE, [INCLUDES]])
9275a6cdb3SDavid E. O'BrienAC_DEFUN(AC_CHECK_SIZEOF_INCLUDES,
9375a6cdb3SDavid E. O'Brien[changequote(<<, >>)dnl
9475a6cdb3SDavid E. O'Briendnl The name to #define.
9575a6cdb3SDavid E. O'Briendefine(<<AC_TYPE_NAME>>, translit(sizeof_$1, [a-z *], [A-Z_P]))dnl
9675a6cdb3SDavid E. O'Briendnl The cache variable name.
9775a6cdb3SDavid E. O'Briendefine(<<AC_CV_NAME>>, translit(ac_cv_sizeof_$1, [ *], [_p]))dnl
9875a6cdb3SDavid E. O'Brienchangequote([, ])dnl
9975a6cdb3SDavid E. O'BrienAC_MSG_CHECKING(size of $1)
10075a6cdb3SDavid E. O'BrienAC_CACHE_VAL(AC_CV_NAME,
10175a6cdb3SDavid E. O'Brien[AC_TRY_RUN([$3
10275a6cdb3SDavid E. O'Brien#include <stdio.h>
10375a6cdb3SDavid E. O'Brienmain()
10475a6cdb3SDavid E. O'Brien{
10575a6cdb3SDavid E. O'Brien  FILE *f=fopen("conftestval", "w");
10675a6cdb3SDavid E. O'Brien  if (!f) exit(1);
10775a6cdb3SDavid E. O'Brien  fprintf(f, "%d\n", sizeof($1));
10875a6cdb3SDavid E. O'Brien  exit(0);
10975a6cdb3SDavid E. O'Brien}], AC_CV_NAME=`cat conftestval`, AC_CV_NAME=0, ifelse([$2], , , AC_CV_NAME=$2))])dnl
11075a6cdb3SDavid E. O'BrienAC_MSG_RESULT($AC_CV_NAME)
11175a6cdb3SDavid E. O'BrienAC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME)
11275a6cdb3SDavid E. O'Brienundefine([AC_TYPE_NAME])dnl
11375a6cdb3SDavid E. O'Brienundefine([AC_CV_NAME])dnl
11475a6cdb3SDavid E. O'Brien])
11575a6cdb3SDavid E. O'Brien
11675a6cdb3SDavid E. O'Briendnl AC_CHECK_SIZEOF_STDC_HEADERS(TYPE [, CROSS_SIZE])
11775a6cdb3SDavid E. O'BrienAC_DEFUN(AC_CHECK_SIZEOF_STDC_HEADERS,
11875a6cdb3SDavid E. O'Brien[AC_CHECK_SIZEOF_INCLUDES($1, $2,
11975a6cdb3SDavid E. O'Brien[#include <sys/types.h>
12075a6cdb3SDavid E. O'Brien#ifdef STDC_HEADERS
12175a6cdb3SDavid E. O'Brien#include <stdlib.h>
12275a6cdb3SDavid E. O'Brien#endif
12375a6cdb3SDavid E. O'Brien])
12475a6cdb3SDavid E. O'Brien])
125