diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2022-08-03 13:41:35 +0200 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2022-08-03 13:41:35 +0200 |
commit | 2902b3a09e0a45c4971b59f78ab175b71b3c755e (patch) | |
tree | 0bdbab63d1093fd60583310f02ba386e0b3ec3e1 | |
parent | 8b502d863500149f4e86497714f0462e788f2f1e (diff) | |
download | newlib-2902b3a09e0a45c4971b59f78ab175b71b3c755e.zip newlib-2902b3a09e0a45c4971b59f78ab175b71b3c755e.tar.gz newlib-2902b3a09e0a45c4971b59f78ab175b71b3c755e.tar.bz2 |
Cygwin: drop requirement to build newlib's stdio64
Given that 64 bit Cygwin defines all file access types (off_t,
fpos_t, and derived types) as 64 bit anyway, there's no reason
left to rely on the stdio64 part of newlib. Use base functions
and base types.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
-rw-r--r-- | newlib/configure.host | 1 | ||||
-rw-r--r-- | newlib/libc/include/stdio.h | 4 | ||||
-rw-r--r-- | winsup/cygwin/include/cygwin/config.h | 2 | ||||
-rw-r--r-- | winsup/cygwin/syscalls.cc | 4 |
4 files changed, 2 insertions, 9 deletions
diff --git a/newlib/configure.host b/newlib/configure.host index 3cfed4c..98ce07d 100644 --- a/newlib/configure.host +++ b/newlib/configure.host @@ -420,7 +420,6 @@ fi case "${host}" in *-*-cygwin*) posix_dir=posix - stdio64_dir=stdio64 xdr_dir=xdr ;; *-*-netware*) diff --git a/newlib/libc/include/stdio.h b/newlib/libc/include/stdio.h index c75e481..ea4ddf3 100644 --- a/newlib/libc/include/stdio.h +++ b/newlib/libc/include/stdio.h @@ -67,14 +67,10 @@ typedef __FILE FILE; # define __FILE_defined #endif -#ifdef __CYGWIN__ -typedef _fpos64_t fpos_t; -#else typedef _fpos_t fpos_t; #ifdef __LARGE64_FILES typedef _fpos64_t fpos64_t; #endif -#endif /* !__CYGWIN__ */ #ifndef _OFF_T_DECLARED typedef __off_t off_t; diff --git a/winsup/cygwin/include/cygwin/config.h b/winsup/cygwin/include/cygwin/config.h index 1d515a6..2a70832 100644 --- a/winsup/cygwin/include/cygwin/config.h +++ b/winsup/cygwin/include/cygwin/config.h @@ -54,8 +54,6 @@ extern inline struct _reent *__getreent (void) Just leave them alone. */ #define _READ_WRITE_RETURN_TYPE _ssize_t #define _READ_WRITE_BUFSIZE_TYPE size_t -#define __LARGE64_FILES 1 -#define __USE_INTERNAL_STAT64 1 #define __LINUX_ERRNO_EXTENSIONS__ 1 #define _MB_EXTENDED_CHARSETS_ALL 1 #define __HAVE_LOCALE_INFO__ 1 diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc index 6455f25..a92948f 100644 --- a/winsup/cygwin/syscalls.cc +++ b/winsup/cygwin/syscalls.cc @@ -4191,7 +4191,7 @@ gethostid (void) #define ETC_SHELLS "/etc/shells" static int shell_index; -static struct __sFILE64 *shell_fp; +static FILE *shell_fp; extern "C" char * getusershell () @@ -4210,7 +4210,7 @@ getusershell () static char buf[PATH_MAX]; int ch, buf_idx; - if (!shell_fp && !(shell_fp = fopen64 (ETC_SHELLS, "rt"))) + if (!shell_fp && !(shell_fp = fopen (ETC_SHELLS, "rt"))) { if (def_shells[shell_index]) return strcpy (buf, def_shells[shell_index++]); |