Update.
authorUlrich Drepper <drepper@redhat.com>
Wed, 6 May 1998 09:52:22 +0000 (09:52 +0000)
committerUlrich Drepper <drepper@redhat.com>
Wed, 6 May 1998 09:52:22 +0000 (09:52 +0000)
1998-05-06 09:49  Ulrich Drepper  <drepper@cygnus.com>

* sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h: Add LFS support.
Use correct types.
* sysdeps/unix/sysv/sysv4/solaris2/bits/types.h: New file.

1998-05-05  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

* Makerules (elide-routines.*): Fix assignments.
(do-makelib): Fix typo.
($(subdirs-stamps)): Depend on $(objpfx)stamp.* if in parent
makefile.

1998-05-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

* Makefile (sysdep-subdirs, subdirs, $(common-objpfx)sysd-dirs,
$(objpfx)sysd-dirs): Move them...
* Makeconfig: ... here.
* Makerules (subdirs-stamps, subdirs-stamp-o): Always define.
(stubs): Fix circular depedency.
(do-makelib): Clean up.
(lib): Don't depend on lib-noranlib.
($(objpfx)stamp.oS): Remove special case for empty
static-only-routines.
(elide-routines.o): Add $(static-only-routines).
(elide-routines$o): Define this instead of elide-routines.$o.
* manual/Makefile (stubs): Fix circular dependency.

1998-05-05  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

* libio/Makefile (routines): Remove duplicate oldiofclose.

ChangeLog
abi-tags
libio/Makefile
sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h
sysdeps/unix/sysv/sysv4/solaris2/bits/types.h [new file with mode: 0644]

index 14b208c..b1a178f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,35 @@
+1998-05-06 09:49  Ulrich Drepper  <drepper@cygnus.com>
+
+       * sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h: Add LFS support.
+       Use correct types.
+       * sysdeps/unix/sysv/sysv4/solaris2/bits/types.h: New file.
+
+1998-05-05  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
+
+       * Makerules (elide-routines.*): Fix assignments.
+       (do-makelib): Fix typo.
+       ($(subdirs-stamps)): Depend on $(objpfx)stamp.* if in parent
+       makefile.
+
+1998-05-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
+
+       * Makefile (sysdep-subdirs, subdirs, $(common-objpfx)sysd-dirs,
+       $(objpfx)sysd-dirs): Move them...
+       * Makeconfig: ... here.
+       * Makerules (subdirs-stamps, subdirs-stamp-o): Always define.
+       (stubs): Fix circular depedency.
+       (do-makelib): Clean up.
+       (lib): Don't depend on lib-noranlib.
+       ($(objpfx)stamp.oS): Remove special case for empty
+       static-only-routines.
+       (elide-routines.o): Add $(static-only-routines).
+       (elide-routines$o): Define this instead of elide-routines.$o.
+       * manual/Makefile (stubs): Fix circular dependency.
+
+1998-05-05  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
+
+       * libio/Makefile (routines): Remove duplicate oldiofclose.
+
 1998-05-05  Ulrich Drepper  <drepper@cygnus.com>
 
        * string/strcoll.c: Use uint32_t instead of u_int32_t.
index 45d1d1f..b43f8af 100644 (file)
--- a/abi-tags
+++ b/abi-tags
@@ -20,5 +20,7 @@
 
 .*-.*-gnu-gnu.*                1       0.0.0
 
+sparc-sun-solaris2.*   2       2.0.0   # just an arbitrary value
+
 # There is no catch-all default here because every supported OS that uses
 # ELF must have its own unique ABI tag.
index 4ad342e..779c936 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+# Copyright (C) 1995, 1996, 1997, 1998 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
@@ -43,7 +43,7 @@ all: # Make this the default target; it will be defined in Rules.
 include ../Makeconfig
 
 ifeq ($(versioning),yes)
-routines += oldiofopen oldiofdopen oldiofclose oldiofclose
+routines += oldiofopen oldiofdopen oldiofclose
 endif
 
 CPPFLAGS-.o += -DIO_DEBUG
