Update.
2000-02-28 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/start.c: Initialize __errno and add comment explaining why. Remove K&R compatibility. * sysdeps/powerpc/fpu/s_isnan.c: Avoid using asm statement to declare aliases. * sysdeps/powerpc/Makefile: Always pass flags to compile for ppc and not rs6000. [$(subdir)=misc] (sysdep_routines): Add gprsave0, gprrest0, gprsave1 , and gprrest1. Don't pass special flags to compiler for init and gmon-start if this is no ELF platform. * sysdeps/mach/hurd/bits/statfs.h: Define _STATFS_F_NAMELEN. * sysdeps/unix/sysv/linux/bits/statfs.h: Likewise. * sysdeps/unix/sysv/linux/mips/bits/statfs.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: Likewise. * sysdeps/posix/fpathconf.c: Don't unconditionally use f_namelen in statfs. Check feature macro and use f_name_max or NAME_MAX instead. * sysdeps/posix/pathconf.c: Likewise. * dlfcn/dlfcn.h: Remove DL_CALL_FCT definition here. * sysdeps/generic/bits/dlfcn.h: Define DL_CALL_FCT here. * sysdeps/mips/bits/dlfcn.h: Define DL_CALL_FCT here. * iconv/skeleton.c: If DL_CALL_FCT is not yet defined, add dumy definition here. * sysdeps/generic/libc-start.c: Fix typo in comment. * include/set-hooks.h: Allow systems to not define symbol_set_define. * configure.in: Unify machine names rs6000 and powerpc.
This commit is contained in:
parent
46b5798928
commit
a808d541c6
37
ChangeLog
37
ChangeLog
|
@ -1,3 +1,40 @@
|
||||||
|
2000-02-28 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
|
* sysdeps/unix/start.c: Initialize __errno and add comment
|
||||||
|
explaining why. Remove K&R compatibility.
|
||||||
|
|
||||||
|
* sysdeps/powerpc/fpu/s_isnan.c: Avoid using asm statement to
|
||||||
|
declare aliases.
|
||||||
|
|
||||||
|
* sysdeps/powerpc/Makefile: Always pass flags to compile for ppc
|
||||||
|
and not rs6000.
|
||||||
|
[$(subdir)=misc] (sysdep_routines): Add gprsave0, gprrest0,
|
||||||
|
gprsave1 , and gprrest1.
|
||||||
|
Don't pass special flags to compiler for init and gmon-start if
|
||||||
|
this is no ELF platform.
|
||||||
|
|
||||||
|
* sysdeps/mach/hurd/bits/statfs.h: Define _STATFS_F_NAMELEN.
|
||||||
|
* sysdeps/unix/sysv/linux/bits/statfs.h: Likewise.
|
||||||
|
* sysdeps/unix/sysv/linux/mips/bits/statfs.h: Likewise.
|
||||||
|
* sysdeps/unix/sysv/linux/sparc/bits/statfs.h: Likewise.
|
||||||
|
* sysdeps/posix/fpathconf.c: Don't unconditionally use f_namelen
|
||||||
|
in statfs. Check feature macro and use f_name_max or NAME_MAX
|
||||||
|
instead.
|
||||||
|
* sysdeps/posix/pathconf.c: Likewise.
|
||||||
|
|
||||||
|
* dlfcn/dlfcn.h: Remove DL_CALL_FCT definition here.
|
||||||
|
* sysdeps/generic/bits/dlfcn.h: Define DL_CALL_FCT here.
|
||||||
|
* sysdeps/mips/bits/dlfcn.h: Define DL_CALL_FCT here.
|
||||||
|
* iconv/skeleton.c: If DL_CALL_FCT is not yet defined, add dumy
|
||||||
|
definition here.
|
||||||
|
|
||||||
|
* sysdeps/generic/libc-start.c: Fix typo in comment.
|
||||||
|
|
||||||
|
* include/set-hooks.h: Allow systems to not define
|
||||||
|
symbol_set_define.
|
||||||
|
|
||||||
|
* configure.in: Unify machine names rs6000 and powerpc.
|
||||||
|
|
||||||
2000-02-25 Andreas Jaeger <aj@suse.de>
|
2000-02-25 Andreas Jaeger <aj@suse.de>
|
||||||
|
|
||||||
* malloc/Versions: Change version of __libc_freeres to 2.1 in
|
* malloc/Versions: Change version of __libc_freeres to 2.1 in
|
||||||
|
|
20
bits/dlfcn.h
20
bits/dlfcn.h
|
@ -1,5 +1,5 @@
|
||||||
/* System dependent definitions for run-time dynamic loading.
|
/* System dependent definitions for run-time dynamic loading.
|
||||||
Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
|
Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -35,3 +35,21 @@
|
||||||
The implementation does this by default and so we can define the
|
The implementation does this by default and so we can define the
|
||||||
value to zero. */
|
value to zero. */
|
||||||
#define RTLD_LOCAL 0
|
#define RTLD_LOCAL 0
|
||||||
|
|
||||||
|
#ifdef __USE_GNU
|
||||||
|
/* To support profiling of shared objects it is a good idea to call
|
||||||
|
the function found using `dlsym' using the following macro since
|
||||||
|
these calls do not use the PLT. But this would mean the dynamic
|
||||||
|
loader has no chance to find out when the function is called. The
|
||||||
|
macro applies the necessary magic so that profiling is possible.
|
||||||
|
Rewrite
|
||||||
|
foo = (*fctp) (arg1, arg2);
|
||||||
|
into
|
||||||
|
foo = DL_CALL_FCT (fctp, (arg1, arg2));
|
||||||
|
*/
|
||||||
|
# define DL_CALL_FCT(fctp, args) \
|
||||||
|
(_dl_mcount_wrapper_check (fctp), (*(fctp)) args)
|
||||||
|
|
||||||
|
/* This function calls the profiling functions. */
|
||||||
|
extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW;
|
||||||
|
#endif
|
||||||
|
|
|
@ -224,6 +224,12 @@ machine=$config_machine
|
||||||
vendor=$config_vendor
|
vendor=$config_vendor
|
||||||
os=$config_os
|
os=$config_os
|
||||||
|
|
||||||
|
# config.guess on some IBM machines says `rs6000' instead of `powerpc'.
|
||||||
|
# Unify this here.
|
||||||
|
if test "$machine" = rs6000; then
|
||||||
|
machine="powerpc"
|
||||||
|
fi
|
||||||
|
|
||||||
###
|
###
|
||||||
### I put this here to prevent those annoying emails from people who cannot
|
### I put this here to prevent those annoying emails from people who cannot
|
||||||
### read and try to compile glibc on unsupported platforms. --drepper
|
### read and try to compile glibc on unsupported platforms. --drepper
|
||||||
|
|
|
@ -77,22 +77,6 @@ typedef struct
|
||||||
void *dli_saddr; /* Exact value of nearest symbol. */
|
void *dli_saddr; /* Exact value of nearest symbol. */
|
||||||
} Dl_info;
|
} Dl_info;
|
||||||
extern int dladdr (const void *__address, Dl_info *__info) __THROW;
|
extern int dladdr (const void *__address, Dl_info *__info) __THROW;
|
||||||
|
|
||||||
/* To support profiling of shared objects it is a good idea to call
|
|
||||||
the function found using `dlsym' using the following macro since
|
|
||||||
these calls do not use the PLT. But this would mean the dynamic
|
|
||||||
loader has no chance to find out when the function is called. The
|
|
||||||
macro applies the necessary magic so that profiling is possible.
|
|
||||||
Rewrite
|
|
||||||
foo = (*fctp) (arg1, arg2);
|
|
||||||
into
|
|
||||||
foo = DL_CALL_FCT (fctp, (arg1, arg2));
|
|
||||||
*/
|
|
||||||
# define DL_CALL_FCT(fctp, args) \
|
|
||||||
(_dl_mcount_wrapper_check (fctp), (*(fctp)) args)
|
|
||||||
|
|
||||||
/* This function calls the profiling functions. */
|
|
||||||
extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
__END_DECLS
|
__END_DECLS
|
||||||
|
|
|
@ -87,6 +87,10 @@
|
||||||
# include <dlfcn.h>
|
# include <dlfcn.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef DL_CALL_FCT
|
||||||
|
# define DL_CALL_FCT(fct, args) fct args
|
||||||
|
#endif
|
||||||
|
|
||||||
/* The direction objects. */
|
/* The direction objects. */
|
||||||
#if DEFINE_DIRECTION_OBJECTS || DEFINE_INIT
|
#if DEFINE_DIRECTION_OBJECTS || DEFINE_INIT
|
||||||
static int from_object;
|
static int from_object;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Macros for using symbol sets for running lists of functions.
|
/* Macros for using symbol sets for running lists of functions.
|
||||||
Copyright (C) 1994, 1995, 1997 Free Software Foundation, Inc.
|
Copyright (C) 1994, 1995, 1997, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -24,6 +24,7 @@
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
#include <sys/cdefs.h>
|
#include <sys/cdefs.h>
|
||||||
|
|
||||||
|
#ifdef symbol_set_define
|
||||||
/* Define a hook variable called NAME. Functions put on this hook take
|
/* Define a hook variable called NAME. Functions put on this hook take
|
||||||
arguments described by PROTO. Use `text_set_element (NAME, FUNCTION)'
|
arguments described by PROTO. Use `text_set_element (NAME, FUNCTION)'
|
||||||
from gnu-stabs.h to add a function to the hook. */
|
from gnu-stabs.h to add a function to the hook. */
|
||||||
|
@ -53,5 +54,17 @@ do { \
|
||||||
# define DEFINE_HOOK_RUNNER(name, runner, proto, args) \
|
# define DEFINE_HOOK_RUNNER(name, runner, proto, args) \
|
||||||
DEFINE_HOOK (name, proto); void runner proto { RUN_HOOK (name, args); }
|
DEFINE_HOOK (name, proto); void runner proto { RUN_HOOK (name, args); }
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
/* The system does not provide necessary support for this. */
|
||||||
|
# define DEFINE_HOOK(NAME, PROTO)
|
||||||
|
|
||||||
|
# define DECLARE_HOOK(NAME, PROTO)
|
||||||
|
|
||||||
|
# define RUN_HOOK(NAME, ARGS)
|
||||||
|
|
||||||
|
# define DEFINE_HOOK_RUNNER(name, runner, proto, args)
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* set-hooks.h */
|
#endif /* set-hooks.h */
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* System dependent definitions for run-time dynamic loading.
|
/* System dependent definitions for run-time dynamic loading.
|
||||||
Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
|
Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -35,3 +35,21 @@
|
||||||
The implementation does this by default and so we can define the
|
The implementation does this by default and so we can define the
|
||||||
value to zero. */
|
value to zero. */
|
||||||
#define RTLD_LOCAL 0
|
#define RTLD_LOCAL 0
|
||||||
|
|
||||||
|
#ifdef __USE_GNU
|
||||||
|
/* To support profiling of shared objects it is a good idea to call
|
||||||
|
the function found using `dlsym' using the following macro since
|
||||||
|
these calls do not use the PLT. But this would mean the dynamic
|
||||||
|
loader has no chance to find out when the function is called. The
|
||||||
|
macro applies the necessary magic so that profiling is possible.
|
||||||
|
Rewrite
|
||||||
|
foo = (*fctp) (arg1, arg2);
|
||||||
|
into
|
||||||
|
foo = DL_CALL_FCT (fctp, (arg1, arg2));
|
||||||
|
*/
|
||||||
|
# define DL_CALL_FCT(fctp, args) \
|
||||||
|
(_dl_mcount_wrapper_check (fctp), (*(fctp)) args)
|
||||||
|
|
||||||
|
/* This function calls the profiling functions. */
|
||||||
|
extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW;
|
||||||
|
#endif
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* Copyright (C) 1998, 1999 Free Software Foundation, Inc.
|
/* Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -103,7 +103,7 @@ check_one_fd (int fd, int mode)
|
||||||
about to start does not accidently use this descriptor. */
|
about to start does not accidently use this descriptor. */
|
||||||
int nullfd = __libc_open (_PATH_DEVNULL, mode);
|
int nullfd = __libc_open (_PATH_DEVNULL, mode);
|
||||||
if (nullfd == -1)
|
if (nullfd == -1)
|
||||||
/* We cannot even given an error message here since it would
|
/* We cannot even give an error message here since it would
|
||||||
run into the same problems. */
|
run into the same problems. */
|
||||||
abort ();
|
abort ();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Definition of `struct statfs', information about a filesystem.
|
/* Definition of `struct statfs', information about a filesystem.
|
||||||
Copyright (C) 1996, 97, 98 Free Software Foundation, Inc.
|
Copyright (C) 1996, 97, 98, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -82,3 +82,6 @@ struct statfs64
|
||||||
unsigned int f_spare[3];
|
unsigned int f_spare[3];
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Tell code we have this member. */
|
||||||
|
#define _STATFS_F_NAMELEN
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* System dependent definitions for run-time dynamic loading.
|
/* System dependent definitions for run-time dynamic loading.
|
||||||
Copyright (C) 1996, 1997, 1999 Free Software Foundation, Inc.
|
Copyright (C) 1996, 1997, 1999, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -35,3 +35,21 @@
|
||||||
The implementation does this by default and so we can define the
|
The implementation does this by default and so we can define the
|
||||||
value to zero. */
|
value to zero. */
|
||||||
#define RTLD_LOCAL 0
|
#define RTLD_LOCAL 0
|
||||||
|
|
||||||
|
#ifdef __USE_GNU
|
||||||
|
/* To support profiling of shared objects it is a good idea to call
|
||||||
|
the function found using `dlsym' using the following macro since
|
||||||
|
these calls do not use the PLT. But this would mean the dynamic
|
||||||
|
loader has no chance to find out when the function is called. The
|
||||||
|
macro applies the necessary magic so that profiling is possible.
|
||||||
|
Rewrite
|
||||||
|
foo = (*fctp) (arg1, arg2);
|
||||||
|
into
|
||||||
|
foo = DL_CALL_FCT (fctp, (arg1, arg2));
|
||||||
|
*/
|
||||||
|
# define DL_CALL_FCT(fctp, args) \
|
||||||
|
(_dl_mcount_wrapper_check (fctp), (*(fctp)) args)
|
||||||
|
|
||||||
|
/* This function calls the profiling functions. */
|
||||||
|
extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW;
|
||||||
|
#endif
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* Copyright (C) 1991, 1995, 1996, 1998 Free Software Foundation, Inc.
|
/* Copyright (C) 1991, 1995, 1996, 1998, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -81,7 +81,17 @@ __fpathconf (fd, name)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
#ifdef _STATFS_F_NAMELEN
|
||||||
return buf.f_namelen;
|
return buf.f_namelen;
|
||||||
|
#else
|
||||||
|
# ifdef _STATFS_F_NAME_MAX
|
||||||
|
return buf.f_name_max;
|
||||||
|
# else
|
||||||
|
return NAME_MAX;
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
return -1;
|
return -1;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* Copyright (C) 1991, 1995, 1996, 1998 Free Software Foundation, Inc.
|
/* Copyright (C) 1991, 1995, 1996, 1998, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -76,7 +76,17 @@ __pathconf (const char *path, int name)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
#ifdef _STATFS_F_NAMELEN
|
||||||
return buf.f_namelen;
|
return buf.f_namelen;
|
||||||
|
#else
|
||||||
|
# ifdef _STATFS_F_NAME_MAX
|
||||||
|
return buf.f_name_max;
|
||||||
|
# else
|
||||||
|
return NAME_MAX;
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
return -1;
|
return -1;
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
# We always want to use the new mnemonic syntax even if we are on a RS6000
|
||||||
|
# machine.
|
||||||
|
+cflags += -mnew-mnemonics -Wa,-mppc -mpowerpc
|
||||||
|
asm-CPPFLAGS += -Wa,-mppc
|
||||||
|
|
||||||
ifeq ($(subdir),math)
|
ifeq ($(subdir),math)
|
||||||
libm-support += fenv_const fe_nomask
|
libm-support += fenv_const fe_nomask
|
||||||
endif
|
endif
|
||||||
|
@ -6,6 +11,10 @@ ifeq ($(subdir),gmon)
|
||||||
sysdep_routines += ppc-mcount
|
sysdep_routines += ppc-mcount
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(subdir),misc)
|
||||||
|
sysdep_routines += gprsave0 gprrest0 gprsave1 gprrest1
|
||||||
|
endif
|
||||||
|
|
||||||
# On PPC, -fpic works until the GOT contains 2^15 bytes, and possibly
|
# On PPC, -fpic works until the GOT contains 2^15 bytes, and possibly
|
||||||
# more depending on how clever the linker is. Each GOT entry takes 4 bytes,
|
# more depending on how clever the linker is. Each GOT entry takes 4 bytes,
|
||||||
# so that's at least 8192 entries. Since libc only uses about 2000 entries,
|
# so that's at least 8192 entries. Since libc only uses about 2000 entries,
|
||||||
|
@ -15,6 +24,7 @@ pic-ccflag = -fpic
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(subdir),csu)
|
ifeq ($(subdir),csu)
|
||||||
|
ifneq ($(elf),no)
|
||||||
# The initfini generation code doesn't work in the presence of -fPIC, so
|
# The initfini generation code doesn't work in the presence of -fPIC, so
|
||||||
# we use -fpic instead which is much better.
|
# we use -fpic instead which is much better.
|
||||||
CFLAGS-initfini.s = -g0 -fpic
|
CFLAGS-initfini.s = -g0 -fpic
|
||||||
|
@ -24,6 +34,7 @@ CFLAGS-initfini.s = -g0 -fpic
|
||||||
CFLAGS-init.o = -G0
|
CFLAGS-init.o = -G0
|
||||||
CFLAGS-gmon-start.o = -G0
|
CFLAGS-gmon-start.o = -G0
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(subdir),string)
|
ifeq ($(subdir),string)
|
||||||
CFLAGS-memcmp.c += -Wno-uninitialized
|
CFLAGS-memcmp.c += -Wno-uninitialized
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Return 1 if argument is a NaN, else 0.
|
/* Return 1 if argument is a NaN, else 0.
|
||||||
Copyright (C) 1997 Free Software Foundation, Inc.
|
Copyright (C) 1997, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -17,6 +17,10 @@
|
||||||
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
Boston, MA 02111-1307, USA. */
|
Boston, MA 02111-1307, USA. */
|
||||||
|
|
||||||
|
/* Ugly kludge to avoid declarations. */
|
||||||
|
#define __isnanf __Xisnanf
|
||||||
|
#define isnanf Xisnanf
|
||||||
|
|
||||||
#include "math.h"
|
#include "math.h"
|
||||||
#include <fenv_libc.h>
|
#include <fenv_libc.h>
|
||||||
|
|
||||||
|
@ -31,16 +35,14 @@ int __isnan(double x)
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
weak_alias (__isnan, isnan)
|
weak_alias (__isnan, isnan)
|
||||||
|
|
||||||
/* It turns out that the 'double' version will also always work for
|
/* It turns out that the 'double' version will also always work for
|
||||||
single-precision. Use explicit assembler to stop gcc complaining
|
single-precision. */
|
||||||
that 'isnanf' takes a float parameter, not double. */
|
#undef __isnanf
|
||||||
asm ("\
|
#undef isnanf
|
||||||
.globl __isnanf
|
strong_alias (__isnan, __isnanf)
|
||||||
.globl isnanf
|
weak_alias (__isnanf, isnanf)
|
||||||
.weak isnanf
|
|
||||||
.set __isnanf,__isnan
|
|
||||||
.set isnanf,__isnan
|
|
||||||
");
|
|
||||||
#ifdef NO_LONG_DOUBLE
|
#ifdef NO_LONG_DOUBLE
|
||||||
strong_alias (__isnan, __isnanl)
|
strong_alias (__isnan, __isnanl)
|
||||||
weak_alias (__isnan, isnanl)
|
weak_alias (__isnan, isnanl)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* Copyright (C) 1991, 93, 95, 96, 97, 98 Free Software Foundation, Inc.
|
/* Copyright (C) 1991, 93, 1995-1998, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -36,12 +36,14 @@ weak_alias (__data_start, data_start)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef errno
|
#ifndef errno
|
||||||
volatile int __errno;
|
/* __errno must be initialized since otherwise one cannot create an
|
||||||
|
alias (at least on some platforms). */
|
||||||
|
volatile int __errno = 0;
|
||||||
strong_alias (__errno, errno)
|
strong_alias (__errno, errno)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
extern void __libc_init __P ((int argc, char **argv, char **envp));
|
extern void __libc_init (int argc, char **argv, char **envp);
|
||||||
extern int main __P ((int argc, char **argv, char **envp));
|
extern int main (int argc, char **argv, char **envp);
|
||||||
|
|
||||||
|
|
||||||
/* Not a prototype because it gets called strangely. */
|
/* Not a prototype because it gets called strangely. */
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* Copyright (C) 1997, 1998 Free Software Foundation, Inc.
|
/* Copyright (C) 1997, 1998, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -59,3 +59,6 @@ struct statfs64
|
||||||
int f_spare[6];
|
int f_spare[6];
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Tell code we have this member. */
|
||||||
|
#define _STATFS_F_NAMELEN
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* Copyright (C) 1997 Free Software Foundation, Inc.
|
/* Copyright (C) 1997, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -67,3 +67,6 @@ struct statfs64
|
||||||
long int f_spare[6];
|
long int f_spare[6];
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Tell code we have these members. */
|
||||||
|
#define _STATFS_F_NAMELEN
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
|
/* Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
@ -59,3 +59,6 @@ struct statfs64
|
||||||
long int f_spare[6];
|
long int f_spare[6];
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Tell code we have these members. */
|
||||||
|
#define _STATFS_F_NAMELEN
|
||||||
|
|
Loading…
Reference in New Issue