1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-26 21:57:41 +03:00

replace: cope with systems that have fdatasync(), but don't have the prototype

this is needed for MacOSX 10.4.1
This commit is contained in:
Andrew Tridgell 2010-10-16 19:53:17 +11:00
parent 1ac19c1ca3
commit ec90b249ec
3 changed files with 7 additions and 1 deletions

View File

@ -115,6 +115,7 @@ AC_CHECK_FUNCS(fdatasync,,[
[libreplace_cv_HAVE_FDATASYNC_IN_LIBRT=yes
AC_DEFINE(HAVE_FDATASYNC, 1, Define to 1 if there is support for fdatasync)])
])
AC_HAVE_DECL(fdatasync, [#include <unistd.h>])
AC_CHECK_FUNCS(clock_gettime,libreplace_cv_have_clock_gettime=yes,[
AC_CHECK_LIB(rt, clock_gettime,
[libreplace_cv_HAVE_CLOCK_GETTIME_IN_LIBRT=yes

View File

@ -756,6 +756,8 @@ char *ufc_crypt(const char *key, const char *salt);
#ifndef HAVE_FDATASYNC
#define fdatasync(fd) fsync(fd)
#elif !defined(HAVE_DECL_FDATASYNC)
int fdatasync(int );
#endif
/* these are used to mark symbols as local to a shared lib, or

View File

@ -173,7 +173,10 @@ def configure(conf):
conf.CHECK_C_PROTOTYPE('dlopen', 'void *dlopen(const char* filename, unsigned int flags)',
define='DLOPEN_TAKES_UNSIGNED_FLAGS', headers='dlfcn.h dl.h')
conf.CHECK_FUNCS_IN('fdatasync', 'rt', checklibc=True)
if conf.CHECK_FUNCS_IN('fdatasync', 'rt', checklibc=True):
# some systems are missing the declaration
conf.CHECK_DECLS('fdatasync')
conf.CHECK_FUNCS_IN('clock_gettime', 'rt', checklibc=True)
# these headers need to be tested as a group on freebsd