summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2018-10-12 02:42:44 +0200
committerBruno Haible <bruno@clisp.org>2018-10-12 10:05:27 +0200
commitfa3e2ad20d10d648cc74a5d320ce531a80ff7b1f (patch)
tree02eb6414fa54fb96a5b506a6db187c55e4fb68d1 /m4
parent74c29c68bba3fe7c2f02eb3fc9f7ef196cec1bc6 (diff)
downloadgnulib-fa3e2ad20d10d648cc74a5d320ce531a80ff7b1f.tar.gz
Make better use of Autoconf.
* m4/environ.m4: Use AC_CACHE_CHECK where possible. * m4/manywarnings.m4: Likewise. * m4/manywarnings-c++.m4: Likewise. * m4/socklen.m4: Likewise. * m4/sockpfaf.m4: Likewise. * m4/stdarg.m4: Likewise. * m4/visibility.m4: Likewise. * m4/fsusage.m4: Use AC_CACHE_CHECK where possible. Modernize indentation. * m4/ls-mntd-fs.m4: Likewise.
Diffstat (limited to 'm4')
-rw-r--r--m4/environ.m420
-rw-r--r--m4/fsusage.m4352
-rw-r--r--m4/ls-mntd-fs.m4485
-rw-r--r--m4/manywarnings-c++.m479
-rw-r--r--m4/manywarnings.m479
-rw-r--r--m4/socklen.m415
-rw-r--r--m4/sockpfaf.m417
-rw-r--r--m4/stdarg.m422
-rw-r--r--m4/visibility.m472
9 files changed, 571 insertions, 570 deletions
diff --git a/m4/environ.m4 b/m4/environ.m4
index 68b67eaca4..acee5364b7 100644
--- a/m4/environ.m4
+++ b/m4/environ.m4
@@ -1,4 +1,4 @@
-# environ.m4 serial 6
+# environ.m4 serial 7
dnl Copyright (C) 2001-2004, 2006-2018 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -29,16 +29,14 @@ AC_DEFUN_ONCE([gl_ENVIRON],
AC_DEFUN([gt_CHECK_VAR_DECL],
[
define([gt_cv_var], [gt_cv_var_]$2[_declaration])
- AC_MSG_CHECKING([if $2 is properly declared])
- AC_CACHE_VAL([gt_cv_var], [
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[$1
- extern struct { int foo; } $2;]],
- [[$2.foo = 1;]])],
- [gt_cv_var=no],
- [gt_cv_var=yes])])
- AC_MSG_RESULT([$gt_cv_var])
+ AC_CACHE_CHECK([if $2 is properly declared], [gt_cv_var],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[$1
+ extern struct { int foo; } $2;]],
+ [[$2.foo = 1;]])],
+ [gt_cv_var=no],
+ [gt_cv_var=yes])])
if test $gt_cv_var = yes; then
AC_DEFINE([HAVE_]m4_translit($2, [a-z], [A-Z])[_DECL], 1,
[Define if you have the declaration of $2.])
diff --git a/m4/fsusage.m4 b/m4/fsusage.m4
index f9dfbcb7a0..aab4024a97 100644
--- a/m4/fsusage.m4
+++ b/m4/fsusage.m4
@@ -1,4 +1,4 @@
-# serial 32
+# serial 33
# Obtaining file system usage information.
# Copyright (C) 1997-1998, 2000-2001, 2003-2018 Free Software Foundation, Inc.
@@ -29,27 +29,30 @@ AC_DEFUN([gl_FSUSAGE],
AC_DEFUN([gl_FILE_SYSTEM_USAGE],
[
-dnl Enable large-file support. This has the effect of changing the size
-dnl of field f_blocks in 'struct statvfs' from 32 bit to 64 bit on
-dnl glibc/Hurd, HP-UX 11, Solaris (32-bit mode). It also changes the size
-dnl of field f_blocks in 'struct statfs' from 32 bit to 64 bit on
-dnl Mac OS X >= 10.5 (32-bit mode).
-AC_REQUIRE([AC_SYS_LARGEFILE])
+ dnl Enable large-file support. This has the effect of changing the size
+ dnl of field f_blocks in 'struct statvfs' from 32 bit to 64 bit on
+ dnl glibc/Hurd, HP-UX 11, Solaris (32-bit mode). It also changes the size
+ dnl of field f_blocks in 'struct statfs' from 32 bit to 64 bit on
+ dnl Mac OS X >= 10.5 (32-bit mode).
+ AC_REQUIRE([AC_SYS_LARGEFILE])
-AC_MSG_CHECKING([how to get file system space usage])
-ac_fsusage_space=no
+ AC_MSG_CHECKING([how to get file system space usage])
+ ac_fsusage_space=no
-# Perform only the link test since it seems there are no variants of the
-# statvfs function. This check is more than just AC_CHECK_FUNCS([statvfs])
-# because that got a false positive on SCO OSR5. Adding the declaration
-# of a 'struct statvfs' causes this test to fail (as it should) on such
-# systems. That system is reported to work fine with STAT_STATFS4 which
-# is what it gets when this test fails.
-if test $ac_fsusage_space = no; then
- # glibc/{Hurd,kFreeBSD}, FreeBSD >= 5.0, NetBSD >= 3.0,
- # OpenBSD >= 4.4, AIX, HP-UX, IRIX, Solaris, Cygwin, Interix, BeOS.
- AC_CACHE_CHECK([for statvfs function (SVR4)], [fu_cv_sys_stat_statvfs],
- [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
+ # Perform only the link test since it seems there are no variants of the
+ # statvfs function. This check is more than just AC_CHECK_FUNCS([statvfs])
+ # because that got a false positive on SCO OSR5. Adding the declaration
+ # of a 'struct statvfs' causes this test to fail (as it should) on such
+ # systems. That system is reported to work fine with STAT_STATFS4 which
+ # is what it gets when this test fails.
+ if test $ac_fsusage_space = no; then
+ # glibc/{Hurd,kFreeBSD}, FreeBSD >= 5.0, NetBSD >= 3.0,
+ # OpenBSD >= 4.4, AIX, HP-UX, IRIX, Solaris, Cygwin, Interix, BeOS.
+ AC_CACHE_CHECK([for statvfs function (SVR4)],
+ [fu_cv_sys_stat_statvfs],
+ [AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[
+#include <sys/types.h>
#ifdef __osf__
"Do not use Tru64's statvfs implementation"
#endif
@@ -68,45 +71,47 @@ struct statvfs fsd;
int check_f_blocks_size[sizeof fsd.f_blocks * CHAR_BIT <= 32 ? -1 : 1];
#endif
]],
- [[statvfs (0, &fsd);]])],
- [fu_cv_sys_stat_statvfs=yes],
- [fu_cv_sys_stat_statvfs=no])])
- if test $fu_cv_sys_stat_statvfs = yes; then
- ac_fsusage_space=yes
- # AIX >= 5.2 has statvfs64 that has a wider f_blocks field than statvfs.
- # glibc, HP-UX, IRIX, Solaris have statvfs64 as well, but on these systems
- # statvfs with large-file support is already equivalent to statvfs64.
- AC_CACHE_CHECK([whether to use statvfs64],
- [fu_cv_sys_stat_statvfs64],
- [AC_LINK_IFELSE(
- [AC_LANG_PROGRAM(
- [[#include <sys/types.h>
- #include <sys/statvfs.h>
- struct statvfs64 fsd;
- int check_f_blocks_larger_in_statvfs64
- [sizeof (((struct statvfs64 *) 0)->f_blocks)
- > sizeof (((struct statvfs *) 0)->f_blocks)
- ? 1 : -1];
- ]],
- [[statvfs64 (0, &fsd);]])],
- [fu_cv_sys_stat_statvfs64=yes],
- [fu_cv_sys_stat_statvfs64=no])
+ [[statvfs (0, &fsd);]])],
+ [fu_cv_sys_stat_statvfs=yes],
+ [fu_cv_sys_stat_statvfs=no])
])
- if test $fu_cv_sys_stat_statvfs64 = yes; then
- AC_DEFINE([STAT_STATVFS64], [1],
- [ Define if statvfs64 should be preferred over statvfs.])
- else
- AC_DEFINE([STAT_STATVFS], [1],
- [ Define if there is a function named statvfs. (SVR4)])
+ if test $fu_cv_sys_stat_statvfs = yes; then
+ ac_fsusage_space=yes
+ # AIX >= 5.2 has statvfs64 that has a wider f_blocks field than statvfs.
+ # glibc, HP-UX, IRIX, Solaris have statvfs64 as well, but on these systems
+ # statvfs with large-file support is already equivalent to statvfs64.
+ AC_CACHE_CHECK([whether to use statvfs64],
+ [fu_cv_sys_stat_statvfs64],
+ [AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <sys/types.h>
+ #include <sys/statvfs.h>
+ struct statvfs64 fsd;
+ int check_f_blocks_larger_in_statvfs64
+ [sizeof (((struct statvfs64 *) 0)->f_blocks)
+ > sizeof (((struct statvfs *) 0)->f_blocks)
+ ? 1 : -1];
+ ]],
+ [[statvfs64 (0, &fsd);]])],
+ [fu_cv_sys_stat_statvfs64=yes],
+ [fu_cv_sys_stat_statvfs64=no])
+ ])
+ if test $fu_cv_sys_stat_statvfs64 = yes; then
+ AC_DEFINE([STAT_STATVFS64], [1],
+ [Define if statvfs64 should be preferred over statvfs.])
+ else
+ AC_DEFINE([STAT_STATVFS], [1],
+ [Define if there is a function named statvfs. (SVR4)])
+ fi
fi
fi
-fi
-# Check for this unconditionally so we have a
-# good fallback on glibc/Linux > 2.6 < 2.6.36
-AC_MSG_CHECKING([for two-argument statfs with statfs.f_frsize member])
-AC_CACHE_VAL([fu_cv_sys_stat_statfs2_frsize],
-[AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ # Check for this unconditionally so we have a
+ # good fallback on glibc/Linux > 2.6 < 2.6.36
+ AC_CACHE_CHECK([for two-argument statfs with statfs.f_frsize member],
+ [fu_cv_sys_stat_statfs2_frsize],
+ [AC_RUN_IFELSE(
+ [AC_LANG_SOURCE([[
#ifdef HAVE_SYS_PARAM_H
#include <sys/param.h>
#endif
@@ -119,26 +124,26 @@ AC_CACHE_VAL([fu_cv_sys_stat_statfs2_frsize],
int
main ()
{
- struct statfs fsd;
- fsd.f_frsize = 0;
- return statfs (".", &fsd) != 0;
+ struct statfs fsd;
+ fsd.f_frsize = 0;
+ return statfs (".", &fsd) != 0;
}]])],
- [fu_cv_sys_stat_statfs2_frsize=yes],
- [fu_cv_sys_stat_statfs2_frsize=no],
- [fu_cv_sys_stat_statfs2_frsize=no])])
-AC_MSG_RESULT([$fu_cv_sys_stat_statfs2_frsize])
-if test $fu_cv_sys_stat_statfs2_frsize = yes; then
+ [fu_cv_sys_stat_statfs2_frsize=yes],
+ [fu_cv_sys_stat_statfs2_frsize=no],
+ [fu_cv_sys_stat_statfs2_frsize=no])
+ ])
+ if test $fu_cv_sys_stat_statfs2_frsize = yes; then
ac_fsusage_space=yes
AC_DEFINE([STAT_STATFS2_FRSIZE], [1],
-[ Define if statfs takes 2 args and struct statfs has a field named f_frsize.
- (glibc/Linux > 2.6)])
-fi
+ [Define if statfs takes 2 args and struct statfs has a field named f_frsize.
+ (glibc/Linux > 2.6)])
+ fi
-if test $ac_fsusage_space = no; then
- # DEC Alpha running OSF/1
- AC_MSG_CHECKING([for 3-argument statfs function (DEC OSF/1)])
- AC_CACHE_VAL([fu_cv_sys_stat_statfs3_osf1],
- [AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ if test $ac_fsusage_space = no; then
+ # DEC Alpha running OSF/1
+ AC_CACHE_CHECK([for 3-argument statfs function (DEC OSF/1)],
+ [fu_cv_sys_stat_statfs3_osf1],
+ [AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <sys/param.h>
#include <sys/types.h>
#include <sys/mount.h>
@@ -149,28 +154,27 @@ if test $ac_fsusage_space = no; then
fsd.f_fsize = 0;
return statfs (".", &fsd, sizeof (struct statfs)) != 0;
}]])],
- [fu_cv_sys_stat_statfs3_osf1=yes],
- [fu_cv_sys_stat_statfs3_osf1=no],
- [fu_cv_sys_stat_statfs3_osf1=no])])
- AC_MSG_RESULT([$fu_cv_sys_stat_statfs3_osf1])
- if test $fu_cv_sys_stat_statfs3_osf1 = yes; then
- ac_fsusage_space=yes
- AC_DEFINE([STAT_STATFS3_OSF1], [1],
- [ Define if statfs takes 3 args. (DEC Alpha running OSF/1)])
+ [fu_cv_sys_stat_statfs3_osf1=yes],
+ [fu_cv_sys_stat_statfs3_osf1=no],
+ [fu_cv_sys_stat_statfs3_osf1=no])
+ ])
+ if test $fu_cv_sys_stat_statfs3_osf1 = yes; then
+ ac_fsusage_space=yes
+ AC_DEFINE([STAT_STATFS3_OSF1], [1],
+ [Define if statfs takes 3 args. (DEC Alpha running OSF/1)])
+ fi
fi
-fi
-if test $ac_fsusage_space = no; then
- # glibc/Linux, Mac OS X, FreeBSD < 5.0, NetBSD < 3.0, OpenBSD < 4.4.
- # (glibc/{Hurd,kFreeBSD}, FreeBSD >= 5.0, NetBSD >= 3.0,
- # OpenBSD >= 4.4, AIX, HP-UX, OSF/1, Cygwin already handled above.)
- # (On IRIX you need to include <sys/statfs.h>, not only <sys/mount.h> and
- # <sys/vfs.h>.)
- # (On Solaris, statfs has 4 arguments.)
- AC_MSG_CHECKING([for two-argument statfs with statfs.f_bsize dnl
-member (AIX, 4.3BSD)])
- AC_CACHE_VAL([fu_cv_sys_stat_statfs2_bsize],
- [AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ if test $ac_fsusage_space = no; then
+ # glibc/Linux, Mac OS X, FreeBSD < 5.0, NetBSD < 3.0, OpenBSD < 4.4.
+ # (glibc/{Hurd,kFreeBSD}, FreeBSD >= 5.0, NetBSD >= 3.0,
+ # OpenBSD >= 4.4, AIX, HP-UX, OSF/1, Cygwin already handled above.)
+ # (On IRIX you need to include <sys/statfs.h>, not only <sys/mount.h> and
+ # <sys/vfs.h>.)
+ # (On Solaris, statfs has 4 arguments.)
+ AC_CACHE_CHECK([for two-argument statfs with statfs.f_bsize member (AIX, 4.3BSD)],
+ [fu_cv_sys_stat_statfs2_bsize],
+ [AC_RUN_IFELSE([AC_LANG_SOURCE([[
#ifdef HAVE_SYS_PARAM_H
#include <sys/param.h>
#endif
@@ -183,57 +187,56 @@ member (AIX, 4.3BSD)])
int
main ()
{
- struct statfs fsd;
- fsd.f_bsize = 0;
- return statfs (".", &fsd) != 0;
+ struct statfs fsd;
+ fsd.f_bsize = 0;
+ return statfs (".", &fsd) != 0;
}]])],
- [fu_cv_sys_stat_statfs2_bsize=yes],
- [fu_cv_sys_stat_statfs2_bsize=no],
- [fu_cv_sys_stat_statfs2_bsize=no])])
- AC_MSG_RESULT([$fu_cv_sys_stat_statfs2_bsize])
- if test $fu_cv_sys_stat_statfs2_bsize = yes; then
- ac_fsusage_space=yes
- AC_DEFINE([STAT_STATFS2_BSIZE], [1],
-[ Define if statfs takes 2 args and struct statfs has a field named f_bsize.
- (4.3BSD, SunOS 4, HP-UX, AIX PS/2)])
+ [fu_cv_sys_stat_statfs2_bsize=yes],
+ [fu_cv_sys_stat_statfs2_bsize=no],
+ [fu_cv_sys_stat_statfs2_bsize=no])
+ ])
+ if test $fu_cv_sys_stat_statfs2_bsize = yes; then
+ ac_fsusage_space=yes
+ AC_DEFINE([STAT_STATFS2_BSIZE], [1],
+ [Define if statfs takes 2 args and struct statfs has a field named f_bsize.
+ (4.3BSD, SunOS 4, HP-UX, AIX PS/2)])
+ fi
fi
-fi
-if test $ac_fsusage_space = no; then
- # SVR3
- # (Solaris already handled above.)
- AC_MSG_CHECKING([for four-argument statfs (AIX-3.2.5, SVR3)])
- AC_CACHE_VAL([fu_cv_sys_stat_statfs4],
- [AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ if test $ac_fsusage_space = no; then
+ # SVR3
+ # (Solaris already handled above.)
+ AC_CACHE_CHECK([for four-argument statfs (AIX-3.2.5, SVR3)],
+ [fu_cv_sys_stat_statfs4],
+ [AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <sys/types.h>
#include <sys/statfs.h>
int
main ()
{
- struct statfs fsd;
- return statfs (".", &fsd, sizeof fsd, 0) != 0;
+ struct statfs fsd;
+ return statfs (".", &fsd, sizeof fsd, 0) != 0;
}]])],
- [fu_cv_sys_stat_statfs4=yes],
- [fu_cv_sys_stat_statfs4=no],
- [fu_cv_sys_stat_statfs4=no])])
- AC_MSG_RESULT([$fu_cv_sys_stat_statfs4])
- if test $fu_cv_sys_stat_statfs4 = yes; then
- ac_fsusage_space=yes
- AC_DEFINE([STAT_STATFS4], [1],
- [ Define if statfs takes 4 args. (SVR3, Dynix, old Irix, old AIX, Dolphin)])
+ [fu_cv_sys_stat_statfs4=yes],
+ [fu_cv_sys_stat_statfs4=no],
+ [fu_cv_sys_stat_statfs4=no])
+ ])
+ if test $fu_cv_sys_stat_statfs4 = yes; then
+ ac_fsusage_space=yes
+ AC_DEFINE([STAT_STATFS4], [1],
+ [Define if statfs takes 4 args. (SVR3, Dynix, old Irix, old AIX, Dolphin)])
+ fi
fi
-fi
-if test $ac_fsusage_space = no; then
- # 4.4BSD and older NetBSD
- # (OSF/1 already handled above.)
- # (On AIX, you need to include <sys/statfs.h>, not only <sys/mount.h>.)
- # (On Solaris, statfs has 4 arguments and 'struct statfs' is not declared in
- # <sys/mount.h>.)
- AC_MSG_CHECKING([for two-argument statfs with statfs.f_fsize dnl
-member (4.4BSD and NetBSD)])
- AC_CACHE_VAL([fu_cv_sys_stat_statfs2_fsize],
- [AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ if test $ac_fsusage_space = no; then
+ # 4.4BSD and older NetBSD
+ # (OSF/1 already handled above.)
+ # (On AIX, you need to include <sys/statfs.h>, not only <sys/mount.h>.)
+ # (On Solaris, statfs has 4 arguments and 'struct statfs' is not declared in
+ # <sys/mount.h>.)
+ AC_CACHE_CHECK([for two-argument statfs with statfs.f_fsize member (4.4BSD and NetBSD)],
+ [fu_cv_sys_stat_statfs2_fsize],
+ [AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <sys/types.h>
#ifdef HAVE_SYS_PARAM_H
#include <sys/param.h>
@@ -244,27 +247,27 @@ member (4.4BSD and NetBSD)])
int
main ()
{
- struct statfs fsd;
- fsd.f_fsize = 0;
- return statfs (".", &fsd) != 0;
+ struct statfs fsd;
+ fsd.f_fsize = 0;
+ return statfs (".", &fsd) != 0;
}]])],
- [fu_cv_sys_stat_statfs2_fsize=yes],
- [fu_cv_sys_stat_statfs2_fsize=no],
- [fu_cv_sys_stat_statfs2_fsize=no])])
- AC_MSG_RESULT([$fu_cv_sys_stat_statfs2_fsize])
- if test $fu_cv_sys_stat_statfs2_fsize = yes; then
- ac_fsusage_space=yes
- AC_DEFINE([STAT_STATFS2_FSIZE], [1],
-[ Define if statfs takes 2 args and struct statfs has a field named f_fsize.
- (4.4BSD, NetBSD)])
+ [fu_cv_sys_stat_statfs2_fsize=yes],
+ [fu_cv_sys_stat_statfs2_fsize=no],
+ [fu_cv_sys_stat_statfs2_fsize=no])
+ ])
+ if test $fu_cv_sys_stat_statfs2_fsize = yes; then
+ ac_fsusage_space=yes
+ AC_DEFINE([STAT_STATFS2_FSIZE], [1],
+ [Define if statfs takes 2 args and struct statfs has a field named f_fsize.
+ (4.4BSD, NetBSD)])
+ fi
fi
-fi
-if test $ac_fsusage_space = no; then
- # Ultrix
- AC_MSG_CHECKING([for two-argument statfs with struct fs_data (Ultrix)])
- AC_CACHE_VAL([fu_cv_sys_stat_fs_data],
- [AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ if test $ac_fsusage_space = no; then
+ # Ultrix
+ AC_CACHE_CHECK([for two-argument statfs with struct fs_data (Ultrix)],
+ [fu_cv_sys_stat_fs_data],
+ [AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <sys/types.h>
#ifdef HAVE_SYS_PARAM_H
#include <sys/param.h>
@@ -278,24 +281,24 @@ if test $ac_fsusage_space = no; then
int
main ()
{
- struct fs_data fsd;
- /* Ultrix's statfs returns 1 for success,
- 0 for not mounted, -1 for failure. */
- return statfs (".", &fsd) != 1;
+ struct fs_data fsd;
+ /* Ultrix's statfs returns 1 for success,
+ 0 for not mounted, -1 for failure. */
+ return statfs (".", &fsd) != 1;
}]])],
- [fu_cv_sys_stat_fs_data=yes],
- [fu_cv_sys_stat_fs_data=no],
- [fu_cv_sys_stat_fs_data=no])])
- AC_MSG_RESULT([$fu_cv_sys_stat_fs_data])
- if test $fu_cv_sys_stat_fs_data = yes; then
- ac_fsusage_space=yes
- AC_DEFINE([STAT_STATFS2_FS_DATA], [1],
-[ Define if statfs takes 2 args and the second argument has
- type struct fs_data. (Ultrix)])
+ [fu_cv_sys_stat_fs_data=yes],
+ [fu_cv_sys_stat_fs_data=no],
+ [fu_cv_sys_stat_fs_data=no])
+ ])
+ if test $fu_cv_sys_stat_fs_data = yes; then
+ ac_fsusage_space=yes
+ AC_DEFINE([STAT_STATFS2_FS_DATA], [1],
+ [Define if statfs takes 2 args and the second argument has
+ type struct fs_data. (Ultrix)])
+ fi
fi
-fi
-AS_IF([test $ac_fsusage_space = yes], [$1], [$2])
+ AS_IF([test $ac_fsusage_space = yes], [$1], [$2])
])
@@ -305,18 +308,22 @@ AS_IF([test $ac_fsusage_space = yes], [$1], [$2])
# enable the work-around code in fsusage.c.
AC_DEFUN([gl_STATFS_TRUNCATES],
[
- AC_MSG_CHECKING([for statfs that truncates block counts])
- AC_CACHE_VAL([fu_cv_sys_truncating_statfs],
- [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ AC_CACHE_CHECK([for statfs that truncates block counts],
+ [fu_cv_sys_truncating_statfs],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[
#if !defined(sun) && !defined(__sun)
choke -- this is a workaround for a Sun-specific problem
#endif
#include <sys/types.h>
-#include <sys/vfs.h>]],
- [[struct statfs t; long c = *(t.f_spare);
- if (c) return 0;]])],
- [fu_cv_sys_truncating_statfs=yes],
- [fu_cv_sys_truncating_statfs=no])])
+#include <sys/vfs.h>
+ ]],
+ [[struct statfs t; long c = *(t.f_spare);
+ if (c) return 0;
+ ]])],
+ [fu_cv_sys_truncating_statfs=yes],
+ [fu_cv_sys_truncating_statfs=no])
+ ])
if test $fu_cv_sys_truncating_statfs = yes; then
AC_DEFINE([STATFS_TRUNCATES_BLOCK_COUNTS], [1],
[Define if the block counts reported by statfs may be truncated to 2GB
@@ -324,7 +331,6 @@ choke -- this is a workaround for a Sun-specific problem
(SunOS 4.1.2, 4.1.3, and 4.1.3_U1 are reported to have this problem.
SunOS 4.1.1 seems not to be affected.)])
fi
- AC_MSG_RESULT([$fu_cv_sys_truncating_statfs])
])
diff --git a/m4/ls-mntd-fs.m4 b/m4/ls-mntd-fs.m4
index 6e8d30889a..6a03fe3a4a 100644
--- a/m4/ls-mntd-fs.m4
+++ b/m4/ls-mntd-fs.m4
@@ -1,4 +1,4 @@
-# serial 33
+# serial 34
# How to list mounted file systems.
# Copyright (C) 1998-2004, 2006, 2009-2018 Free Software Foundation, Inc.
@@ -17,31 +17,33 @@ dnl
# through Autoconf 2.59. We can remove this once we assume Autoconf 2.60
# or later.
AC_DEFUN([AC_FUNC_GETMNTENT],
-[# getmntent is in the standard C library on UNICOS, in -lsun on Irix 4,
-# -lseq on Dynix/PTX, -lgen on Unixware.
-AC_SEARCH_LIBS([getmntent], [sun seq gen])
-AC_CHECK_FUNCS([getmntent])
+[
+ # getmntent is in the standard C library on UNICOS, in -lsun on Irix 4,
+ # -lseq on Dynix/PTX, -lgen on Unixware.
+ AC_SEARCH_LIBS([getmntent], [sun seq gen])
+ AC_CHECK_FUNCS([getmntent])
])
# gl_LIST_MOUNTED_FILE_SYSTEMS([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
AC_DEFUN([gl_LIST_MOUNTED_FILE_SYSTEMS],
- [
-AC_REQUIRE([AC_CANONICAL_HOST])
-AC_CHECK_FUNCS([listmntent getmntinfo])
-AC_CHECK_HEADERS_ONCE([sys/param.h sys/statvfs.h])
+[
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ AC_CHECK_FUNCS([listmntent getmntinfo])
+ AC_CHECK_HEADERS_ONCE([sys/param.h sys/statvfs.h])
-# We must include grp.h before ucred.h on OSF V4.0, since ucred.h uses
-# NGROUPS (as the array dimension for a struct member) without a definition.
-AC_CHECK_HEADERS([sys/ucred.h], [], [], [#include <grp.h>])
+ # We must include grp.h before ucred.h on OSF V4.0, since ucred.h uses
+ # NGROUPS (as the array dimension for a struct member) without a definition.
+ AC_CHECK_HEADERS([sys/ucred.h], [], [], [#include <grp.h>])
-AC_CHECK_HEADERS([sys/mount.h], [], [],
- [AC_INCLUDES_DEFAULT
- [#if HAVE_SYS_PARAM_H
- #include <sys/param.h>
- #endif]])
+ AC_CHECK_HEADERS([sys/mount.h], [], [],
+ [AC_INCLUDES_DEFAULT
+ [#if HAVE_SYS_PARAM_H
+ #include <sys/param.h>
+ #endif
+ ]])
-AC_CHECK_HEADERS([mntent.h sys/fs_types.h])
- getfsstat_includes="\
+ AC_CHECK_HEADERS([mntent.h sys/fs_types.h])
+ getfsstat_includes="\
$ac_includes_default
#if HAVE_SYS_PARAM_H
# include <sys/param.h> /* needed by powerpc-apple-darwin1.3.7 */
@@ -57,74 +59,72 @@ $ac_includes_default
# include <sys/fs_types.h> /* needed by powerpc-apple-darwin1.3.7 */
#endif
"
-AC_CHECK_MEMBERS([struct fsstat.f_fstypename],,,[$getfsstat_includes])
+ AC_CHECK_MEMBERS([struct fsstat.f_fstypename],,,[$getfsstat_includes])
-# Determine how to get the list of mounted file systems.
-ac_list_mounted_fs=
+ # Determine how to get the list of mounted file systems.
+ ac_list_mounted_fs=
-# If the getmntent function is available but not in the standard library,
-# make sure LIBS contains the appropriate -l option.
-AC_FUNC_GETMNTENT
+ # If the getmntent function is available but not in the standard library,
+ # make sure LIBS contains the appropriate -l option.
+ AC_FUNC_GETMNTENT
-# This test must precede the ones for getmntent because Unicos-9 is
-# reported to have the getmntent function, but its support is incompatible
-# with other getmntent implementations.
+ # This test must precede the ones for getmntent because Unicos-9 is
+ # reported to have the getmntent function, but its support is incompatible
+ # with other getmntent implementations.
-# NOTE: Normally, I wouldn't use a check for system type as I've done for
-# 'CRAY' below since that goes against the whole autoconf philosophy. But
-# I think there is too great a chance that some non-Cray system has a
-# function named listmntent to risk the false positive.
+ # NOTE: Normally, I wouldn't use a check for system type as I've done for
+ # 'CRAY' below since that goes against the whole autoconf philosophy. But
+ # I think there is too great a chance that some non-Cray system has a
+ # function named listmntent to risk the false positive.
-if test -z "$ac_list_mounted_fs"; then
- # (obsolete) Cray UNICOS 9
- AC_MSG_CHECKING([for listmntent of Cray/Unicos-9])
- AC_CACHE_VAL([fu_cv_sys_mounted_cray_listmntent],
- [fu_cv_sys_mounted_cray_listmntent=no
- AC_EGREP_CPP([yes],
- [#ifdef _CRAY
+ if test -z "$ac_list_mounted_fs"; then
+ # (obsolete) Cray UNICOS 9
+ AC_CACHE_CHECK([for listmntent of Cray/Unicos-9],
+ [fu_cv_sys_mounted_cray_listmntent],
+ [fu_cv_sys_mounted_cray_listmntent=no
+ AC_EGREP_CPP([yes],
+ [#ifdef _CRAY
yes
#endif
- ], [test $ac_cv_func_listmntent = yes \
- && fu_cv_sys_mounted_cray_listmntent=yes]
- )
- ]
- )
- AC_MSG_RESULT([$fu_cv_sys_mounted_cray_listmntent])
- if test $fu_cv_sys_mounted_cray_listmntent = yes; then
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_LISTMNTENT], [1],
- [Define if there is a function named listmntent that can be used to
- list all mounted file systems. (UNICOS)])
+ ], [test $ac_cv_func_listmntent = yes \
+ && fu_cv_sys_mounted_cray_listmntent=yes]
+ )
+ ])
+ if test $fu_cv_sys_mounted_cray_listmntent = yes; then
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_LISTMNTENT], [1],
+ [Define if there is a function named listmntent that can be used to
+ list all mounted file systems. (UNICOS)])
+ fi
fi
-fi
-if test -z "$ac_list_mounted_fs"; then
- # AIX.
- AC_MSG_CHECKING([for mntctl function and struct vmount])
- AC_CACHE_VAL([fu_cv_sys_mounted_vmount],
- [AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <fshelp.h>]])],
- [fu_cv_sys_mounted_vmount=yes],
- [fu_cv_sys_mounted_vmount=no])])
- AC_MSG_RESULT([$fu_cv_sys_mounted_vmount])
- if test $fu_cv_sys_mounted_vmount = yes; then
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_VMOUNT], [1],
+ if test -z "$ac_list_mounted_fs"; then
+ # AIX.
+ AC_CACHE_CHECK([for mntctl function and struct vmount],
+ [fu_cv_sys_mounted_vmount],
+ [AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <fshelp.h>]])],
+ [fu_cv_sys_mounted_vmount=yes],
+ [fu_cv_sys_mounted_vmount=no])])
+ if test $fu_cv_sys_mounted_vmount = yes; then
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_VMOUNT], [1],
[Define if there is a function named mntctl that can be used to read
the list of mounted file systems, and there is a system header file
that declares 'struct vmount'. (AIX)])
+ fi
fi
-fi
-if test $ac_cv_func_getmntent = yes; then
+ if test $ac_cv_func_getmntent = yes; then
- # This system has the getmntent function.
- # Determine whether it's the one-argument variant or the two-argument one.
+ # This system has the getmntent function.
+ # Determine whether it's the one-argument variant or the two-argument one.
- if test -z "$ac_list_mounted_fs"; then
- # glibc, HP-UX, IRIX, Cygwin, Android, also (obsolete) 4.3BSD, SunOS, Dynix.
- AC_MSG_CHECKING([for one-argument getmntent function])
- AC_CACHE_VAL([fu_cv_sys_mounted_getmntent1],
- [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ if test -z "$ac_list_mounted_fs"; then
+ # glibc, HP-UX, IRIX, Cygwin, Android, also (obsolete) 4.3BSD, SunOS, Dynix.
+ AC_CACHE_CHECK([for one-argument getmntent function],
+ [fu_cv_sys_mounted_getmntent1],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[
/* SunOS 4.1.x /usr/include/mntent.h needs this for FILE */
#include <stdio.h>
@@ -141,105 +141,108 @@ if test $ac_cv_func_getmntent = yes; then
# endif
#endif
]],
- [[ struct mntent *mnt = 0; char *table = MOUNTED;
- if (sizeof mnt && sizeof table) return 0;]])],
- [fu_cv_sys_mounted_getmntent1=yes],
- [fu_cv_sys_mounted_getmntent1=no])])
- AC_MSG_RESULT([$fu_cv_sys_mounted_getmntent1])
- if test $fu_cv_sys_mounted_getmntent1 = yes; then
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_GETMNTENT1], [1],
- [Define if there is a function named getmntent for reading the list
- of mounted file systems, and that function takes a single argument.
- (4.3BSD, SunOS, HP-UX, Dynix, Irix)])
- AC_CHECK_FUNCS([hasmntopt])
+ [[struct mntent *mnt = 0; char *table = MOUNTED;
+ if (sizeof mnt && sizeof table) return 0;
+ ]])],
+ [fu_cv_sys_mounted_getmntent1=yes],
+ [fu_cv_sys_mounted_getmntent1=no])
+ ])
+ if test $fu_cv_sys_mounted_getmntent1 = yes; then
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_GETMNTENT1], [1],
+ [Define if there is a function named getmntent for reading the list
+ of mounted file systems, and that function takes a single argument.
+ (4.3BSD, SunOS, HP-UX, Dynix, Irix)])
+ AC_CHECK_FUNCS([hasmntopt])
+ fi
fi
- fi
- if test -z "$ac_list_mounted_fs"; then
- # Solaris, also (obsolete) SVR4.
- AC_MSG_CHECKING([for two-argument getmntent function])
- AC_CACHE_VAL([fu_cv_sys_mounted_getmntent2],
- [AC_EGREP_HEADER([getmntent], [sys/mnttab.h],
- fu_cv_sys_mounted_getmntent2=yes,
- fu_cv_sys_mounted_getmntent2=no)])
- AC_MSG_RESULT([$fu_cv_sys_mounted_getmntent2])
- if test $fu_cv_sys_mounted_getmntent2 = yes; then
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_GETMNTENT2], [1],
- [Define if there is a function named getmntent for reading the list of
- mounted file systems, and that function takes two arguments. (SVR4)])
- AC_CHECK_FUNCS([hasmntopt])
+ if test -z "$ac_list_mounted_fs"; then
+ # Solaris, also (obsolete) SVR4.
+ AC_CACHE_CHECK([for two-argument getmntent function],
+ [fu_cv_sys_mounted_getmntent2],
+ [AC_EGREP_HEADER([getmntent], [sys/mnttab.h],
+ [fu_cv_sys_mounted_getmntent2=yes],
+ [fu_cv_sys_mounted_getmntent2=no])
+ ])
+ if test $fu_cv_sys_mounted_getmntent2 = yes; then
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_GETMNTENT2], [1],
+ [Define if there is a function named getmntent for reading the list of
+ mounted file systems, and that function takes two arguments. (SVR4)])
+ AC_CHECK_FUNCS([hasmntopt])
+ fi
fi
- fi
-fi
+ fi
-if test -z "$ac_list_mounted_fs"; then
- # OSF/1, also (obsolete) Apple Darwin 1.3.
- # powerpc-apple-darwin1.3.7 needs sys/param.h sys/ucred.h sys/fs_types.h
+ if test -z "$ac_list_mounted_fs"; then
+ # OSF/1, also (obsolete) Apple Darwin 1.3.
+ # powerpc-apple-darwin1.3.7 needs sys/param.h sys/ucred.h sys/fs_types.h
- AC_MSG_CHECKING([for getfsstat function])
- AC_CACHE_VAL([fu_cv_sys_mounted_getfsstat],
- [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+ AC_CACHE_CHECK([for getfsstat function],
+ [fu_cv_sys_mounted_getfsstat],
+ [AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[
#include <sys/types.h>
#if HAVE_STRUCT_FSSTAT_F_FSTYPENAME
# define FS_TYPE(Ent) ((Ent).f_fstypename)
#else
# define FS_TYPE(Ent) mnt_names[(Ent).f_type]
#endif
-$getfsstat_includes]]
-,
- [[struct statfs *stats;
- int numsys = getfsstat ((struct statfs *)0, 0L, MNT_WAIT);
- char *t = FS_TYPE (*stats); ]])],
- [fu_cv_sys_mounted_getfsstat=yes],
- [fu_cv_sys_mounted_getfsstat=no])])
- AC_MSG_RESULT([$fu_cv_sys_mounted_getfsstat])
- if test $fu_cv_sys_mounted_getfsstat = yes; then
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_GETFSSTAT], [1],
- [Define if there is a function named getfsstat for reading the
- list of mounted file systems. (DEC Alpha running OSF/1)])
+$getfsstat_includes
+ ]],
+ [[struct statfs *stats;
+ int numsys = getfsstat ((struct statfs *)0, 0L, MNT_WAIT);
+ char *t = FS_TYPE (*stats);
+ ]])],
+ [fu_cv_sys_mounted_getfsstat=yes],
+ [fu_cv_sys_mounted_getfsstat=no])
+ ])
+ if test $fu_cv_sys_mounted_getfsstat = yes; then
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_GETFSSTAT], [1],
+ [Define if there is a function named getfsstat for reading the
+ list of mounted file systems. (DEC Alpha running OSF/1)])
+ fi
fi
-fi
-if test -z "$ac_list_mounted_fs"; then
- # (obsolete) SVR3
- AC_MSG_CHECKING([for FIXME existence of three headers])
- AC_CACHE_VAL([fu_cv_sys_mounted_fread_fstyp],
- [AC_PREPROC_IFELSE([AC_LANG_SOURCE([[
+ if test -z "$ac_list_mounted_fs"; then
+ # (obsolete) SVR3
+ AC_CACHE_CHECK([for FIXME existence of three headers],
+ [fu_cv_sys_mounted_fread_fstyp],
+ [AC_PREPROC_IFELSE([AC_LANG_SOURCE([[
#include <sys/statfs.h>
#include <sys/fstyp.h>
-#include <mnttab.h>]])],
- [fu_cv_sys_mounted_fread_fstyp=yes],
- [fu_cv_sys_mounted_fread_fstyp=no])])
- AC_MSG_RESULT([$fu_cv_sys_mounted_fread_fstyp])
- if test $fu_cv_sys_mounted_fread_fstyp = yes; then
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_FREAD_FSTYP], [1],
- [Define if (like SVR2) there is no specific function for reading the
- list of mounted file systems, and your system has these header files:
- <sys/fstyp.h> and <sys/statfs.h>. (SVR3)])
+#include <mnttab.h>
+]])],
+ [fu_cv_sys_mounted_fread_fstyp=yes],
+ [fu_cv_sys_mounted_fread_fstyp=no])
+ ])
+ if test $fu_cv_sys_mounted_fread_fstyp = yes; then
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_FREAD_FSTYP], [1],
+ [Define if (like SVR2) there is no specific function for reading the
+ list of mounted file systems, and your system has these header files:
+ <sys/fstyp.h> and <sys/statfs.h>. (SVR3)])
+ fi
fi
-fi
-if test -z "$ac_list_mounted_fs"; then
- # Mac OS X, FreeBSD, NetBSD, OpenBSD, also (obsolete) 4.4BSD.
- # OSF/1 also has getmntinfo but is already handled above.
- AC_MSG_CHECKING([for getmntinfo function])
- AC_CACHE_VAL([fu_cv_sys_mounted_getmntinfo],
- [
- test "$ac_cv_func_getmntinfo" = yes \
+ if test -z "$ac_list_mounted_fs"; then
+ # Mac OS X, FreeBSD, NetBSD, OpenBSD, also (obsolete) 4.4BSD.
+ # OSF/1 also has getmntinfo but is already handled above.
+ AC_CACHE_CHECK([for getmntinfo function],
+ [fu_cv_sys_mounted_getmntinfo],
+ [
+ test "$ac_cv_func_getmntinfo" = yes \
&& fu_cv_sys_mounted_getmntinfo=yes \
|| fu_cv_sys_mounted_getmntinfo=no
- ])
- AC_MSG_RESULT([$fu_cv_sys_mounted_getmntinfo])
- if test $fu_cv_sys_mounted_getmntinfo = yes; then
- AC_MSG_CHECKING([whether getmntinfo returns statvfs structures])
- AC_CACHE_VAL([fu_cv_sys_mounted_getmntinfo2],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ ])
+ if test $fu_cv_sys_mounted_getmntinfo = yes; then
+ AC_CACHE_CHECK([whether getmntinfo returns statvfs structures],
+ [fu_cv_sys_mounted_getmntinfo2],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[
#if HAVE_SYS_PARAM_H
# include <sys/param.h>
#endif
@@ -255,108 +258,108 @@ extern
"C"
#endif
int getmntinfo (struct statfs **, int);
- ]], [])],
- [fu_cv_sys_mounted_getmntinfo2=no],
- [fu_cv_sys_mounted_getmntinfo2=yes])
- ])
- AC_MSG_RESULT([$fu_cv_sys_mounted_getmntinfo2])
- if test $fu_cv_sys_mounted_getmntinfo2 = no; then
- # Mac OS X, FreeBSD, OpenBSD, also (obsolete) 4.4BSD.
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_GETMNTINFO], [1],
- [Define if there is a function named getmntinfo for reading the
- list of mounted file systems and it returns an array of
- 'struct statfs'. (4.4BSD, Darwin)])
- else
- # NetBSD.
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_GETMNTINFO2], [1],
- [Define if there is a function named getmntinfo for reading the
- list of mounted file systems and it returns an array of
- 'struct statvfs'. (NetBSD 3.0)])
+ ]], [])],
+ [fu_cv_sys_mounted_getmntinfo2=no],
+ [fu_cv_sys_mounted_getmntinfo2=yes])
+ ])
+ if test $fu_cv_sys_mounted_getmntinfo2 = no; then
+ # Mac OS X, FreeBSD, OpenBSD, also (obsolete) 4.4BSD.
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_GETMNTINFO], [1],
+ [Define if there is a function named getmntinfo for reading the
+ list of mounted file systems and it returns an array of
+ 'struct statfs'. (4.4BSD, Darwin)])
+ else
+ # NetBSD.
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_GETMNTINFO2], [1],
+ [Define if there is a function named getmntinfo for reading the
+ list of mounted file systems and it returns an array of
+ 'struct statvfs'. (NetBSD 3.0)])
+ fi
fi
fi
-fi
-if test -z "$ac_list_mounted_fs"; then
- # (obsolete) Ultrix.
- AC_MSG_CHECKING([for getmnt function])
- AC_CACHE_VAL([fu_cv_sys_mounted_getmnt],
- [AC_PREPROC_IFELSE([AC_LANG_SOURCE([[
+ if test -z "$ac_list_mounted_fs"; then
+ # (obsolete) Ultrix.
+ AC_CACHE_CHECK([for getmnt function],
+ [fu_cv_sys_mounted_getmnt],
+ [AC_PREPROC_IFELSE([AC_LANG_SOURCE([[
#include <sys/fs_types.h>
#include <sys/mount.h>]])],
- [fu_cv_sys_mounted_getmnt=yes],
- [fu_cv_sys_mounted_getmnt=no])])
- AC_MSG_RESULT([$fu_cv_sys_mounted_getmnt])
- if test $fu_cv_sys_mounted_getmnt = yes; then
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_GETMNT], [1],
- [Define if there is a function named getmnt for reading the list of
- mounted file systems. (Ultrix)])
- fi
-fi
-
-if test -z "$ac_list_mounted_fs"; then
- # Haiku, also (obsolete) BeOS.
- AC_CHECK_FUNCS([next_dev fs_stat_dev])
- AC_CHECK_HEADERS([fs_info.h])
- AC_MSG_CHECKING([for BEOS mounted file system support functions])
- if test $ac_cv_header_fs_info_h = yes \
- && test $ac_cv_func_next_dev = yes \
- && test $ac_cv_func_fs_stat_dev = yes; then
- fu_result=yes
- else
- fu_result=no
- fi
- AC_MSG_RESULT([$fu_result])
- if test $fu_result = yes; then
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_FS_STAT_DEV], [1],
- [Define if there are functions named next_dev and fs_stat_dev for
- reading the list of mounted file systems. (BeOS)])
+ [fu_cv_sys_mounted_getmnt=yes],
+ [fu_cv_sys_mounted_getmnt=no])
+ ])
+ if test $fu_cv_sys_mounted_getmnt = yes; then
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_GETMNT], [1],
+ [Define if there is a function named getmnt for reading the list of
+ mounted file systems. (Ultrix)])
+ fi
fi
-fi
-if test -z "$ac_list_mounted_fs"; then
- # (obsolete) SVR2.
- AC_MSG_CHECKING([whether it is possible to resort to fread on /etc/mnttab])
- AC_CACHE_VAL([fu_cv_sys_mounted_fread],
- [AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <mnttab.h>]])],
- [fu_cv_sys_mounted_fread=yes],
- [fu_cv_sys_mounted_fread=no])])
- AC_MSG_RESULT([$fu_cv_sys_mounted_fread])
- if test $fu_cv_sys_mounted_fread = yes; then
- ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_FREAD], [1],
- [Define if there is no specific function for reading the list of
- mounted file systems. fread will be used to read /etc/mnttab.
- (SVR2) ])
+ if test -z "$ac_list_mounted_fs"; then
+ # Haiku, also (obsolete) BeOS.
+ AC_CHECK_FUNCS([next_dev fs_stat_dev])
+ AC_CHECK_HEADERS([fs_info.h])
+ AC_CACHE_CHECK([for BEOS mounted file system support functions],
+ [fu_cv_sys_mounted_fs_stat_dev],
+ [if test $ac_cv_header_fs_info_h = yes \
+ && test $ac_cv_func_next_dev = yes \
+ && test $ac_cv_func_fs_stat_dev = yes; then
+ fu_cv_sys_mounted_fs_stat_dev=yes
+ else
+ fu_cv_sys_mounted_fs_stat_dev=no
+ fi
+ ])
+ if test $fu_cv_sys_mounted_fs_stat_dev = yes; then
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_FS_STAT_DEV], [1],
+ [Define if there are functions named next_dev and fs_stat_dev for
+ reading the list of mounted file systems. (BeOS)])
+ fi
fi
-fi
-if test -z "$ac_list_mounted_fs"; then
- # Interix / BSD alike statvfs
- # the code is really interix specific, so make sure, we're on it.
- case "$host" in
- *-interix*)
- AC_CHECK_FUNCS([statvfs])
- if test $ac_cv_func_statvfs = yes; then
+ if test -z "$ac_list_mounted_fs"; then
+ # (obsolete) SVR2.
+ AC_CACHE_CHECK([whether it is possible to resort to fread on /etc/mnttab],
+ [fu_cv_sys_mounted_fread],
+ [AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <mnttab.h>]])],
+ [fu_cv_sys_mounted_fread=yes],
+ [fu_cv_sys_mounted_fread=no])
+ ])
+ if test $fu_cv_sys_mounted_fread = yes; then
ac_list_mounted_fs=found
- AC_DEFINE([MOUNTED_INTERIX_STATVFS], [1],
- [Define if we are on interix, and ought to use statvfs plus
- some special knowledge on where mounted file systems can be
- found. (Interix)])
+ AC_DEFINE([MOUNTED_FREAD], [1],
+ [Define if there is no specific function for reading the list of
+ mounted file systems. fread will be used to read /etc/mnttab.
+ (SVR2) ])
fi
- ;;
- esac
-fi
+ fi
-if test -z "$ac_list_mounted_fs"; then
- AC_MSG_ERROR([could not determine how to read list of mounted file systems])
- # FIXME -- no need to abort building the whole package
- # Can't build mountlist.c or anything that needs its functions
-fi
+ if test -z "$ac_list_mounted_fs"; then
+ # Interix / BSD alike statvfs
+ # the code is really interix specific, so make sure, we're on it.
+ case "$host" in
+ *-interix*)
+ AC_CHECK_FUNCS([statvfs])
+ if test $ac_cv_func_statvfs = yes; then
+ ac_list_mounted_fs=found
+ AC_DEFINE([MOUNTED_INTERIX_STATVFS], [1],
+ [Define if we are on interix, and ought to use statvfs plus
+ some special knowledge on where mounted file systems can be
+ found. (Interix)])
+ fi
+ ;;
+ esac
+ fi
+
+ if test -z "$ac_list_mounted_fs"; then
+ AC_MSG_ERROR([could not determine how to read list of mounted file systems])
+ # FIXME -- no need to abort building the whole package
+ # Can't build mountlist.c or anything that needs its functions
+ fi
-AS_IF([test $ac_list_mounted_fs = found], [$1], [$2])
+ AS_IF([test $ac_list_mounted_fs = found], [$1], [$2])
- ])
+])
diff --git a/m4/manywarnings-c++.m4 b/m4/manywarnings-c++.m4
index 28d9aa0d48..dea8e1970b 100644
--- a/m4/manywarnings-c++.m4
+++ b/m4/manywarnings-c++.m4
@@ -1,4 +1,4 @@
-# manywarnings-c++.m4 serial 2
+# manywarnings-c++.m4 serial 3
dnl Copyright (C) 2008-2018 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -17,54 +17,53 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC_CXX_IMPL],
dnl Check if -W -Werror -Wno-missing-field-initializers is supported
dnl with the current $CXX $CXXFLAGS $CPPFLAGS.
- AC_MSG_CHECKING([whether -Wno-missing-field-initializers is supported])
- AC_CACHE_VAL([gl_cv_cxx_nomfi_supported], [
- gl_save_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -W -Werror -Wno-missing-field-initializers"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [gl_cv_cxx_nomfi_supported=yes],
- [gl_cv_cxx_nomfi_supported=no])
- CXXFLAGS="$gl_save_CXXFLAGS"])
- AC_MSG_RESULT([$gl_cv_cxx_nomfi_supported])
+ AC_CACHE_CHECK([whether -Wno-missing-field-initializers is supported],
+ [gl_cv_cxx_nomfi_supported],
+ [gl_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS -W -Werror -Wno-missing-field-initializers"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[]], [[]])],
+ [gl_cv_cxx_nomfi_supported=yes],
+ [gl_cv_cxx_nomfi_supported=no])
+ CXXFLAGS="$gl_save_CXXFLAGS"
+ ])
if test "$gl_cv_cxx_nomfi_supported" = yes; then
dnl Now check whether -Wno-missing-field-initializers is needed
dnl for the { 0, } construct.
- AC_MSG_CHECKING([whether -Wno-missing-field-initializers is needed])
- AC_CACHE_VAL([gl_cv_cxx_nomfi_needed], [
- gl_save_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -W -Werror"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[int f (void)
- {
- typedef struct { int a; int b; } s_t;
- s_t s1 = { 0, };
- return s1.b;
- }
- ]],
- [[]])],
- [gl_cv_cxx_nomfi_needed=no],
- [gl_cv_cxx_nomfi_needed=yes])
- CXXFLAGS="$gl_save_CXXFLAGS"
- ])
- AC_MSG_RESULT([$gl_cv_cxx_nomfi_needed])
+ AC_CACHE_CHECK([whether -Wno-missing-field-initializers is needed],
+ [gl_cv_cxx_nomfi_needed],
+ [gl_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS -W -Werror"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[int f (void)
+ {
+ typedef struct { int a; int b; } s_t;
+ s_t s1 = { 0, };
+ return s1.b;
+ }
+ ]],
+ [[]])],
+ [gl_cv_cxx_nomfi_needed=no],
+ [gl_cv_cxx_nomfi_needed=yes])
+ CXXFLAGS="$gl_save_CXXFLAGS"
+ ])
fi
dnl Next, check if -Werror -Wuninitialized is useful with the
dnl user's choice of $CXXFLAGS; some versions of gcc warn that it
dnl has no effect if -O is not also used
- AC_MSG_CHECKING([whether -Wuninitialized is supported])
- AC_CACHE_VAL([gl_cv_cxx_uninitialized_supported], [
- gl_save_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -Werror -Wuninitialized"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [gl_cv_cxx_uninitialized_supported=yes],
- [gl_cv_cxx_uninitialized_supported=no])
- CXXFLAGS="$gl_save_CXXFLAGS"])
- AC_MSG_RESULT([$gl_cv_cxx_uninitialized_supported])
+ AC_CACHE_CHECK([whether -Wuninitialized is supported],
+ [gl_cv_cxx_uninitialized_supported],
+ [gl_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS -Werror -Wuninitialized"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[]], [[]])],
+ [gl_cv_cxx_uninitialized_supported=yes],
+ [gl_cv_cxx_uninitialized_supported=no])
+ CXXFLAGS="$gl_save_CXXFLAGS"
+ ])
fi
diff --git a/m4/manywarnings.m4 b/m4/manywarnings.m4
index 516c587476..d831ed2eb6 100644
--- a/m4/manywarnings.m4
+++ b/m4/manywarnings.m4
@@ -1,4 +1,4 @@
-# manywarnings.m4 serial 16
+# manywarnings.m4 serial 17
dnl Copyright (C) 2008-2018 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -51,54 +51,53 @@ m4_defun([gl_MANYWARN_ALL_GCC(C)],
dnl Check if -W -Werror -Wno-missing-field-initializers is supported
dnl with the current $CC $CFLAGS $CPPFLAGS.
- AC_MSG_CHECKING([whether -Wno-missing-field-initializers is supported])
- AC_CACHE_VAL([gl_cv_cc_nomfi_supported], [
- gl_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -W -Werror -Wno-missing-field-initializers"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [gl_cv_cc_nomfi_supported=yes],
- [gl_cv_cc_nomfi_supported=no])
- CFLAGS="$gl_save_CFLAGS"])
- AC_MSG_RESULT([$gl_cv_cc_nomfi_supported])
+ AC_CACHE_CHECK([whether -Wno-missing-field-initializers is supported],
+ [gl_cv_cc_nomfi_supported],
+ [gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -W -Werror -Wno-missing-field-initializers"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[]], [[]])],
+ [gl_cv_cc_nomfi_supported=yes],
+ [gl_cv_cc_nomfi_supported=no])
+ CFLAGS="$gl_save_CFLAGS"
+ ])
if test "$gl_cv_cc_nomfi_supported" = yes; then
dnl Now check whether -Wno-missing-field-initializers is needed
dnl for the { 0, } construct.
- AC_MSG_CHECKING([whether -Wno-missing-field-initializers is needed])
- AC_CACHE_VAL([gl_cv_cc_nomfi_needed], [
- gl_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -W -Werror"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[int f (void)
- {
- typedef struct { int a; int b; } s_t;
- s_t s1 = { 0, };
- return s1.b;
- }
- ]],
- [[]])],
- [gl_cv_cc_nomfi_needed=no],
- [gl_cv_cc_nomfi_needed=yes])
- CFLAGS="$gl_save_CFLAGS"
- ])
- AC_MSG_RESULT([$gl_cv_cc_nomfi_needed])
+ AC_CACHE_CHECK([whether -Wno-missing-field-initializers is needed],
+ [gl_cv_cc_nomfi_needed],
+ [gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -W -Werror"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[int f (void)
+ {
+ typedef struct { int a; int b; } s_t;
+ s_t s1 = { 0, };
+ return s1.b;
+ }
+ ]],
+ [[]])],
+ [gl_cv_cc_nomfi_needed=no],
+ [gl_cv_cc_nomfi_needed=yes])
+ CFLAGS="$gl_save_CFLAGS"
+ ])
fi
dnl Next, check if -Werror -Wuninitialized is useful with the
dnl user's choice of $CFLAGS; some versions of gcc warn that it
dnl has no effect if -O is not also used
- AC_MSG_CHECKING([whether -Wuninitialized is supported])
- AC_CACHE_VAL([gl_cv_cc_uninitialized_supported], [
- gl_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror -Wuninitialized"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [gl_cv_cc_uninitialized_supported=yes],
- [gl_cv_cc_uninitialized_supported=no])
- CFLAGS="$gl_save_CFLAGS"])
- AC_MSG_RESULT([$gl_cv_cc_uninitialized_supported])
+ AC_CACHE_CHECK([whether -Wuninitialized is supported],
+ [gl_cv_cc_uninitialized_supported],
+ [gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -Werror -Wuninitialized"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[]], [[]])],
+ [gl_cv_cc_uninitialized_supported=yes],
+ [gl_cv_cc_uninitialized_supported=no])
+ CFLAGS="$gl_save_CFLAGS"
+ ])
fi
diff --git a/m4/socklen.m4 b/m4/socklen.m4
index f2d996d0eb..fa79b07b6e 100644
--- a/m4/socklen.m4
+++ b/m4/socklen.m4
@@ -1,4 +1,4 @@
-# socklen.m4 serial 10
+# socklen.m4 serial 11
dnl Copyright (C) 2005-2007, 2009-2018 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -15,8 +15,8 @@ dnl So we have to test to find something that will work.
AC_DEFUN([gl_TYPE_SOCKLEN_T],
[AC_REQUIRE([gl_CHECK_SOCKET_HEADERS])dnl
AC_CHECK_TYPE([socklen_t], ,
- [AC_MSG_CHECKING([for socklen_t equivalent])
- AC_CACHE_VAL([gl_cv_socklen_t_equiv],
+ [AC_CACHE_CHECK([for socklen_t equivalent],
+ [gl_cv_socklen_t_equiv],
[# Systems have either "struct sockaddr *" or
# "void *" as the second argument to getpeername
gl_cv_socklen_t_equiv=
@@ -34,11 +34,10 @@ AC_DEFUN([gl_TYPE_SOCKLEN_T],
done
test "$gl_cv_socklen_t_equiv" != "" && break
done
- ])
- if test "$gl_cv_socklen_t_equiv" = ""; then
- AC_MSG_ERROR([Cannot find a type to use in place of socklen_t])
- fi
- AC_MSG_RESULT([$gl_cv_socklen_t_equiv])
+ if test "$gl_cv_socklen_t_equiv" = ""; then
+ AC_MSG_ERROR([Cannot find a type to use in place of socklen_t])
+ fi
+ ])
AC_DEFINE_UNQUOTED([socklen_t], [$gl_cv_socklen_t_equiv],
[type to use in place of socklen_t if not defined])],
[gl_SOCKET_HEADERS])])
diff --git a/m4/sockpfaf.m4 b/m4/sockpfaf.m4
index e3fe2c45a0..cc47b8b586 100644
--- a/m4/sockpfaf.m4
+++ b/m4/sockpfaf.m4
@@ -1,4 +1,4 @@
-# sockpfaf.m4 serial 8
+# sockpfaf.m4 serial 9
dnl Copyright (C) 2004, 2006, 2009-2018 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -16,8 +16,8 @@ AC_DEFUN([gl_SOCKET_FAMILIES],
AC_REQUIRE([gl_HEADER_SYS_SOCKET])
AC_CHECK_HEADERS_ONCE([netinet/in.h])
- AC_MSG_CHECKING([for IPv4 sockets])
- AC_CACHE_VAL([gl_cv_socket_ipv4],
+ AC_CACHE_CHECK([for IPv4 sockets],
+ [gl_cv_socket_ipv4],
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
@@ -31,13 +31,12 @@ AC_DEFUN([gl_SOCKET_FAMILIES],
[[int x = AF_INET; struct in_addr y; struct sockaddr_in z;
if (&x && &y && &z) return 0;]])],
gl_cv_socket_ipv4=yes, gl_cv_socket_ipv4=no)])
- AC_MSG_RESULT([$gl_cv_socket_ipv4])
if test $gl_cv_socket_ipv4 = yes; then
AC_DEFINE([HAVE_IPV4], [1], [Define to 1 if <sys/socket.h> defines AF_INET.])
fi
- AC_MSG_CHECKING([for IPv6 sockets])
- AC_CACHE_VAL([gl_cv_socket_ipv6],
+ AC_CACHE_CHECK([for IPv6 sockets],
+ [gl_cv_socket_ipv6],
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
@@ -54,7 +53,6 @@ AC_DEFUN([gl_SOCKET_FAMILIES],
[[int x = AF_INET6; struct in6_addr y; struct sockaddr_in6 z;
if (&x && &y && &z) return 0;]])],
gl_cv_socket_ipv6=yes, gl_cv_socket_ipv6=no)])
- AC_MSG_RESULT([$gl_cv_socket_ipv6])
if test $gl_cv_socket_ipv6 = yes; then
AC_DEFINE([HAVE_IPV6], [1], [Define to 1 if <sys/socket.h> defines AF_INET6.])
fi
@@ -65,8 +63,8 @@ AC_DEFUN([gl_SOCKET_FAMILY_UNIX],
AC_REQUIRE([gl_HEADER_SYS_SOCKET])
AC_CHECK_HEADERS_ONCE([sys/un.h])
- AC_MSG_CHECKING([for UNIX domain sockets])
- AC_CACHE_VAL([gl_cv_socket_unix],
+ AC_CACHE_CHECK([for UNIX domain sockets],
+ [gl_cv_socket_unix],
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
@@ -80,7 +78,6 @@ AC_DEFUN([gl_SOCKET_FAMILY_UNIX],
[[int x = AF_UNIX; struct sockaddr_un y;
if (&x && &y) return 0;]])],
gl_cv_socket_unix=yes, gl_cv_socket_unix=no)])
- AC_MSG_RESULT([$gl_cv_socket_unix])
if test $gl_cv_socket_unix = yes; then
AC_DEFINE([HAVE_UNIXSOCKET], [1], [Define to 1 if <sys/socket.h> defines AF_UNIX.])
fi
diff --git a/m4/stdarg.m4 b/m4/stdarg.m4
index d6f0508942..f89d38b3da 100644
--- a/m4/stdarg.m4
+++ b/m4/stdarg.m4
@@ -1,4 +1,4 @@
-# stdarg.m4 serial 6
+# stdarg.m4 serial 7
dnl Copyright (C) 2006, 2008-2018 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -11,19 +11,19 @@ AC_DEFUN([gl_STDARG_H],
[
STDARG_H=''
NEXT_STDARG_H='<stdarg.h>'
- AC_MSG_CHECKING([for va_copy])
- AC_CACHE_VAL([gl_cv_func_va_copy], [
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[#include <stdarg.h>]],
- [[
+ AC_CACHE_CHECK([for va_copy],
+ [gl_cv_func_va_copy],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <stdarg.h>]],
+ [[
#ifndef va_copy
void (*func) (va_list, va_list) = va_copy;
#endif
- ]])],
- [gl_cv_func_va_copy=yes],
- [gl_cv_func_va_copy=no])])
- AC_MSG_RESULT([$gl_cv_func_va_copy])
+ ]])],
+ [gl_cv_func_va_copy=yes],
+ [gl_cv_func_va_copy=no])
+ ])
if test $gl_cv_func_va_copy = no; then
dnl Provide a substitute.
dnl Usually a simple definition in <config.h> is enough. Not so on AIX 5
diff --git a/m4/visibility.m4 b/m4/visibility.m4
index 7e99764754..f53e0d524b 100644
--- a/m4/visibility.m4
+++ b/m4/visibility.m4
@@ -1,4 +1,4 @@
-# visibility.m4 serial 5 (gettext-0.18.2)
+# visibility.m4 serial 6
dnl Copyright (C) 2005, 2008, 2010-2018 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -29,42 +29,42 @@ AC_DEFUN([gl_VISIBILITY],
dnl First, check whether -Werror can be added to the command line, or
dnl whether it leads to an error because of some other option that the
dnl user has put into $CC $CFLAGS $CPPFLAGS.
- AC_MSG_CHECKING([whether the -Werror option is usable])
- AC_CACHE_VAL([gl_cv_cc_vis_werror], [
- gl_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [gl_cv_cc_vis_werror=yes],
- [gl_cv_cc_vis_werror=no])
- CFLAGS="$gl_save_CFLAGS"])
- AC_MSG_RESULT([$gl_cv_cc_vis_werror])
+ AC_CACHE_CHECK([whether the -Werror option is usable],
+ [gl_cv_cc_vis_werror],
+ [gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -Werror"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[]], [[]])],
+ [gl_cv_cc_vis_werror=yes],
+ [gl_cv_cc_vis_werror=no])
+ CFLAGS="$gl_save_CFLAGS"
+ ])
dnl Now check whether visibility declarations are supported.
- AC_MSG_CHECKING([for simple visibility declarations])
- AC_CACHE_VAL([gl_cv_cc_visibility], [
- gl_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -fvisibility=hidden"
- dnl We use the option -Werror and a function dummyfunc, because on some
- dnl platforms (Cygwin 1.7) the use of -fvisibility triggers a warning
- dnl "visibility attribute not supported in this configuration; ignored"
- dnl at the first function definition in every compilation unit, and we
- dnl don't want to use the option in this case.
- if test $gl_cv_cc_vis_werror = yes; then
- CFLAGS="$CFLAGS -Werror"
- fi
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[extern __attribute__((__visibility__("hidden"))) int hiddenvar;
- extern __attribute__((__visibility__("default"))) int exportedvar;
- extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);
- extern __attribute__((__visibility__("default"))) int exportedfunc (void);
- void dummyfunc (void) {}
- ]],
- [[]])],
- [gl_cv_cc_visibility=yes],
- [gl_cv_cc_visibility=no])
- CFLAGS="$gl_save_CFLAGS"])
- AC_MSG_RESULT([$gl_cv_cc_visibility])
+ AC_CACHE_CHECK([for simple visibility declarations],
+ [gl_cv_cc_visibility],
+ [gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -fvisibility=hidden"
+ dnl We use the option -Werror and a function dummyfunc, because on some
+ dnl platforms (Cygwin 1.7) the use of -fvisibility triggers a warning
+ dnl "visibility attribute not supported in this configuration; ignored"
+ dnl at the first function definition in every compilation unit, and we
+ dnl don't want to use the option in this case.
+ if test $gl_cv_cc_vis_werror = yes; then
+ CFLAGS="$CFLAGS -Werror"
+ fi
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[extern __attribute__((__visibility__("hidden"))) int hiddenvar;
+ extern __attribute__((__visibility__("default"))) int exportedvar;
+ extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);
+ extern __attribute__((__visibility__("default"))) int exportedfunc (void);
+ void dummyfunc (void) {}
+ ]],
+ [[]])],
+ [gl_cv_cc_visibility=yes],
+ [gl_cv_cc_visibility=no])
+ CFLAGS="$gl_save_CFLAGS"
+ ])
if test $gl_cv_cc_visibility = yes; then
CFLAG_VISIBILITY="-fvisibility=hidden"
HAVE_VISIBILITY=1