GNOME Bugzilla – Bug 563401
gconfd.c uses fsyncdata, darwin lacks
Last modified: 2008-12-08 15:43:04 UTC
/usr/bin/glibtool --tag=CC --mode=link gcc -arch ppc -g -Wall -Wno-long-double -pipe -no-cpp-precomp -Dsocklen_t=int -DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_3 -arch ppc -L/opt/local/lib -L/usr/X11R6/lib -o gconfd-2 gconf-database.o gconfd.o -lintl -L/opt/local/lib -lgmodule-2.0 -lORBit-2 -lgthread-2.0 -ldbus-glib-1 -ldbus-1 -lgobject-2.0 -lglib-2.0 -lintl libgconf-2.la gcc -arch ppc -g -Wall -Wno-long-double -pipe -no-cpp-precomp -Dsocklen_t=int -DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_3 -arch ppc -o .libs/gconfd-2 gconf-database.o gconfd.o -L/opt/local/lib -L/usr/X11R6/lib ./.libs/libgconf-2.4.1.5.dylib /opt/local/lib/libORBit-2.0.1.0.dylib /opt/local/lib/libgmodule-2.0.0.1903.0.dylib /opt/local/lib/libgthread-2.0.0.1903.0.dylib /opt/local/lib/libdbus-glib-1.2.1.0.dylib /opt/local/lib/libdbus-1.3.4.0.dylib /opt/local/lib/libgobject-2.0.0.1903.0.dylib /opt/local/lib/libglib-2.0.0.1903.0.dylib /opt/local/lib/libintl.8.0.2.dylib /usr/lib/libiconv.2.4.0.dylib -lc ld: warning multiple definitions of symbol _locale_charset /opt/local/lib/libintl.8.0.2.dylib(localcharset.o) definition of _locale_charset /usr/lib/libiconv.2.4.0.dylib(localcharset.o) definition of _locale_charset ld: Undefined symbols: _fdatasync make[4]: *** [gconfd-2] Error 1
This function call was added in response to Bug #562976, and confirming that OS X 10.4 doesn't have fdatasync (don't have 10.5 handy to check). Maybe should to an AC_CHECK_FUNCS for it, and if not available, fall back to fsync() in gconfd.c?
I wouldn't bother complicating the code. Let's just change it to fsync() unconditionally (unless we find it adversely affects performance). No need to add complexity for a premature optimization.
*** Bug 563399 has been marked as a duplicate of this bug. ***
This should be good to go now.