From ae8b58f22479781dcc9e82f8df653bba886601ae Mon Sep 17 00:00:00 2001 From: Chris Hanson Date: Sat, 10 Mar 2012 21:09:34 -0800 Subject: [PATCH] Don't use fdatasync on OS X. --- src/microcode/ux.h | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/microcode/ux.h b/src/microcode/ux.h index fe61928e5..6cb2bb212 100644 --- a/src/microcode/ux.h +++ b/src/microcode/ux.h @@ -44,7 +44,7 @@ USA. #endif #ifdef __APPLE__ -# define SYSTEM_VARIANT "MacOSX" +# define SYSTEM_VARIANT "OS X" #endif #ifdef __bsdi__ /* works on bsdi 3.0 */ @@ -781,11 +781,16 @@ extern int UX_terminal_set_state (int, Ttty_state *); # define EMULATE_TCSETPGRP #endif -/* In Darwin, setsid doesn't work in vforked processes, - so force the use of fork instead. */ #ifdef __APPLE__ + /* In Darwin, setsid doesn't work in vforked processes, so force + the use of fork instead. */ # undef UX_vfork # define UX_vfork fork + /* Also, although OS X binds the symbol fdatasync in the C library, + there's no header file or man page, and the system call appears + to have a different argument structure. */ +# undef HAVE_FDATASYNC +# undef UX_fdatasync #endif #ifdef HAVE_SIGACTION -- 2.25.1