added configure test for WX_STATVFS_T
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
9cbee2ceee
commit
54ab82b3f9
78
configure.in
78
configure.in
@ -3270,37 +3270,85 @@ AC_CACHE_CHECK(for statfs, wx_cv_func_statfs,
|
||||
)
|
||||
|
||||
if test "$wx_cv_func_statfs" = "yes"; then
|
||||
wx_cv_type_statvfs_t="struct statfs"
|
||||
AC_DEFINE(HAVE_STATFS)
|
||||
else
|
||||
AC_CACHE_CHECK(for statvfs, wx_cv_func_statvfs,
|
||||
AC_TRY_COMPILE(
|
||||
[
|
||||
#include <sys/statvfs.h>
|
||||
#include <stddef.h>
|
||||
#include <sys/statvfs.h>
|
||||
],
|
||||
[
|
||||
long l;
|
||||
struct statvfs fs;
|
||||
statvfs("/", &fs);
|
||||
l = fs.f_bsize;
|
||||
l += fs.f_blocks;
|
||||
l += fs.f_bavail;
|
||||
statvfs("/", NULL);
|
||||
],
|
||||
[
|
||||
wx_cv_func_statvfs=yes
|
||||
],
|
||||
[
|
||||
wx_cv_func_statvfs=no
|
||||
]
|
||||
wx_cv_func_statvfs=yes,
|
||||
wx_cv_func_statvfs=no
|
||||
)
|
||||
)
|
||||
|
||||
if test "$wx_cv_func_statvfs" = "yes"; then
|
||||
AC_DEFINE(HAVE_STATVFS)
|
||||
dnl we also have to check whether we should use statvfs_t (works under
|
||||
dnl Solaris 8, doesn't work under Solaris 7) or "struct statvfs" (vice
|
||||
dnl versa) as the argument for statvfs in 64 bit off_t mode (in 32 bit
|
||||
dnl mode both work fine)
|
||||
dnl
|
||||
dnl for this check C++ compiler has to be used as passing incompatible
|
||||
dnl pointers is just a warning and not an error in C
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
AC_CACHE_CHECK(for statvfs argument type, wx_cv_type_statvfs_t,
|
||||
AC_TRY_COMPILE(
|
||||
[
|
||||
#include <sys/statvfs.h>
|
||||
],
|
||||
[
|
||||
long l;
|
||||
statvfs_t fs;
|
||||
statvfs("/", &fs);
|
||||
l = fs.f_bsize;
|
||||
l += fs.f_blocks;
|
||||
l += fs.f_bavail;
|
||||
],
|
||||
wx_cv_type_statvfs_t=statvfs_t,
|
||||
[
|
||||
AC_TRY_COMPILE(
|
||||
[
|
||||
#include <sys/statvfs.h>
|
||||
],
|
||||
[
|
||||
long l;
|
||||
statvfs_t fs;
|
||||
statvfs("/", &fs);
|
||||
l = fs.f_bsize;
|
||||
l += fs.f_blocks;
|
||||
l += fs.f_bavail;
|
||||
],
|
||||
wx_cv_type_statvfs_t="struct statvfs",
|
||||
wx_cv_type_statvfs_t="unknown"
|
||||
)
|
||||
]
|
||||
)
|
||||
)
|
||||
|
||||
AC_LANG_RESTORE
|
||||
|
||||
if test "$wx_cv_type_statvfs_t" != "unknown"; then
|
||||
AC_DEFINE(HAVE_STATVFS)
|
||||
fi
|
||||
else
|
||||
AC_MSG_WARN([wxGetDiskSpace() function won't work without statfs()])
|
||||
dnl set it for the test below
|
||||
wx_cv_type_statvfs_t="unknown"
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$wx_cv_type_statvfs_t" != "unknown"; then
|
||||
AC_DEFINE_UNQUOTED(WX_STATFS_T, $wx_cv_type_statvfs_t)
|
||||
else
|
||||
AC_MSG_WARN([wxGetDiskSpace() function won't work without statfs()])
|
||||
fi
|
||||
|
||||
dnl check for fcntl() or at least flock() needed by Unix implementation of
|
||||
dnl wxSingleInstanceChecker
|
||||
if test "$wxUSE_SNGLINST_CHECKER" = "yes"; then
|
||||
|
@ -881,6 +881,9 @@
|
||||
/* The type of 3rd argument to getsockname() - usually size_t or int */
|
||||
#undef SOCKLEN_T
|
||||
|
||||
/* The type of statvfs(2) argument */
|
||||
#undef WX_STATFS_T
|
||||
|
||||
/* The signal handler prototype */
|
||||
#undef wxTYPE_SA_HANDLER
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user