LZO: update from 2.06 to 2.08
[tomato/tomato-dir865l.git] / release / src / router / lzo / autoconf / local.m4
blob6f532724177a3960cc2b13e1014a887a287b95ce
1 dnl Serial 3 mfx/m4/acc.m4
3 AC_DEFUN([mfx_ACC_CHECK_ENDIAN], [
4 AC_C_BIGENDIAN([AC_DEFINE(ACC_ABI_BIG_ENDIAN,1,[Define to 1 if your machine is big endian.])],[AC_DEFINE(ACC_ABI_LITTLE_ENDIAN,1,[Define to 1 if your machine is little endian.])])
5 ])
7 AC_DEFUN([mfx_ACC_CHECK_HEADERS], [
8 AC_HEADER_TIME
9 AC_CHECK_HEADERS([assert.h ctype.h dirent.h errno.h fcntl.h float.h limits.h malloc.h memory.h setjmp.h signal.h stdarg.h stddef.h stdint.h stdio.h stdlib.h string.h strings.h time.h unistd.h utime.h sys/mman.h sys/resource.h sys/stat.h sys/time.h sys/types.h sys/wait.h])
12 AC_DEFUN([mfx_ACC_CHECK_FUNCS], [
13 AC_CHECK_FUNCS(access alloca atexit atoi atol chmod chown clock_getcpuclockid clock_getres clock_gettime ctime difftime fstat getenv getpagesize getrusage gettimeofday gmtime isatty localtime longjmp lstat memcmp memcpy memmove memset mkdir mktime mmap mprotect munmap qsort raise rmdir setjmp signal snprintf strcasecmp strchr strdup strerror strftime stricmp strncasecmp strnicmp strrchr strstr time umask utime vsnprintf)
16 AC_DEFUN([mfx_ACC_CHECK_SIZEOF], [
17 AC_CHECK_SIZEOF(short)
18 AC_CHECK_SIZEOF(int)
19 AC_CHECK_SIZEOF(long)
21 AC_CHECK_SIZEOF(long long)
22 AC_CHECK_SIZEOF(__int16)
23 AC_CHECK_SIZEOF(__int32)
24 AC_CHECK_SIZEOF(__int64)
26 AC_CHECK_SIZEOF(void *)
27 AC_CHECK_SIZEOF(size_t)
28 AC_CHECK_SIZEOF(ptrdiff_t)
31 AC_DEFUN([mfx_ACC_ACCCHK], [
32 mfx_tmp=$1
33 mfx_save_CPPFLAGS=$CPPFLAGS
34 dnl in Makefile.in $(INCLUDES) will be before $(CPPFLAGS), so we mimic this here
35 test "X$mfx_tmp" = "X" || CPPFLAGS="$mfx_tmp $CPPFLAGS"
37 AC_MSG_CHECKING([whether your compiler passes the ACC conformance test])
39 AC_LANG_CONFTEST([AC_LANG_PROGRAM(
40 [[#define ACC_CFG_NO_CONFIG_HEADER 1
41 #include "acc/acc.h"
42 #include "acc/acc_incd.h"
44 #undef  ACCCHK_ASSERT
45 #define ACCCHK_ASSERT(expr)     ACC_COMPILE_TIME_ASSERT_HEADER(expr)
46 #include "acc/acc_chk.ch"
48 #undef  ACCCHK_ASSERT
49 #define ACCCHK_ASSERT(expr)     ACC_COMPILE_TIME_ASSERT(expr)
50 static void test_acc_compile_time_assert(void) {
51 #include "acc/acc_chk.ch"
54 #undef NDEBUG
55 #include <assert.h>
56 #undef  ACCCHK_ASSERT
57 #define ACCCHK_ASSERT(expr)     assert(expr);
58 static int test_acc_run_time_assert(int r) {
59 #include "acc/acc_chk.ch"
60 return r;
62 ]], [[
63 test_acc_compile_time_assert();
64 if (test_acc_run_time_assert(1) != 1) return 1;
66 )])
68 mfx_tmp=FAILED
69 _AC_COMPILE_IFELSE([], [mfx_tmp=yes])
70 rm -f conftest.$ac_ext conftest.$ac_objext
72 CPPFLAGS=$mfx_save_CPPFLAGS
74 AC_MSG_RESULT([$mfx_tmp])
75 case x$mfx_tmp in
76   xpassed | xyes) ;;
77   *)
78     AC_MSG_NOTICE([])
79     AC_MSG_NOTICE([Your compiler failed the ACC conformance test - for details see ])
80     AC_MSG_NOTICE([`config.log'. Please check that log file and consider sending])
81     AC_MSG_NOTICE([a patch or bug-report to <${PACKAGE_BUGREPORT}>.])
82     AC_MSG_NOTICE([Thanks for your support.])
83     AC_MSG_NOTICE([])
84     AC_MSG_ERROR([ACC conformance test failed. Stop.])
85 dnl    AS_EXIT
86     ;;
87 esac
90 dnl Serial 3 mfx/m4/acc_miniacc.m4
92 AC_DEFUN([mfx_MINIACC_ACCCHK], [
93 mfx_tmp=$1
94 mfx_save_CPPFLAGS=$CPPFLAGS
95 dnl in Makefile.in $(INCLUDES) will be before $(CPPFLAGS), so we mimic this here
96 test "X$mfx_tmp" = "X" || CPPFLAGS="$mfx_tmp $CPPFLAGS"
98 AC_MSG_CHECKING([whether your compiler passes the ACC conformance test])
100 AC_LANG_CONFTEST([AC_LANG_PROGRAM(
101 [[#define ACC_CFG_NO_CONFIG_HEADER 1
102 #define ACC_WANT_ACC_INCD_H 1
103 #include $2
105 #undef  ACCCHK_ASSERT
106 #define ACCCHK_ASSERT(expr)     ACC_COMPILE_TIME_ASSERT_HEADER(expr)
107 #define ACC_WANT_ACC_CHK_CH 1
108 #include $2
110 #undef  ACCCHK_ASSERT
111 #define ACCCHK_ASSERT(expr)     ACC_COMPILE_TIME_ASSERT(expr)
112 static void test_acc_compile_time_assert(void) {
113 #define ACC_WANT_ACC_CHK_CH 1
114 #include $2
117 #undef NDEBUG
118 #include <assert.h>
119 #undef  ACCCHK_ASSERT
120 #define ACCCHK_ASSERT(expr)     assert(expr);
121 static int test_acc_run_time_assert(int r) {
122 #define ACC_WANT_ACC_CHK_CH 1
123 #include $2
124 return r;
126 ]], [[
127 test_acc_compile_time_assert();
128 if (test_acc_run_time_assert(1) != 1) return 1;
132 mfx_tmp=FAILED
133 _AC_COMPILE_IFELSE([], [mfx_tmp=yes])
134 rm -f conftest.$ac_ext conftest.$ac_objext
136 CPPFLAGS=$mfx_save_CPPFLAGS
138 AC_MSG_RESULT([$mfx_tmp])
139 case x$mfx_tmp in
140   xpassed | xyes) ;;
141   *)
142     AC_MSG_NOTICE([])
143     AC_MSG_NOTICE([Your compiler failed the ACC conformance test - for details see ])
144     AC_MSG_NOTICE([`config.log'. Please check that log file and consider sending])
145     AC_MSG_NOTICE([a patch or bug-report to <${PACKAGE_BUGREPORT}>.])
146     AC_MSG_NOTICE([Thanks for your support.])
147     AC_MSG_NOTICE([])
148     AC_MSG_ERROR([ACC conformance test failed. Stop.])
149 dnl    AS_EXIT
150     ;;
151 esac
154 dnl Serial 2 mfx/m4/cppflags.m4
156 AC_DEFUN([mfx_PROG_CPPFLAGS], [
157 AC_MSG_CHECKING([whether the C preprocessor needs special flags])
159 AC_LANG_CONFTEST([AC_LANG_PROGRAM(
160 [[#include <limits.h>
161 #if (32767 >= 4294967295ul) || (65535u >= 4294967295ul)
162 #  include "your C preprocessor is broken 1"
163 #elif (0xffffu == 0xfffffffful)
164 #  include "your C preprocessor is broken 2"
165 #elif (32767 >= ULONG_MAX) || (65535u >= ULONG_MAX)
166 #  include "your C preprocessor is broken 3"
167 #endif
168 ]], [[ ]]
171 mfx_save_CPPFLAGS=$CPPFLAGS
172 mfx_tmp=ERROR
173 for mfx_arg in "" -no-cpp-precomp
175   CPPFLAGS="$mfx_arg $mfx_save_CPPFLAGS"
176   _AC_COMPILE_IFELSE([],
177 [mfx_tmp=$mfx_arg
178 break])
179 done
180 CPPFLAGS=$mfx_save_CPPFLAGS
181 rm -f conftest.$ac_ext conftest.$ac_objext
182 case x$mfx_tmp in
183   x)
184     AC_MSG_RESULT([none needed]) ;;
185   xERROR)
186     AC_MSG_RESULT([ERROR])
187     AC_MSG_ERROR([your C preprocessor is broken - for details see config.log])
188     ;;
189   *)
190     AC_MSG_RESULT([$mfx_tmp])
191     CPPFLAGS="$mfx_tmp $CPPFLAGS"
192     ;;
193 esac
196 dnl Serial 13  -*- Autoconf -*-
197 # Enable extensions on systems that normally disable them.
199 # Copyright (C) 2003, 2006-2014 Free Software Foundation, Inc.
200 # This file is free software; the Free Software Foundation
201 # gives unlimited permission to copy and/or distribute it,
202 # with or without modifications, as long as this notice is preserved.
204 # This definition of AC_USE_SYSTEM_EXTENSIONS is stolen from git
205 # Autoconf.  Perhaps we can remove this once we can assume Autoconf
206 # 2.70 or later everywhere, but since Autoconf mutates rapidly
207 # enough in this area it's likely we'll need to redefine
208 # AC_USE_SYSTEM_EXTENSIONS for quite some time.
210 # If autoconf reports a warning
211 #     warning: AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
212 # or  warning: AC_RUN_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
213 # the fix is
214 #   1) to ensure that AC_USE_SYSTEM_EXTENSIONS is never directly invoked
215 #      but always AC_REQUIREd,
216 #   2) to ensure that for each occurrence of
217 #        AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
218 #      or
219 #        AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
220 #      the corresponding gnulib module description has 'extensions' among
221 #      its dependencies. This will ensure that the gl_USE_SYSTEM_EXTENSIONS
222 #      invocation occurs in gl_EARLY, not in gl_INIT.
224 # AC_USE_SYSTEM_EXTENSIONS
225 # ------------------------
226 # Enable extensions on systems that normally disable them,
227 # typically due to standards-conformance issues.
229 # Remember that #undef in AH_VERBATIM gets replaced with #define by
230 # AC_DEFINE.  The goal here is to define all known feature-enabling
231 # macros, then, if reports of conflicts are made, disable macros that
232 # cause problems on some platforms (such as __EXTENSIONS__).
233 AC_DEFUN_ONCE([AC_USE_SYSTEM_EXTENSIONS],
234 [AC_BEFORE([$0], [AC_COMPILE_IFELSE])dnl
235 AC_BEFORE([$0], [AC_RUN_IFELSE])dnl
237   AC_CHECK_HEADER([minix/config.h], [MINIX=yes], [MINIX=])
238   if test "$MINIX" = yes; then
239     AC_DEFINE([_POSIX_SOURCE], [1],
240       [Define to 1 if you need to in order for 'stat' and other
241        things to work.])
242     AC_DEFINE([_POSIX_1_SOURCE], [2],
243       [Define to 2 if the system does not provide POSIX.1 features
244        except with this defined.])
245     AC_DEFINE([_MINIX], [1],
246       [Define to 1 if on MINIX.])
247     AC_DEFINE([_NETBSD_SOURCE], [1],
248       [Define to 1 to make NetBSD features available.  MINIX 3 needs this.])
249   fi
251 dnl Use a different key than __EXTENSIONS__, as that name broke existing
252 dnl configure.ac when using autoheader 2.62.
253   AH_VERBATIM([USE_SYSTEM_EXTENSIONS],
254 [/* Enable extensions on AIX 3, Interix.  */
255 #ifndef _ALL_SOURCE
256 # undef _ALL_SOURCE
257 #endif
258 /* Enable general extensions on OS X.  */
259 #ifndef _DARWIN_C_SOURCE
260 # undef _DARWIN_C_SOURCE
261 #endif
262 /* Enable GNU extensions on systems that have them.  */
263 #ifndef _GNU_SOURCE
264 # undef _GNU_SOURCE
265 #endif
266 /* Enable threading extensions on Solaris.  */
267 #ifndef _POSIX_PTHREAD_SEMANTICS
268 # undef _POSIX_PTHREAD_SEMANTICS
269 #endif
270 /* Enable extensions on HP NonStop.  */
271 #ifndef _TANDEM_SOURCE
272 # undef _TANDEM_SOURCE
273 #endif
274 /* Enable X/Open extensions if necessary.  HP-UX 11.11 defines
275    mbstate_t only if _XOPEN_SOURCE is defined to 500, regardless of
276    whether compiling with -Ae or -D_HPUX_SOURCE=1.  */
277 #ifndef _XOPEN_SOURCE
278 # undef _XOPEN_SOURCE
279 #endif
280 /* Enable general extensions on Solaris.  */
281 #ifndef __EXTENSIONS__
282 # undef __EXTENSIONS__
283 #endif
285   AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__],
286     [ac_cv_safe_to_define___extensions__],
287     [AC_COMPILE_IFELSE(
288        [AC_LANG_PROGRAM([[
289 #         define __EXTENSIONS__ 1
290           ]AC_INCLUDES_DEFAULT])],
291        [ac_cv_safe_to_define___extensions__=yes],
292        [ac_cv_safe_to_define___extensions__=no])])
293   test $ac_cv_safe_to_define___extensions__ = yes &&
294     AC_DEFINE([__EXTENSIONS__])
295   AC_DEFINE([_ALL_SOURCE])
296   AC_DEFINE([_DARWIN_C_SOURCE])
297   AC_DEFINE([_GNU_SOURCE])
298   AC_DEFINE([_POSIX_PTHREAD_SEMANTICS])
299   AC_DEFINE([_TANDEM_SOURCE])
300   AC_CACHE_CHECK([whether _XOPEN_SOURCE should be defined],
301     [ac_cv_should_define__xopen_source],
302     [ac_cv_should_define__xopen_source=no
303      AC_COMPILE_IFELSE(
304        [AC_LANG_PROGRAM([[
305           #include <wchar.h>
306           mbstate_t x;]])],
307        [],
308        [AC_COMPILE_IFELSE(
309           [AC_LANG_PROGRAM([[
310              #define _XOPEN_SOURCE 500
311              #include <wchar.h>
312              mbstate_t x;]])],
313           [ac_cv_should_define__xopen_source=yes])])])
314   test $ac_cv_should_define__xopen_source = yes &&
315     AC_DEFINE([_XOPEN_SOURCE], [500])
316 ])# AC_USE_SYSTEM_EXTENSIONS
318 # gl_USE_SYSTEM_EXTENSIONS
319 # ------------------------
320 # Enable extensions on systems that normally disable them,
321 # typically due to standards-conformance issues.
322 AC_DEFUN_ONCE([gl_USE_SYSTEM_EXTENSIONS],
324   dnl Require this macro before AC_USE_SYSTEM_EXTENSIONS.
325   dnl gnulib does not need it. But if it gets required by third-party macros
326   dnl after AC_USE_SYSTEM_EXTENSIONS is required, autoconf 2.62..2.63 emit a
327   dnl warning: "AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS".
328   dnl Note: We can do this only for one of the macros AC_AIX, AC_GNU_SOURCE,
329   dnl AC_MINIX. If people still use AC_AIX or AC_MINIX, they are out of luck.
330   AC_REQUIRE([AC_GNU_SOURCE])
332   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
335 dnl Serial 4 mfx/m4/limits.m4
337 AC_DEFUN([mfx_CHECK_HEADER_SANE_LIMITS_H], [
338 AC_CACHE_CHECK([whether limits.h is sane],
339 mfx_cv_header_sane_limits_h,
340 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <limits.h>
341 #if (32767 >= 4294967295ul) || (65535u >= 4294967295ul)
342 #  if defined(__APPLE__) && defined(__GNUC__)
343 #    error "your preprocessor is broken - use compiler option -no-cpp-precomp"
344 #  else
345 #    include "your preprocessor is broken"
346 #  endif
347 #endif
348 #define MFX_0xffff          0xffff
349 #define MFX_0xffffffffL     4294967295ul
350 #if !defined(CHAR_BIT) || (CHAR_BIT != 8)
351 #  include "error CHAR_BIT"
352 #endif
353 #if !defined(UCHAR_MAX)
354 #  include "error UCHAR_MAX 1"
355 #endif
356 #if !defined(USHRT_MAX)
357 #  include "error USHRT_MAX 1"
358 #endif
359 #if !defined(UINT_MAX)
360 #  include "error UINT_MAX 1"
361 #endif
362 #if !defined(ULONG_MAX)
363 #  include "error ULONG_MAX 1"
364 #endif
365 #if !defined(SHRT_MAX)
366 #  include "error SHRT_MAX 1"
367 #endif
368 #if !defined(INT_MAX)
369 #  include "error INT_MAX 1"
370 #endif
371 #if !defined(LONG_MAX)
372 #  include "error LONG_MAX 1"
373 #endif
374 #if (UCHAR_MAX < 1)
375 #  include "error UCHAR_MAX 2"
376 #endif
377 #if (USHRT_MAX < 1)
378 #  include "error USHRT_MAX 2"
379 #endif
380 #if (UINT_MAX < 1)
381 #  include "error UINT_MAX 2"
382 #endif
383 #if (ULONG_MAX < 1)
384 #  include "error ULONG_MAX 2"
385 #endif
386 #if (UCHAR_MAX < 0xff)
387 #  include "error UCHAR_MAX 3"
388 #endif
389 #if (USHRT_MAX < MFX_0xffff)
390 #  include "error USHRT_MAX 3"
391 #endif
392 #if (UINT_MAX < MFX_0xffff)
393 #  include "error UINT_MAX 3"
394 #endif
395 #if (ULONG_MAX < MFX_0xffffffffL)
396 #  include "error ULONG_MAX 3"
397 #endif
398 #if (USHRT_MAX > UINT_MAX)
399 #  include "error USHRT_MAX vs UINT_MAX"
400 #endif
401 #if (UINT_MAX > ULONG_MAX)
402 #  include "error UINT_MAX vs ULONG_MAX"
403 #endif
404 ]], [[
405 #if (USHRT_MAX == MFX_0xffff)
406 { typedef char a_short2a[1 - 2 * !(sizeof(short) == 2)]; }
407 #elif (USHRT_MAX >= MFX_0xffff)
408 { typedef char a_short2b[1 - 2 * !(sizeof(short) > 2)]; }
409 #endif
410 #if (UINT_MAX == MFX_0xffff)
411 { typedef char a_int2a[1 - 2 * !(sizeof(int) == 2)]; }
412 #elif (UINT_MAX >= MFX_0xffff)
413 { typedef char a_int2b[1 - 2 * !(sizeof(int) > 2)]; }
414 #endif
415 #if (ULONG_MAX == MFX_0xffff)
416 { typedef char a_long2a[1 - 2 * !(sizeof(long) == 2)]; }
417 #elif (ULONG_MAX >= MFX_0xffff)
418 { typedef char a_long2b[1 - 2 * !(sizeof(long) > 2)]; }
419 #endif
420 #if !defined(_CRAY1) /* CRAY PVP systems */
421 #if (USHRT_MAX == MFX_0xffffffffL)
422 { typedef char a_short4a[1 - 2 * !(sizeof(short) == 4)]; }
423 #elif (USHRT_MAX >= MFX_0xffffffffL)
424 { typedef char a_short4b[1 - 2 * !(sizeof(short) > 4)]; }
425 #endif
426 #endif /* _CRAY1 */
427 #if (UINT_MAX == MFX_0xffffffffL)
428 { typedef char a_int4a[1 - 2 * !(sizeof(int) == 4)]; }
429 #elif (UINT_MAX >= MFX_0xffffffffL)
430 { typedef char a_int4b[1 - 2 * !(sizeof(int) > 4)]; }
431 #endif
432 #if (ULONG_MAX == MFX_0xffffffffL)
433 { typedef char a_long4a[1 - 2 * !(sizeof(long) == 4)]; }
434 #elif (ULONG_MAX >= MFX_0xffffffffL)
435 { typedef char a_long4b[1 - 2 * !(sizeof(long) > 4)]; }
436 #endif
437 ]])],
438 [mfx_cv_header_sane_limits_h=yes],
439 [mfx_cv_header_sane_limits_h=no])])
442 dnl Serial 2 mfx/m4/lzo.m4
444 AC_DEFUN([mfx_LZO_CHECK_ENDIAN], [
445 AC_C_BIGENDIAN([AC_DEFINE(LZO_ABI_BIG_ENDIAN,1,[Define to 1 if your machine is big endian.])],[AC_DEFINE(LZO_ABI_LITTLE_ENDIAN,1,[Define to 1 if your machine is little endian.])])
448 dnl Serial 3 mfx/m4/lzo_lzochk.m4
450 AC_DEFUN([mfx_LZO_LZOCHK], [
451 mfx_tmp=$1
452 mfx_save_CPPFLAGS=$CPPFLAGS
453 dnl in Makefile.in $(INCLUDES) will be before $(CPPFLAGS), so we mimic this here
454 test "X$mfx_tmp" = "X" || CPPFLAGS="$mfx_tmp $CPPFLAGS"
456 AC_MSG_CHECKING([whether your compiler passes the LZO conformance test])
458 AC_LANG_CONFTEST([AC_LANG_PROGRAM(
459 [[#include <limits.h>
460 #include <stddef.h>
461 #define LZO_CFG_NO_CONFIG_HEADER 1
462 #define LZO_WANT_ACC_INCD_H 1
464 #include $3
466 #undef  LZOCHK_ASSERT
467 #define LZOCHK_ASSERT(expr)     LZO_COMPILE_TIME_ASSERT_HEADER(expr)
468 #define LZO_WANT_ACC_CHK_CH 1
469 #include $3
471 #undef  LZOCHK_ASSERT
472 #define LZOCHK_ASSERT(expr)     LZO_COMPILE_TIME_ASSERT(expr)
473 static void test_lzo_compile_time_assert(void) {
474 #define LZO_WANT_ACC_CHK_CH 1
475 #include $3
478 #undef NDEBUG
479 #include <assert.h>
480 #undef  LZOCHK_ASSERT
481 #define LZOCHK_ASSERT(expr)     assert(expr);
482 static int test_lzo_run_time_assert(int r) {
483 #define LZO_WANT_ACC_CHK_CH 1
484 #include $3
485 return r;
487 ]], [[
488 test_lzo_compile_time_assert();
489 if (test_lzo_run_time_assert(1) != 1) return 1;
493 mfx_tmp=FAILED
494 _AC_COMPILE_IFELSE([], [mfx_tmp=yes])
495 rm -f conftest.$ac_ext conftest.$ac_objext
497 CPPFLAGS=$mfx_save_CPPFLAGS
499 AC_MSG_RESULT([$mfx_tmp])
500 case x$mfx_tmp in
501   xpassed | xyes) ;;
502   *)
503     AC_MSG_NOTICE([])
504     AC_MSG_NOTICE([Your compiler failed the LZO conformance test - for details see ])
505     AC_MSG_NOTICE([`config.log'. Please check that log file and consider sending])
506     AC_MSG_NOTICE([a patch or bug-report to <${PACKAGE_BUGREPORT}>.])
507     AC_MSG_NOTICE([Thanks for your support.])
508     AC_MSG_NOTICE([])
509     AC_MSG_ERROR([LZO conformance test failed. Stop.])
510 dnl    AS_EXIT
511     ;;
512 esac
515 dnl Serial 2 mfx/m4/mfx.m4
517 AC_DEFUN([mfx_CHECK_SIZEOF], [
518 AC_CHECK_SIZEOF(__int32)
519 AC_CHECK_SIZEOF(intmax_t)
520 AC_CHECK_SIZEOF(uintmax_t)
521 AC_CHECK_SIZEOF(intptr_t)
522 AC_CHECK_SIZEOF(uintptr_t)
524 AC_CHECK_SIZEOF(float)
525 AC_CHECK_SIZEOF(double)
526 AC_CHECK_SIZEOF(long double)
528 AC_CHECK_SIZEOF(dev_t)
529 AC_CHECK_SIZEOF(fpos_t)
530 AC_CHECK_SIZEOF(mode_t)
531 AC_CHECK_SIZEOF(off_t)
532 AC_CHECK_SIZEOF(ssize_t)
533 AC_CHECK_SIZEOF(time_t)
536 AC_DEFUN([mfx_CHECK_LIB_WINMM], [
537 if test "X$GCC" = Xyes; then
538 case $host_os in
539 cygwin* | mingw* | pw32*)
540      test "X$LIBS" != "X" && LIBS="$LIBS "
541      LIBS="${LIBS}-lwinmm" ;;
542 esac
546 dnl Serial 2 mfx/m4/nrv.m4
548 AC_DEFUN([mfx_NRV_CHECK_ENDIAN], [
549 AC_C_BIGENDIAN([AC_DEFINE(NRV_ABI_BIG_ENDIAN,1,[Define to 1 if your machine is big endian.])],[AC_DEFINE(NRV_ABI_LITTLE_ENDIAN,1,[Define to 1 if your machine is little endian.])])
551 # Checks for stat-related time functions.
553 # Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2014 Free Software
554 # Foundation, Inc.
556 # This file is free software; the Free Software Foundation
557 # gives unlimited permission to copy and/or distribute it,
558 # with or without modifications, as long as this notice is preserved.
560 dnl From Paul Eggert.
562 # st_atim.tv_nsec - Linux, Solaris, Cygwin
563 # st_atimespec.tv_nsec - FreeBSD, NetBSD, if ! defined _POSIX_SOURCE
564 # st_atimensec - FreeBSD, NetBSD, if defined _POSIX_SOURCE
565 # st_atim.st__tim.tv_nsec - UnixWare (at least 2.1.2 through 7.1)
567 # st_birthtimespec - FreeBSD, NetBSD (hidden on OpenBSD 3.9, anyway)
568 # st_birthtim - Cygwin 1.7.0+
570 AC_DEFUN([gl_STAT_TIME],
572   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
573   AC_CHECK_HEADERS_ONCE([sys/time.h])
575   AC_CHECK_MEMBERS([struct stat.st_atim.tv_nsec],
576     [AC_CACHE_CHECK([whether struct stat.st_atim is of type struct timespec],
577        [ac_cv_typeof_struct_stat_st_atim_is_struct_timespec],
578        [AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
579           [[
580             #include <sys/types.h>
581             #include <sys/stat.h>
582             #if HAVE_SYS_TIME_H
583             # include <sys/time.h>
584             #endif
585             #include <time.h>
586             struct timespec ts;
587             struct stat st;
588           ]],
589           [[
590             st.st_atim = ts;
591           ]])],
592           [ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=yes],
593           [ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=no])])
594      if test $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec = yes; then
595        AC_DEFINE([TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC], [1],
596          [Define to 1 if the type of the st_atim member of a struct stat is
597           struct timespec.])
598      fi],
599     [AC_CHECK_MEMBERS([struct stat.st_atimespec.tv_nsec], [],
600        [AC_CHECK_MEMBERS([struct stat.st_atimensec], [],
601           [AC_CHECK_MEMBERS([struct stat.st_atim.st__tim.tv_nsec], [], [],
602              [#include <sys/types.h>
603               #include <sys/stat.h>])],
604           [#include <sys/types.h>
605            #include <sys/stat.h>])],
606        [#include <sys/types.h>
607         #include <sys/stat.h>])],
608     [#include <sys/types.h>
609      #include <sys/stat.h>])
612 # Check for st_birthtime, a feature from UFS2 (FreeBSD, NetBSD, OpenBSD, etc.)
613 # and NTFS (Cygwin).
614 # There was a time when this field was named st_createtime (21 June
615 # 2002 to 16 July 2002) But that window is very small and applied only
616 # to development code, so systems still using that configuration are
617 # not supported.  See revisions 1.10 and 1.11 of FreeBSD's
618 # src/sys/ufs/ufs/dinode.h.
620 AC_DEFUN([gl_STAT_BIRTHTIME],
622   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
623   AC_CHECK_HEADERS_ONCE([sys/time.h])
624   AC_CHECK_MEMBERS([struct stat.st_birthtimespec.tv_nsec], [],
625     [AC_CHECK_MEMBERS([struct stat.st_birthtimensec], [],
626       [AC_CHECK_MEMBERS([struct stat.st_birthtim.tv_nsec], [], [],
627          [#include <sys/types.h>
628           #include <sys/stat.h>])],
629        [#include <sys/types.h>
630         #include <sys/stat.h>])],
631     [#include <sys/types.h>
632      #include <sys/stat.h>])
635 dnl Serial 2 mfx/m4/ucl.m4
637 AC_DEFUN([mfx_UCL_CHECK_ENDIAN], [
638 AC_C_BIGENDIAN([AC_DEFINE(UCL_ABI_BIG_ENDIAN,1,[Define to 1 if your machine is big endian.])],[AC_DEFINE(UCL_ABI_LITTLE_ENDIAN,1,[Define to 1 if your machine is little endian.])])