index c6048a9..ef93b7b 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1996, 1997, 1998 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
 
 #include <bits/types.h>
 
+/* Length of array allocated for file system type name.  */
+#define _ST_FSTYPSZ    16
+
+
 /* Structure describing file characteristics.  */
 struct stat
   {
-    unsigned long int st_dev;
+    __dev_t st_dev;
     long int st_filler1[3];
     __ino_t st_ino;            /* File serial number.          */
-    unsigned long int st_mode; /* File mode.  */
-    /* This is unsigned long instead of __nlink_t, since SVR4 has
-       a long nlink_t, not a short one.  */
-    unsigned long int st_nlink;        /* Link count.  */
+    __mode_t st_mode;          /* File mode.  */
+    __nlink_t st_nlink;                /* Link count.  */
     __uid_t st_uid;            /* User ID of the file's owner. */
     __gid_t st_gid;            /* Group ID of the file's group.*/
-    unsigned long int st_rdev; /* Device number, if device.  */
+    __dev_t st_rdev;   /* Device number, if device.  */
     long int st_filler2[2];
 
     __off_t st_size;           /* Size of file, in bytes.  */
@@ -48,14 +50,45 @@ struct stat
     __time_t st_ctime;         /* Time of last status change.  */
     unsigned long int st_ctime_usec;
 
-    __blkcnt_t st_blksize;     /* Optimal block size for I/O.  */
+    long int st_blksize;       /* Optimal block size for I/O.  */
 #define        _STATBUF_ST_BLKSIZE     /* Tell code we have this member.  */
 
-    long int st_blocks;                /* Number of 512-byte blocks allocated.  */
-    char st_fstype[16];
+    __blkcnt_t st_blocks;      /* Number of 512-byte blocks allocated.  */
+    char st_fstype[_ST_FSTYPSZ];
     long int st_filler4[8];
   };
 
