backported configure test for WX_STATVFS_T.

(Adding some braces as newer autoconf version love them, IIRC).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@19081 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Neis
2003-02-02 19:56:39 +00:00
parent b7c2485e31
commit 69cddbaab2
3 changed files with 92 additions and 29 deletions

View File

@@ -3286,20 +3286,17 @@ 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
@@ -3311,12 +3308,73 @@ else
)
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;
struct statvfs 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