about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/generic/iovec.h9
-rw-r--r--sysdeps/unix/readdir.c11
-rw-r--r--sysdeps/unix/sysdep.h3
-rw-r--r--sysdeps/unix/sysv/linux/iovec.h3
-rw-r--r--sysdeps/unix/sysv/linux/m68k/sysdep.h3
5 files changed, 18 insertions, 11 deletions
diff --git a/sysdeps/generic/iovec.h b/sysdeps/generic/iovec.h
new file mode 100644
index 0000000000..307fc6a18a
--- /dev/null
+++ b/sysdeps/generic/iovec.h
@@ -0,0 +1,9 @@
+/* `struct iovec' -- Structure describing a section of memory.  */
+
+struct iovec
+{
+  /* Starting address.  */
+  __ptr_t iov_base;
+  /* Length in bytes.  */
+  size_t iov_len;
+};
diff --git a/sysdeps/unix/readdir.c b/sysdeps/unix/readdir.c
index 84ac033e09..00446a2d2b 100644
--- a/sysdeps/unix/readdir.c
+++ b/sysdeps/unix/readdir.c
@@ -52,11 +52,12 @@ readdir (DIR *dirp)
 	  off_t base;
 	  ssize_t bytes;
 
-	  if (sizeof (dp->d_name) > 1)
-	    /* Fixed-size struct; must read one at a time (see below).  */
-	    maxread = sizeof *dp;
-	  else
-	    maxread = dirp->allocation;
+#ifndef _DIRENT_HAVE_D_RECLEN
+	  /* Fixed-size struct; must read one at a time (see below).  */
+	  maxread = sizeof *dp;
+#else
+	  maxread = dirp->allocation;
+#endif
 
 	  base = dirp->filepos;
 	  bytes = __getdirentries (dirp->fd, dirp->data, maxread, &base);
diff --git a/sysdeps/unix/sysdep.h b/sysdeps/unix/sysdep.h
index 07c539b78a..456970638c 100644
--- a/sysdeps/unix/sysdep.h
+++ b/sysdeps/unix/sysdep.h
@@ -36,7 +36,6 @@ Cambridge, MA 02139, USA.  */
 
 /* Define a macro we can use to construct the asm name for a C symbol.  */
 #ifdef	NO_UNDERSCORES
-#define	C_SYMBOL_NAME(name)	name
 #ifdef	__STDC__
 #define C_LABEL(name)		name##:
 #else
@@ -44,10 +43,8 @@ Cambridge, MA 02139, USA.  */
 #endif
 #else
 #ifdef	__STDC__
-#define	C_SYMBOL_NAME(name)	_##name
 #define C_LABEL(name)		_##name##:
 #else
-#define	C_SYMBOL_NAME(name)	_/**/name
 #define C_LABEL(name)		_/**/name/**/:
 #endif
 #endif
diff --git a/sysdeps/unix/sysv/linux/iovec.h b/sysdeps/unix/sysv/linux/iovec.h
new file mode 100644
index 0000000000..6e5e01d9b3
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/iovec.h
@@ -0,0 +1,3 @@
+/* The Linux kernel header defines `struct iovec' for us.  */
+
+#include <linux/uio.h>
diff --git a/sysdeps/unix/sysv/linux/m68k/sysdep.h b/sysdeps/unix/sysv/linux/m68k/sysdep.h
index ee481172d3..fe2c6aa823 100644
--- a/sysdeps/unix/sysv/linux/m68k/sysdep.h
+++ b/sysdeps/unix/sysv/linux/m68k/sysdep.h
@@ -18,9 +18,6 @@ License along with the GNU C Library; see the file COPYING.LIB.  If
 not, write to the Free Software Foundation, Inc., 675 Mass Ave,
 Cambridge, MA 02139, USA.  */
 
-/* In the Linux/ELF world, C symbols are asm symbols.  */
-#define NO_UNDERSCORES
-
 #include <sysdeps/unix/sysdep.h>
 
 /* For Linux we can use the system call table in the header file