+#ifdef __USE_LARGEFILE64
+/* struct stat64 has the shape as stat */
+struct stat64
+  {
+    __dev_t st_dev;                    /* Device */
+    long int st_filler1[2];
+    __ino64_t st_ino;                  /* File serial number */
+    __mode_t st_mode;                  /* File mode */
+    __nlink_t st_nlink;                        /* Link count */
+    __uid_t st_uid;                    /* User ID of the file's owner. */
+    __gid_t st_gid;                    /* Group ID of the file's group.*/
+    __dev_t st_rdev;                   /* Device number, if device */
+    long int st_filler2;
+
+    __off64_t st_size;                 /* Size of file, in bytes. */
+
+    __time_t st_atime;                 /* Time of last access */
+    unsigned long int st_atime_usec;
+    __time_t st_mtime;                         /* Time of last modification */
+    unsigned long int st_mtime_usec;
+    __time_t st_ctime;                 /* Time of last status change */
+    unsigned long int st_ctime_usec;
+
+    long int st_blksize;
+    __blkcnt64_t st_blocks;
+    char st_fstype[_ST_FSTYPSZ];
+    long int st_filler3[8];
+};
+#endif
+
+
 /* Encoding of the file mode.  */
 
 #define        __S_IFMT        0170000 /* These bits determine file type.  */
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/bits/types.h b/sysdeps/unix/sysv/sysv4/solaris2/bits/types.h
new file mode 100644 (file)
index 0000000..44e343a
--- /dev/null
@@ -0,0 +1,118 @@
+/* Copyright (C) 1991, 92, 94, 95, 96, 97, 98 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
+   modify it under the terms of the GNU Library General Public License as
+   published by the Free Software Foundation; either version 2 of the
+   License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU C Library; see the file COPYING.LIB.  If not,
+   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+/*
+ * Never include this file directly; use <sys/types.h> instead.
+ */
+
+#ifndef        _BITS_TYPES_H
+#define        _BITS_TYPES_H   1
+
+
+/* Convenience types.  */
+typedef unsigned char __u_char;
+typedef unsigned short __u_short;
+typedef unsigned int __u_int;
+typedef unsigned long __u_long;
+#ifdef __GNUC__
+typedef unsigned long long int __u_quad_t;
+typedef long long int __quad_t;
+#else
+typedef struct
+{
+  long __val[2];
+} __quad_t;
+typedef struct
+{
+  __u_long __val[2];
+} __u_quad_t;
+#endif
+typedef signed char __int8_t;
+typedef unsigned char __uint8_t;
+typedef signed short int __int16_t;
+typedef unsigned short int __uint16_t;
+typedef signed int __int32_t;
+typedef unsigned int __uint32_t;
+#ifdef __GNUC__
+typedef signed long long int __int64_t;
+typedef unsigned long long int __uint64_t;
+#endif
+typedef __quad_t *__qaddr_t;
+typedef unsigned long int __dev_t;   /* Type of device numbers.  */
+typedef long int __uid_t;           /* Type of user identifications.  */
+typedef long int __gid_t;           /* Type of group identifications.  */
+typedef unsigned long int __ino_t;   /* Type of file serial numbers.  */
+typedef unsigned long int __mode_t;  /* Type of file attribute bitmasks.  */
+typedef unsigned long int __nlink_t; /* Type of file link counts.  */
+typedef long int __off_t;           /* Type of file sizes and offsets.  */
+typedef __quad_t __loff_t;          /* Type of file sizes and offsets.  */
+typedef long int __pid_t;           /* Type of process identifications.  */
+typedef int __ssize_t;              /* Type of a byte count, or error.  */
+typedef __u_quad_t __fsid_t;        /* Type of file system IDs.  */
+typedef long int __clock_t;         /* Type of CPU usage counts.  */
+typedef long int __rlim_t;          /* Type for resource measurement.  */
+typedef __quad_t __rlim64_t;        /* Type for resource measurement (LFS). */
+typedef __quad_t __ino64_t;         /* Type for file serial numbers.  */
+typedef __loff_t __off64_t;         /* Type of file izes and offsets.  */
+typedef unsigned int __id_t;        /* General type for IDs.  */
+
+/* Everythin' else.  */
+typedef long int __daddr_t;         /* The type of a disk address.  */
+typedef char *__caddr_t;
+typedef long int __time_t;
+typedef long int __swblk_t;         /* Type of a swap block maybe?  */
+typedef int __key_t;                /* Type of an IPC key */
+\f
+/* fd_set for select.  */
+
+/* Number of descriptors that can fit in an `fd_set'.  */
+#define        __FD_SETSIZE    1024
+
+/* It's easier to assume 8-bit bytes than to get CHAR_BIT.  */
+#define        __NFDBITS       (sizeof (unsigned long int) * 8)
+#define        __FDELT(d)      ((d) / __NFDBITS)
+#define        __FDMASK(d)     ((unsigned long int) 1 << ((d) % __NFDBITS))
+
+typedef struct
+  {
+    /* XPG4.2 requires this member name.  */
+    unsigned long int fds_bits[(__FD_SETSIZE + (__NFDBITS - 1)) / __NFDBITS];
+  } __fd_set;
+
+typedef unsigned long int __fd_mask;
+
+
+/* Types from the Large File Support interface.  */
+
+/* Type to count number os disk blocks.  */
+typedef long int __blkcnt_t;
+typedef __quad_t __blkcnt64_t;
+
+/* Type to count file system blocks.  */
+typedef unsigned int __fsblkcnt_t;
+typedef __u_quad_t __fsblkcnt64_t;
+
+/* Type to count file system inodes.  */
+typedef unsigned long int __fsfilcnt_t;
+typedef __u_quad_t __fsfilcnt64_t;
+
+/* Used in XTI.  */
+typedef int __t_scalar_t;
+typedef unsigned int __t_uscalar_t;
+
+#endif /* bits/types.h */