m4_define([glib_major_version], [2])
m4_define([glib_minor_version], [29])
-m4_define([glib_micro_version], [9])
+m4_define([glib_micro_version], [12])
m4_define([glib_interface_age], [0])
m4_define([glib_binary_age],
[m4_eval(100 * glib_minor_version + glib_micro_version)])
# Check for some functions
AC_CHECK_FUNCS(lstat strerror strsignal memmove vsnprintf stpcpy strcasecmp strncasecmp poll getcwd vasprintf setenv unsetenv getc_unlocked readlink symlink fdwalk memmem)
-AC_CHECK_FUNCS(chown lchmod lchown fchmod fchown link statvfs statfs utimes getgrgid getpwuid)
+AC_CHECK_FUNCS(chown lchmod lchown fchmod fchown link utimes getgrgid getpwuid)
AC_CHECK_FUNCS(getmntent_r setmntent endmntent hasmntopt getmntinfo)
# Check for high-resolution sleep functions
AC_CHECK_FUNCS(splice)
+# To avoid finding a compatibility unusable statfs, which typically
+# successfully compiles, but warns to use the newer statvfs interface:
+AS_IF([test $ac_cv_header_sys_statvfs_h = yes], [AC_CHECK_FUNCS([statvfs])])
+AS_IF([test $ac_cv_header_sys_statfs_h = yes], [AC_CHECK_FUNCS([statfs])])
+
+AC_MSG_CHECKING([whether to use statfs or statvfs])
+# Some systems have both statfs and statvfs, pick the most "native" for these
+AS_IF([test x$ac_cv_func_statfs = xyes && test x$ac_cv_func_statvfs = yes],
+ [
+ # on solaris and irix, statfs doesn't even have the f_bavail field
+ AS_IF([test $ac_cv_member_struct_statfs_f_bavail = yes],
+ [ac_cv_func_statfs=no],
+ # else, at least on linux, statfs is the actual syscall
+ [ac_cv_func_statvfs=no])
+ ])
+
+AS_IF([test x$ac_cv_func_statfs = xyes],
+ [
+ AC_DEFINE([USE_STATFS], [1], [Define to use statfs()])
+ AC_MSG_RESULT([statfs])
+ ],
+ [test x$ac_cv_func_statvfs = xyes],
+ [
+ AC_DEFINE([USE_STATVFS], [1], [Define to use statvfs()])
+ AC_MSG_RESULT([statvfs])
+ ],
+ [ AC_MSG_RESULT([neither])])
+
AC_CHECK_HEADERS(crt_externs.h)
AC_CHECK_FUNCS(_NSGetEnviron)