Probe for fdatasync()

Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
Blue Swirl 2009-09-20 06:56:26 +00:00
parent cdd0935cbd
commit 5f6b9e8fd5
2 changed files with 17 additions and 1 deletions

16
configure vendored
View file

@ -1625,6 +1625,18 @@ if compile_prog "" "" ; then
need_offsetof=no
fi
##########################################
# check if we have fdatasync
fdatasync=no
cat > $TMPC << EOF
#include <unistd.h>
int main(void) { return fdatasync(0); }
EOF
if compile_prog "" "" ; then
fdatasync=yes
fi
# End of CC checks
# After here, no more $cc or $ld runs
@ -1738,6 +1750,7 @@ echo "Install blobs $blobs"
echo "KVM support $kvm"
echo "fdt support $fdt"
echo "preadv support $preadv"
echo "fdatasync $fdatasync"
if test $sdl_too_old = "yes"; then
echo "-> Your SDL version is too old - please upgrade to have SDL support"
@ -1928,6 +1941,9 @@ fi
if test "$need_offsetof" = "yes" ; then
echo "CONFIG_NEED_OFFSETOF=y" >> $config_host_mak
fi
if test "$fdatasync" = "yes" ; then
echo "CONFIG_FDATASYNC=y" >> $config_host_mak
fi
# XXX: suppress that
if [ "$bsd" = "yes" ] ; then

View file

@ -124,7 +124,7 @@ int qemu_fls(int i)
*/
int qemu_fdatasync(int fd)
{
#ifdef _POSIX_SYNCHRONIZED_IO
#ifdef CONFIG_FDATASYNC
return fdatasync(fd);
#else
return fsync(fd);