1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-08 17:42:12 +03:00
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:
Ulrich Drepper
1998-10-14 22:37:11 +00:00
parent 6f100d04b0
commit 8d5166fb53
7 changed files with 111 additions and 8 deletions

View File

@@ -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 */