mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-08 17:42:12 +03:00
Update.
1998-10-08 Paul Eggert <eggert@twinsun.com> * time/mktime.c (my_mktime_localtime_r): Renamed from localtime_r. Define also if HAVE_LOCALTIME_R && defined localtime_r, with a body that merely expands localtime_r; this works around a bug in Digital Unix 4.0A and 4.0D. 1998-10-14 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add s_ioctl. * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: New file. Define __ioctl to __syscall_ioctl and include Linux version of this file. * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/ioctl.c: New file. Redirect ioctl calls which handle struct termios. Based on a patch by Dan Jacobowitz <drow@false.org>.
This commit is contained in:
@@ -124,22 +124,33 @@ time_t __mktime_internal __P ((struct tm *,
|
||||
#ifdef _LIBC
|
||||
# define localtime_r __localtime_r
|
||||
#else
|
||||
# if ! HAVE_LOCALTIME_R && ! defined localtime_r
|
||||
/* Approximate localtime_r as best we can in its absence. */
|
||||
# define localtime_r my_mktime_localtime_r
|
||||
static struct tm *localtime_r __P ((const time_t *, struct tm *));
|
||||
# if HAVE_LOCALTIME_R == defined localtime_r
|
||||
/* Provide our own substitute for a missing or possibly broken localtime_r. */
|
||||
static struct tm *my_mktime_localtime_r __P ((const time_t *, struct tm *));
|
||||
static struct tm *
|
||||
localtime_r (t, tp)
|
||||
my_mktime_localtime_r (t, tp)
|
||||
const time_t *t;
|
||||
struct tm *tp;
|
||||
{
|
||||
# ifdef localtime_r
|
||||
/* Digital Unix 4.0A and 4.0D have a macro localtime_r with the
|
||||
standard meaning, along with an unwanted, nonstandard function
|
||||
localtime_r. The placeholder function my_mktime_localtime_r
|
||||
invokes the macro; use that instead of the system's bogus
|
||||
localtime_r. */
|
||||
return localtime_r (t, tp);
|
||||
# undef localtime_r
|
||||
# else /* ! defined (localtime_r) */
|
||||
/* Approximate localtime_r as best we can in its absence. */
|
||||
struct tm *l = localtime (t);
|
||||
if (! l)
|
||||
return 0;
|
||||
*tp = *l;
|
||||
return tp;
|
||||
# endif /* ! defined localtime_r */
|
||||
}
|
||||
# endif /* ! HAVE_LOCALTIME_R && ! defined (localtime_r) */
|
||||
# define localtime_r my_mktime_localtime_r
|
||||
# endif /* HAVE_LOCALTIME_R == defined localtime_r */
|
||||
#endif /* ! _LIBC */
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user