VG_(getdents64) is only needed on Linux, and causes build problems
on Darwin, so make it exist only on Linux.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14421 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/m_libcfile.c b/coregrind/m_libcfile.c
index a019dd8..be3240b 100644
--- a/coregrind/m_libcfile.c
+++ b/coregrind/m_libcfile.c
@@ -522,19 +522,15 @@
    return sr_isError(res) ? -1 : sr_Res(res);
 }
 
+#if defined(VGO_linux)
 Int VG_(getdents64) (Int fd, struct vki_dirent64 *dirp, UInt count)
 {
-#  if defined(VGO_linux)
    SysRes res;
    /* res = getdents( fd, dirp, count ); */
    res = VG_(do_syscall3)(__NR_getdents64, fd, (UWord)dirp, count);
    return sr_isError(res) ? -1 : sr_Res(res);
-#  elif defined(VGO_darwin)
-   I_die_here;
-#  else
-#    error "Unknown OS"
-#  endif
 }
+#endif
 
 /* Check accessibility of a file.  Returns zero for access granted,
    nonzero otherwise. */
diff --git a/include/pub_tool_libcfile.h b/include/pub_tool_libcfile.h
index e93e665..ea50289 100644
--- a/include/pub_tool_libcfile.h
+++ b/include/pub_tool_libcfile.h
@@ -92,7 +92,10 @@
 extern SysRes VG_(poll) (struct vki_pollfd *fds, Int nfds, Int timeout);
 
 extern Int    VG_(readlink)( const HChar* path, HChar* buf, UInt bufsize );
+
+#if defined(VGO_linux)
 extern Int    VG_(getdents64)( Int fd, struct vki_dirent64 *dirp, UInt count );
+#endif
 
 extern const HChar* VG_(basename)( const HChar* path );
 extern const HChar* VG_(dirname) ( const HChar* path );