1999-01-23 Roland McGrath <roland@baalperazim.frob.com>
authorRoland McGrath <roland@gnu.org>
Sun, 24 Jan 1999 10:40:26 +0000 (10:40 +0000)
committerRoland McGrath <roland@gnu.org>
Sun, 24 Jan 1999 10:40:26 +0000 (10:40 +0000)
* sysdeps/unix/sysv/linux/sys/mtio.h: Moved to...
* sysdeps/gnu/sys/mtio.h: ...here.
(_IOT_mtop, _IOT_mtget, _IOT_mtpos, _IOT_mtconfiginfo): New macros.
* sysdeps/gnu/Dist: Add sys/mtio.h.
* sysdeps/unix/sysv/linux/Dist: Remove sys/mtio.h.
* sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
(sysdep_headers): Don't add sys/mtio.h here.
* sysdeps/gnu/Makefile [$(subdir) = misc] (sysdep_headers): Add it
here instead.

sysdeps/gnu/Dist
sysdeps/gnu/Makefile
sysdeps/gnu/sys/mtio.h [moved from sysdeps/unix/sysv/linux/sys/mtio.h with 96% similarity]
sysdeps/mach/hurd/dl-sysdep.c
sysdeps/unix/sysv/linux/Dist
sysdeps/unix/sysv/linux/Makefile

index afbfd72..7055326 100644 (file)
@@ -4,3 +4,4 @@ bits/utmpx.h
 netinet/tcp.h
 netinet/udp.h
 netinet/ip_icmp.h
+sys/mtio.h
index 48932c3..14a190a 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
+# Copyright (C) 1996, 97, 98, 99 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 
 # The GNU C Library is free software; you can redistribute it and/or
@@ -40,3 +40,8 @@ endif
 ifeq ($(subdir),inet)
 sysdep_headers += netinet/udp.h netinet/ip_icmp.h
 endif
+
+
+ifeq ($(subdir),misc)
+sysdep_headers += sys/mtio.h
+endif
similarity index 96%
rename from sysdeps/unix/sysv/linux/sys/mtio.h
rename to sysdeps/gnu/sys/mtio.h
index e238ef9..7498dfa 100644 (file)
@@ -33,6 +33,8 @@ struct mtop
     short int mt_op;           /* Operations defined below.  */
     int mt_count;              /* How many of them.  */
   };
+#define _IOT_mtop /* Hurd ioctl type field.  */ \
+  _IOT (_IOTS (short), 1, _IOTS (int), 1, 0, 0)
 
 /* Magnetic Tape operations [Not all operations supported by all drivers].  */
 #define MTRESET 0      /* +reset drive in case of problems.  */
@@ -92,7 +94,8 @@ struct mtget
     __daddr_t mt_fileno;       /* Number of current file on tape.  */
     __daddr_t mt_blkno;                /* Current block number.  */
   };
-
+#define _IOT_mtget /* Hurd ioctl type field.  */ \
+  _IOT (_IOTS (long), 7, 0, 0, 0, 0)
 
 
 /* Constants for mt_type. Not all of these are supported, and
@@ -156,6 +159,8 @@ struct mtpos
   {
     long int mt_blkno; /* Current block number.  */
   };
+#define _IOT_mtpos /* Hurd ioctl type field.  */ \
+  _IOT_SIMPLE (long)
 
 
 /* Structure for MTIOCGETCONFIG/MTIOCSETCONFIG primarily intended
@@ -185,6 +190,8 @@ struct mtconfiginfo
     unsigned pad1:5;
     char reserved[10];
   };
+#define _IOT_mtconfiginfo /* Hurd ioctl type field.  */ \
+  _IOT (_IOTS (long), 2, _IOTS (short), 3, _IOTS (long), 1) /* XXX wrong */
 
 
 /* Magnetic tape I/O control commands.  */
index efe33d7..c79c388 100644 (file)
@@ -1,5 +1,5 @@
 /* Operating system support for run-time dynamic linker.  Hurd version.
-   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+   Copyright (C) 1995, 96, 97, 98, 99 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -514,9 +514,9 @@ __libc_write (int fd, const void *buf, size_t nbytes)
 {
   error_t err;
   mach_msg_type_number_t nwrote;
-         
+
   assert (fd < _hurd_init_dtablesize);
-  
+
   err = __io_write (_hurd_init_dtable[fd], buf, nbytes, -1, &nwrote);
   if (err)
     return __hurd_fail (err);
@@ -638,11 +638,17 @@ __getpid ()
   return pid;
 }
 
+/* This is called only in some strange cases trying to guess a value
+   for $ORIGIN for the executable.  The dynamic linker copes with
+   getcwd failing (dl-object.c), and it's too much hassle to include
+   the functionality here.  (We could, it just requires duplicating or
+   reusing getcwd.c's code but using our special lookup function as in
+   `open', above.)  */
 char *
 weak_function
 __getcwd (char *buf, size_t size)
 {
-  abort ();
+  errno = ENOSYS;
   return NULL;
 }
 
index c6b881d..a9408bf 100644 (file)
@@ -57,7 +57,6 @@ sys/kd.h
 sys/kdaemon.h
 sys/klog.h
 sys/mount.h
-sys/mtio.h
 sys/pci.h
 sys/prctl.h
 sys/procfs.h
index 354ef66..0a8f454 100644 (file)
@@ -11,7 +11,7 @@ endif
 ifeq ($(subdir),misc)
 sysdep_routines += sysctl clone llseek getresuid getresgid umount umount2
 
-sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h sys/mtio.h \
+sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h \
                  sys/io.h sys/klog.h sys/kdaemon.h \
                  sys/user.h sys/procfs.h sys/prctl.h \
                  sys/kd.h sys/soundcard.h sys/vt.h \