So fdatasync is nonexistent on OS X, and the precompiler is told to treat it as just fsync

#ifdef __macos__
src/XrdSys/XrdSysPlatform.hh:#define fdatasync(x) fsync(x)

BUT, the compiler in 10.6 seems to hate the fact that fsync is double-defined. In function 'int fsync(int)': error: redefinition of 'int fsync(int)' error: 'int fsync(int)' previously defined here

To work around it, commented out the lines

(line 161 or so)
extern "C"
int     fdatasync(int fildes)
   static int Init = Xunix.Init(&Init);

   return XrdPosix_Fdatasync(fildes);

and got the build to work again. This looks like it needs to be precompiler-wrapped.

Running off the dev version posted on the web page (20100315-1007)