mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-21 20:40:05 +00:00
Mon Jul 8 13:37:40 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* math/math.h (_Mfloat_, _Mlong_double_): New macros, defined iff not already defined to float, long double. Use those macros for _Mdouble_ defns when including mathcalls.h. * math/Makefile [$(long-double-fcts) != yes] (CPPFLAGS): Append -D_Mlong_double_=double. Add more -lm functions to -lc because ldexp uses them. * math/Makefile (calls): Add s_finite, s_copysign, s_scalbn, s_modf. (routines): Remove s_modf, add s_frexpf, s_ldexpf; all but frexp and ldexp have both f and l code, and those have f though not l code. memcpy for possibly overlapping strings.
This commit is contained in:
parent
f5cb4a5cba
commit
999493cb4a
15
ChangeLog
15
ChangeLog
@ -1,7 +1,20 @@
|
|||||||
|
Mon Jul 8 13:37:40 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
|
||||||
|
|
||||||
|
* math/math.h (_Mfloat_, _Mlong_double_): New macros, defined iff not
|
||||||
|
already defined to float, long double. Use those macros for _Mdouble_
|
||||||
|
defns when including mathcalls.h.
|
||||||
|
* math/Makefile [$(long-double-fcts) != yes] (CPPFLAGS): Append
|
||||||
|
-D_Mlong_double_=double.
|
||||||
|
|
||||||
|
Add more -lm functions to -lc because ldexp uses them.
|
||||||
|
* math/Makefile (calls): Add s_finite, s_copysign, s_scalbn, s_modf.
|
||||||
|
(routines): Remove s_modf, add s_frexpf, s_ldexpf; all but frexp and
|
||||||
|
ldexp have both f and l code, and those have f though not l code.
|
||||||
|
|
||||||
Mon Jul 8 13:10:50 1996 Michael I. Bushnell p/BSG <mib@psilocin.gnu.ai.mit.edu>
|
Mon Jul 8 13:10:50 1996 Michael I. Bushnell p/BSG <mib@psilocin.gnu.ai.mit.edu>
|
||||||
|
|
||||||
* string/argz-delete.c (argz_delete): Use memmove instead of
|
* string/argz-delete.c (argz_delete): Use memmove instead of
|
||||||
memcpy for possbly overlapping strings.
|
memcpy for possibly overlapping strings.
|
||||||
|
|
||||||
Mon Jul 8 02:14:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
|
Mon Jul 8 02:14:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
|
||||||
|
|
||||||
|
49
FAQ
49
FAQ
@ -34,14 +34,15 @@ please let me know.
|
|||||||
[Q7] ``When I run `nm -u libc.so' on the produced library I still
|
[Q7] ``When I run `nm -u libc.so' on the produced library I still
|
||||||
find unresolved symbols? Can this be ok?''
|
find unresolved symbols? Can this be ok?''
|
||||||
|
|
||||||
[Q8] ``I expect GNU libc to be 100% source code compatible with
|
[Q8] ``Can I replace the libc on my Linux system with GNU libc?''
|
||||||
|
|
||||||
|
[Q9] ``I expect GNU libc to be 100% source code compatible with
|
||||||
the old Linux based GNU libc. Why isn't it like this?''
|
the old Linux based GNU libc. Why isn't it like this?''
|
||||||
|
|
||||||
[Q9] ``Why does getlogin() always return NULL on my Linux box?''
|
[Q10] ``Why does getlogin() always return NULL on my Linux box?''
|
||||||
|
|
||||||
[Q10] ``Where are the DST_* constants found in <sys/time.h> on many
|
[Q11] ``Where are the DST_* constants found in <sys/time.h> on many
|
||||||
systems?''
|
systems?''
|
||||||
|
|
||||||
|
|
||||||
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
||||||
[Q1] ``What systems does the GNU C Library run on?''
|
[Q1] ``What systems does the GNU C Library run on?''
|
||||||
@ -137,8 +138,8 @@ Library.
|
|||||||
You should avoid compiling on a NFS mounted device. This is very
|
You should avoid compiling on a NFS mounted device. This is very
|
||||||
slow.
|
slow.
|
||||||
|
|
||||||
* plenty of time (approx 1h for i386-linux on i586@133 or 2.5h or
|
* plenty of time (approx 1h for i386-linux on i586@133 or 2.5h on
|
||||||
i486@66).
|
i486@66 or 4.5h on i486@33).
|
||||||
|
|
||||||
If you have some more measurements let me know.
|
If you have some more measurements let me know.
|
||||||
|
|
||||||
@ -179,10 +180,27 @@ errors while linking before deciding there is a problem.
|
|||||||
|
|
||||||
|
|
||||||
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
||||||
[Q8] ``I expect GNU libc to be 100% source code compatible with
|
[Q8] ``Can I replace the libc on my Linux system with GNU libc?''
|
||||||
|
|
||||||
|
[A8] {UD} You cannot replace any existing libc for Linux with GNU
|
||||||
|
libc. There are different versions of C libraries and you can run
|
||||||
|
libcs with different major version independently.
|
||||||
|
|
||||||
|
For Linux there are today two libc versions:
|
||||||
|
libc-4 old a.out libc
|
||||||
|
libc-5 current ELF libc
|
||||||
|
|
||||||
|
GNU libc will have the major number 6 and therefore you can have this
|
||||||
|
additionally installed. For more information consult documenation for
|
||||||
|
shared library handling. The Makefiles of GNU libc will automatically
|
||||||
|
generate the needed symbolic links which the linker will use.
|
||||||
|
|
||||||
|
|
||||||
|
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
||||||
|
[Q9] ``I expect GNU libc to be 100% source code compatible with
|
||||||
the old Linux based GNU libc. Why isn't it like this?''
|
the old Linux based GNU libc. Why isn't it like this?''
|
||||||
|
|
||||||
[A8] {DMT,UD} Not every extension in Linux libc's history was well
|
[A9] {DMT,UD} Not every extension in Linux libc's history was well
|
||||||
thought-out. In fact it had a lot of problems with standards compliance
|
thought-out. In fact it had a lot of problems with standards compliance
|
||||||
and with cleanliness. With the introduction of a new version number these
|
and with cleanliness. With the introduction of a new version number these
|
||||||
errors now can be corrected. Here is a list of the known source code
|
errors now can be corrected. Here is a list of the known source code
|
||||||
@ -246,11 +264,16 @@ incompatibilities:
|
|||||||
upgrading to a newer lpd should fix this problem (e.g., the 4.4BSD
|
upgrading to a newer lpd should fix this problem (e.g., the 4.4BSD
|
||||||
lpd is known to be working).
|
lpd is known to be working).
|
||||||
|
|
||||||
|
* resolver functions/BIND: like on many other systems the functions of
|
||||||
|
the resolver library are not included in the libc itself. There is
|
||||||
|
a separate library libresolv. If you find some symbols starting with
|
||||||
|
`res_*' undefined simply add -lresolv to your call of the linker.
|
||||||
|
|
||||||
|
|
||||||
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
||||||
[Q9] ``Why does getlogin() always return NULL on my Linux box?''
|
[Q10] ``Why does getlogin() always return NULL on my Linux box?''
|
||||||
|
|
||||||
[A9] {UD} The GNU C library has a format for the UTMP and WTMP file
|
[A10] {UD} The GNU C library has a format for the UTMP and WTMP file
|
||||||
which differs from what your system currently has. It was extended to
|
which differs from what your system currently has. It was extended to
|
||||||
fulfill the needs of the next years when IPv6 is introduced. So the
|
fulfill the needs of the next years when IPv6 is introduced. So the
|
||||||
record size is different, fields might have a different position and
|
record size is different, fields might have a different position and
|
||||||
@ -262,12 +285,12 @@ means to support the new techniques later.
|
|||||||
|
|
||||||
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
||||||
|
|
||||||
[Q10] ``Where are the DST_* constants found in <sys/time.h> on many
|
[Q11] ``Where are the DST_* constants found in <sys/time.h> on many
|
||||||
systems?''
|
systems?''
|
||||||
|
|
||||||
[A10] {UD} These constants come from the old BSD days and are not used
|
[A11] {UD} These constants come from the old BSD days and are not used
|
||||||
today anymore (even the Linux based glibc does not implement the handling
|
today anymore (even the Linux based glibc does not implement the handling
|
||||||
although the cosntants are defined).
|
although the constants are defined).
|
||||||
|
|
||||||
Instead GNU libc contains the zone database handling and compatibility
|
Instead GNU libc contains the zone database handling and compatibility
|
||||||
code for POSIX TZ environment variable handling.
|
code for POSIX TZ environment variable handling.
|
||||||
|
3
NEWS
3
NEWS
@ -205,7 +205,8 @@ Version 2.0
|
|||||||
* We have incorporated the 4.4 BSD `db' library (version 1.85). New header
|
* We have incorporated the 4.4 BSD `db' library (version 1.85). New header
|
||||||
files <db.h> and <mpool.h> provide a rich set of functions for several
|
files <db.h> and <mpool.h> provide a rich set of functions for several
|
||||||
types of simple databases stored in memory and in files, and <ndbm.h> is
|
types of simple databases stored in memory and in files, and <ndbm.h> is
|
||||||
an old `ndbm'-compatbile interface using the `db' functions.
|
an old `ndbm'-compatbile interface using the `db' functions. Link with
|
||||||
|
`-ldb' to get these functions.
|
||||||
|
|
||||||
* New macro `strdupa' copies a string like `strdup', but uses local stack
|
* New macro `strdupa' copies a string like `strdup', but uses local stack
|
||||||
space from `alloca' instead of dynamic heap space from `malloc'.
|
space from `alloca' instead of dynamic heap space from `malloc'.
|
||||||
|
15
math/math.h
15
math/math.h
@ -62,19 +62,26 @@ __BEGIN_DECLS
|
|||||||
|
|
||||||
#ifdef __USE_MISC
|
#ifdef __USE_MISC
|
||||||
|
|
||||||
/* Include the file of declarations again, this type using `float'
|
|
||||||
|
/* Include the file of declarations again, this time using `float'
|
||||||
instead of `double' and appending f to each function name. */
|
instead of `double' and appending f to each function name. */
|
||||||
|
|
||||||
#define _Mdouble_ float
|
#ifndef _Mfloat_
|
||||||
|
#define _Mfloat_ float
|
||||||
|
#endif
|
||||||
|
#define _Mdouble_ _Mfloat_
|
||||||
#define __MATH_PRECNAME(name,r) name##f##r
|
#define __MATH_PRECNAME(name,r) name##f##r
|
||||||
#include <mathcalls.h>
|
#include <mathcalls.h>
|
||||||
#undef _Mdouble_
|
#undef _Mdouble_
|
||||||
#undef __MATH_PRECNAME
|
#undef __MATH_PRECNAME
|
||||||
|
|
||||||
/* Include the file of declarations again, this type using `long double'
|
/* Include the file of declarations again, this time using `long double'
|
||||||
instead of `double' and appending l to each function name. */
|
instead of `double' and appending l to each function name. */
|
||||||
|
|
||||||
#define _Mdouble_ long double
|
#ifndef _Mlong_double_
|
||||||
|
#define _Mlong_double_ long double
|
||||||
|
#endif
|
||||||
|
#define _Mdouble_ _Mlong_double_
|
||||||
#define __MATH_PRECNAME(name,r) name##l##r
|
#define __MATH_PRECNAME(name,r) name##l##r
|
||||||
#include <mathcalls.h>
|
#include <mathcalls.h>
|
||||||
#undef _Mdouble_
|
#undef _Mdouble_
|
||||||
|
Loading…
Reference in New Issue
Block a user