From 01cad722667c7b25535b2d248598f3d535e7caa9 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 21 Apr 1998 22:58:23 +0000 Subject: Update. 1998-04-21 21:49 Zack Weinberg * misc/sys/cdefs.h: New macro __REDIRECT to support changing the asm symbol name of functions. * include/features.h: Kill redundant test. * dirent/dirent.h: Use new macros to implement __USE_FILE_OFFSET64. * io/ftw.h: Likewise. * io/sys/stat.h: Likewise. * io/sys/statfs.h: Likewise. * io/sys/statvfs.h: Likewise. * libio/stdio.h: Likewise. * resource/sys/resource.h: Likewise. * rt/aio.h: Likewise. * posix/unistd.h: Use new macros for __USE_FILE_OFFSET64 and __FAVOR_BSD. * signal/signal.h: Use new macros for BSD vs. SysV signal(). * misc/Makefile: Drop bsd-compat.c. Make libbsd-compat.a a dummy library. * misc/bsd-compat.c: Removed. --- io/sys/stat.h | 60 +++++++++++++++++++++++++++++++++----------------------- io/sys/statfs.h | 16 +++++++++++---- io/sys/statvfs.h | 17 ++++++++++++---- 3 files changed, 60 insertions(+), 33 deletions(-) (limited to 'io/sys') diff --git a/io/sys/stat.h b/io/sys/stat.h index 944c436d8c..b31097a52f 100644 --- a/io/sys/stat.h +++ b/io/sys/stat.h @@ -173,37 +173,42 @@ __BEGIN_DECLS /* Get file attributes for FILE and put them in BUF. */ extern int __stat __P ((__const char *__file, struct stat *__buf)); -#ifndef __USE_FILE_OFFSET64 -extern int stat __P ((__const char *__file, struct stat *__buf)); -#else -extern int stat __P ((__const char *__file, struct stat *__buf)) - __asm__ ("stat64"); -#endif -#ifdef __USE_LARGEFILE64 -extern int stat64 __P ((__const char *__file, struct stat64 *__buf)); -#endif - /* Get file attributes for the file, device, pipe, or socket that file descriptor FD is open on and put them in BUF. */ extern int __fstat __P ((int __fd, struct stat *__buf)); +/* Get file attributes about FILE and put them in BUF. + If FILE is a symbolic link, do not follow it. */ +extern int __lstat __P ((__const char *__file, struct stat *__buf)); + + #ifndef __USE_FILE_OFFSET64 +extern int stat __P ((__const char *__file, struct stat *__buf)); extern int fstat __P ((int __fd, struct stat *__buf)); #else -extern int fstat __P ((int __fd, struct stat *__buf)) __asm__ ("fstat64"); +# ifdef __REDIRECT +extern int __REDIRECT (stat, __P ((__const char *__file, struct stat *__buf)), + stat64); +extern int __REDIRECT (fstat, __P ((int __fd, struct stat *__buf)), fstat64); +# else +# define stat stat64 +# define fstat fstat64 +# endif #endif #ifdef __USE_LARGEFILE64 +extern int stat64 __P ((__const char *__file, struct stat64 *__buf)); extern int fstat64 __P ((int __fd, struct stat64 *__buf)); #endif -/* Get file attributes about FILE and put them in BUF. - If FILE is a symbolic link, do not follow it. */ -extern int __lstat __P ((__const char *__file, struct stat *__buf)); #if defined __USE_BSD || defined __USE_XOPEN_EXTENDED # ifndef __USE_FILE_OFFSET64 extern int lstat __P ((__const char *__file, struct stat *__buf)); # else -extern int lstat __P ((__const char *__file, struct stat *__buf)) - __asm__ ("lstat64"); +# ifdef __REDIRECT +extern int __REDIRECT (lstat, __P ((__const char *__file, struct stat *__buf)), + lstat64); +# else +# define lstat lstat64 +# endif # endif # ifdef __USE_LARGEFILE64 extern int lstat64 __P ((__const char *__file, struct stat64 *__buf)); @@ -283,16 +288,21 @@ extern int __xstat __P ((int __ver, __const char *__filename, extern int __lxstat __P ((int __ver, __const char *__filename, struct stat *__stat_buf)); #else -extern int __fxstat __P ((int __ver, int __fildes, - struct stat *__stat_buf)) - __asm__ ("__fxstat64"); -extern int __xstat __P ((int __ver, __const char *__filename, - struct stat *__stat_buf)) - __asm__ ("__xstat64"); -extern int __lxstat __P ((int __ver, __const char *__filename, - struct stat *__stat_buf)) - __asm__ ("__lxstat64"); +# ifdef __REDIRECT +extern int __REDIRECT (__fxstat, __P ((int __ver, int __fildes, + struct stat *__stat_buf)), __fxstat64); +extern int __REDIRECT (__xstat, __P ((int __ver, __const char *__filename, + struct stat *__stat_buf)), __xstat64); +extern int __REDIRECT (__lxstat __P ((int __ver, __const char *__filename, + struct stat *__stat_buf)), __lxstat64); + +# else +# define __fxstat __fxstat64 +# define __xstat __xstat64 +# define __lxstat __lxstat64 +# endif #endif + #ifdef __USE_LARGEFILE64 extern int __fxstat64 __P ((int __ver, int __fildes, struct stat64 *__stat_buf)); diff --git a/io/sys/statfs.h b/io/sys/statfs.h index fbec44182b..6d9d00f92f 100644 --- a/io/sys/statfs.h +++ b/io/sys/statfs.h @@ -32,8 +32,12 @@ extern int __statfs __P ((__const char *__file, struct statfs *__buf)); #ifndef __USE_FILE_OFFSET64 extern int statfs __P ((__const char *__file, struct statfs *__buf)); #else -extern int statfs __P ((__const char *__file, struct statfs *__buf)) - __asm__ ("statfs64"); +# ifdef __REDIRECT +extern int __REDIRECT (statfs, __P ((__const char *__file, + struct statfs *__buf)), statfs64); +# else +# define statfs statfs64 +# endif #endif #ifdef __USE_LARGEFILE64 extern int statfs64 __P ((__const char *__file, struct statfs64 *__buf)); @@ -45,8 +49,12 @@ extern int __fstatfs __P ((int __fildes, struct statfs *__buf)); #ifndef __USE_FILE_OFFSET64 extern int fstatfs __P ((int __fildes, struct statfs *__buf)); #else -extern int fstatfs __P ((int __fildes, struct statfs *__buf)) - __asm__ ("fstatfs64"); +# ifdef __REDIRECT +extern int __REDIRECT (fstatfs, __P ((int __fildes, struct statfs *__buf)), + fstatfs64); +# else +# define statfs statfs64 +# endif #endif #ifdef __USE_LARGEFILE64 extern int fstatfs64 __P ((int __fildes, struct statfs64 *__buf)); diff --git a/io/sys/statvfs.h b/io/sys/statvfs.h index 4da8e7c348..856d3c93ca 100644 --- a/io/sys/statvfs.h +++ b/io/sys/statvfs.h @@ -32,8 +32,13 @@ extern int __statvfs __P ((__const char *__file, struct statvfs *__buf)); #ifndef __USE_FILE_OFFSET64 extern int statvfs __P ((__const char *__file, struct statvfs *__buf)); #else -extern int statvfs __P ((__const char *__file, struct statvfs *__buf)) - __asm__ ("statvfs64"); +# ifdef __REDIRECT +extern int __REDIRECT (statvfs, + __P ((__const char *__file, struct statvfs *__buf)), + statvfs64); +# else +# define statfs statfs64 +# endif #endif #ifdef __USE_LARGEFILE64 extern int statvfs64 __P ((__const char *__file, struct statvfs64 *__buf)); @@ -45,8 +50,12 @@ extern int __fstatvfs __P ((int __fildes, struct statvfs *__buf)); #ifndef __USE_FILE_OFFSET64 extern int fstatvfs __P ((int __fildes, struct statvfs *__buf)); #else -extern int fstatvfs __P ((int __fildes, struct statvfs *__buf)) - __asm__ ("fstatvfs64"); +# ifdef __REDIRECT +extern int __REDIRECT (fstatvfs, __P ((int __fildes, struct statvfs *__buf)), + fstatvfs64); +# else +# define statfs statfs64 +# endif #endif #ifdef __USE_LARGEFILE64 extern int fstatvfs64 __P ((int __fildes, struct statvfs64 *__buf)); -- cgit v1.2.3