glibc/PROJECTS

152 lines
5.5 KiB
Plaintext
Raw Normal View History

Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
Open jobs for finishing GNU libc:
---------------------------------
Status: January 1997
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
If you have time and talent to take over any of the jobs below please
contact <bug-glibc@prep.ai.mit.edu>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 1] Port to new platforms or test current version on formerly supported
platforms.
**** See http://www.gnu.org/software/libc/porting.html for more details.
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
[ 2] Test compliance with standards. If you have access to recent
standards (IEEE, ISO, ANSI, X/Open, ...) and/or test suites you
could do some checks as the goal is to be compliant with all
standards if they do not contradict each other.
[ 3] The IMHO opinion most important task is to write a more complete
test suite. We cannot get too many people working on this. It is
not difficult to write a test, find a definition of the function
which I normally can provide, if necessary, and start writing tests
to test for compliance. Beside this, take a look at the sources
and write tests which in total test as many paths of execution as
possible.
[ 4] Write translations for the GNU libc message for the so far
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
unsupported languages. GNU libc is fully internationalized and
users can immediately benefit from this.
Take a look at the matrix in
ftp://prep.ai.mit.edu/pub/gnu/ABOUT-NLS
for the current status (of course better use a mirror of prep).
[ 5] Write wordexp() function; this is described in POSIX.2, the
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
header <wordexp.h> already exists.
Implementation idea: use some functions from bash.
**** Somebody is working on this. Help may or may not be appreciated.
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
[ 6] Write `long double' versions of the math functions. This should be
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
done in collaboration with the NetBSD and FreeBSD people.
The libm is in fact fdlibm (not the same as in Linux libc).
1996-10-02 01:40:17 +00:00
**** Partly done. But we need someone with numerical experiences for
the rest.
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
[ 7] Several math functions have to be written:
- exp2
- log2
each with float, double, and long double arguments. Writing these
functions should be possible when following the implementation of
the existing exp/log functions for other bases.
Beside this most of the complex math functions which are new in
ISO C 9X. gcc already has support for numbers of complex type so the
implementation should be possible today. I mention here the names
and the way to write them (argument is z = x + iy):
- cexp(z) = e^x (cos y + i sin y)
- sin(z) = 1/(2i) (e^(iz) - e^-(iz)) = sin(x) cosh(y) + i cos(x) sinh(y)
- cos(z) = 1/2 (e^(iz) + e^-(iz)) = cos(x) cosh(y) - i sin(x) sinh(y)
- tan(z) = 1/i (e^(iz) - e^-(iz))/(e^(iz) + e^-(iz))
- cot(z) = i (e^(iz) + e^-(iz))/(e^(iz) - e^-(iz))
- asin(z) = -i ln(iz + sqrt(1-z^2))
- acos(z) = -i ln(z + sqrt(z^2-1))
- atan(z) = 1/(2i) ln((1+iz)/(1-iz))
- acot(z) = -1/(2i) ln((iz+1)/(iz-1))
- sinh(z) = 1/2 (e^z - e^-z)
- cosh(z) = 1/2 (e^z + e^-z)
- tanh(z) = (e^z - e^-z)/(e^z + e^-z)
- coth(z) = (e^z + e^-z)/(e^z - e^-z)
All functions should we written with all the parallelism in mind.
And assembler versions are highly expreciated since, e.g., the ix87
FPU provides an `fsincos' instructions which is certainly useful for
the `sin' function. The implementations for the normal math functions
shows other optimization techniques.
[ 8] If you enjoy assembler programming (as I do --drepper :-) you might
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
be interested in writing optimized versions for some functions.
Especially the string handling functions can be optimized a lot.
Take a look at
Faster String Functions
Henry Spencer, University of Toronto
Usenix Winter '92, pp. 419--428
update from main archvie 961013 Sun Oct 13 22:52:56 1996 Ulrich Drepper <drepper@cygnus.com> * shlib-versions: Add version number/name for ld.so. * Makeconfig: Move definition of rtld-installed-name after inclusion of soversions.mk. Don't add . before version number from shlib-versions file when when name does not start with digit. This is needed for ld.so. Sat Oct 12 20:31:58 1996 Richard Henderson <rth@tamu.edu> * libio/iogets.c: Warn when gets used. * stdio/gets.c: Strengthen the warning. Sat Oct 12 23:10:43 1996 Ulrich Drepper <drepper@cygnus.com> * libio/Makefile [_LIBC_REENTRANT] (routines): Add peekc. * libio/libio.h: Add prototypes for _IO_getc, _IO_putc, _IO_feof, _IO_ferror, _IO_peekc_locked, and _IO_ftrylockfile. Remove prototypes for _IO_getc_locked and _IO_putc_locked. [_IO_MTSAFE_IO]: Add weak aliases for _IO_flockfile and _IO_funlockfile. [! _IO_MTSAFE_IO]: Define _IO_ftrylockfile as empty. Define _IO_getc, _IO_peekc, _IO_putc, _IO_feof, _IO_ferror to appropriate values according to __USE_REENTRANT. * libio/stdio.h: Add prototype for ftrylockfile. [!_LIBC]: Define getc_locked, getchar_locked, putchar_locked, getc, getchar, putc, and putchar using _IO_* names. * libio/feof.c: Rename to _IO_feof and make feof weak alias. * libio/ferror.c: Rename to _IO_ferror and make ferror weak alias. * libio/getc.c: Rename to _IO_getc and make getc weak alias. * libio/putc.c: Rename to _IO_putc and make putc weak alias. * libio/putc_u.c: Don't define alias _IO_putc_unlocked. * libio/peekc.c: New file. * stdio-common/vfprintf.c (vfprintf): Unconditionally call __flockfile. * sysdeps/stub/locfile.c [USE_IN_LIBIO]: Also define _IO_* names. * crypt/Makefile (tests): Add md5test and md5c-test. * crypt/md5-crypt.c: Correct various error. Now md5_process_bytes is called, the buffer limit is honoured and a loop in a inner loop is corrected. * crypt/md5.h (struct md5_ctx): Add new fields. Add prototypes for new functions. * crypt/md5.c (md5_init_ctx): Initialize new fields. (md5_finish_ctx): New function. Like md5_read_ctx but before perform correct finalization. (md5_process_bytes): New function. Similar to md5_proces_block, but does not require input size to be multiple of 64. (md5_stream): Rewrite using md5_process_bytes and md5_finish_ctx. (md5_buffer): Likewise. (md5_process_block): Count number of bytes. * crypt/md5test.c: New file. Test program for MD5 functions. * crypt/md5c-test.c: New file: Test program for MD5 crypt function. * po/fr.po: Update. * time/strptime.c: Recognize %s, %u, %g, and %G format. * posix/getopt.c: Add some more casts and initializations to prevent warnings. Sat Oct 12 16:15:29 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/speed.c (speeds): Removed. We provide an extra function to provide this functionality. (cfgetospeed): Simply return masked value. (cfsetospeed): Don't use speeds array and so we can simply test the value of SPEED for illegal values. * termios/cfsetspeed.c: Rewrite. We convert here between the real values and the B* constants. Changes suggested by Uwe Ohse <uwe@tirka.gun.de>. Fri Oct 11 21:45:34 1996 Andreas Jaeger <aj@arthur.pfalz.de> * locale/programs/xstrdup.c: Define prototypes. * locale/programs/xmalloc.c: Likewise. * stdio-common/xbug.c (main): Change definition to avoid warning. Fri Oct 11 23:36:31 1996 Miles Bader <miles@gnu.ai.mit.edu> * db/hash/hash.c (__hash_open): Correctly test for a read-write db.
1996-10-13 21:35:39 +00:00
or just ask. Currently mostly i?86 and Alpha optimized versions
exist. Please ask before working on this to avoid duplicate
work.
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
[ 9] Write nftw() function. Perhaps it might be good to reimplement the
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
ftw() function as well to share most of the code.
**** Almost done!
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
[10] Write AVL-tree based tsearch() et.al. functions. Currently only
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
a very simple algorithm is used.
There is a public domain version but using this would cause problems
with the assignment.
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
update from main archvie 961013 Sun Oct 13 22:52:56 1996 Ulrich Drepper <drepper@cygnus.com> * shlib-versions: Add version number/name for ld.so. * Makeconfig: Move definition of rtld-installed-name after inclusion of soversions.mk. Don't add . before version number from shlib-versions file when when name does not start with digit. This is needed for ld.so. Sat Oct 12 20:31:58 1996 Richard Henderson <rth@tamu.edu> * libio/iogets.c: Warn when gets used. * stdio/gets.c: Strengthen the warning. Sat Oct 12 23:10:43 1996 Ulrich Drepper <drepper@cygnus.com> * libio/Makefile [_LIBC_REENTRANT] (routines): Add peekc. * libio/libio.h: Add prototypes for _IO_getc, _IO_putc, _IO_feof, _IO_ferror, _IO_peekc_locked, and _IO_ftrylockfile. Remove prototypes for _IO_getc_locked and _IO_putc_locked. [_IO_MTSAFE_IO]: Add weak aliases for _IO_flockfile and _IO_funlockfile. [! _IO_MTSAFE_IO]: Define _IO_ftrylockfile as empty. Define _IO_getc, _IO_peekc, _IO_putc, _IO_feof, _IO_ferror to appropriate values according to __USE_REENTRANT. * libio/stdio.h: Add prototype for ftrylockfile. [!_LIBC]: Define getc_locked, getchar_locked, putchar_locked, getc, getchar, putc, and putchar using _IO_* names. * libio/feof.c: Rename to _IO_feof and make feof weak alias. * libio/ferror.c: Rename to _IO_ferror and make ferror weak alias. * libio/getc.c: Rename to _IO_getc and make getc weak alias. * libio/putc.c: Rename to _IO_putc and make putc weak alias. * libio/putc_u.c: Don't define alias _IO_putc_unlocked. * libio/peekc.c: New file. * stdio-common/vfprintf.c (vfprintf): Unconditionally call __flockfile. * sysdeps/stub/locfile.c [USE_IN_LIBIO]: Also define _IO_* names. * crypt/Makefile (tests): Add md5test and md5c-test. * crypt/md5-crypt.c: Correct various error. Now md5_process_bytes is called, the buffer limit is honoured and a loop in a inner loop is corrected. * crypt/md5.h (struct md5_ctx): Add new fields. Add prototypes for new functions. * crypt/md5.c (md5_init_ctx): Initialize new fields. (md5_finish_ctx): New function. Like md5_read_ctx but before perform correct finalization. (md5_process_bytes): New function. Similar to md5_proces_block, but does not require input size to be multiple of 64. (md5_stream): Rewrite using md5_process_bytes and md5_finish_ctx. (md5_buffer): Likewise. (md5_process_block): Count number of bytes. * crypt/md5test.c: New file. Test program for MD5 functions. * crypt/md5c-test.c: New file: Test program for MD5 crypt function. * po/fr.po: Update. * time/strptime.c: Recognize %s, %u, %g, and %G format. * posix/getopt.c: Add some more casts and initializations to prevent warnings. Sat Oct 12 16:15:29 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/speed.c (speeds): Removed. We provide an extra function to provide this functionality. (cfgetospeed): Simply return masked value. (cfsetospeed): Don't use speeds array and so we can simply test the value of SPEED for illegal values. * termios/cfsetspeed.c: Rewrite. We convert here between the real values and the B* constants. Changes suggested by Uwe Ohse <uwe@tirka.gun.de>. Fri Oct 11 21:45:34 1996 Andreas Jaeger <aj@arthur.pfalz.de> * locale/programs/xstrdup.c: Define prototypes. * locale/programs/xmalloc.c: Likewise. * stdio-common/xbug.c (main): Change definition to avoid warning. Fri Oct 11 23:36:31 1996 Miles Bader <miles@gnu.ai.mit.edu> * db/hash/hash.c (__hash_open): Correctly test for a read-write db.
1996-10-13 21:35:39 +00:00
[11] Extend regex and/or rx to work with wide characters and complete
update from main archvie 961013 Sun Oct 13 22:52:56 1996 Ulrich Drepper <drepper@cygnus.com> * shlib-versions: Add version number/name for ld.so. * Makeconfig: Move definition of rtld-installed-name after inclusion of soversions.mk. Don't add . before version number from shlib-versions file when when name does not start with digit. This is needed for ld.so. Sat Oct 12 20:31:58 1996 Richard Henderson <rth@tamu.edu> * libio/iogets.c: Warn when gets used. * stdio/gets.c: Strengthen the warning. Sat Oct 12 23:10:43 1996 Ulrich Drepper <drepper@cygnus.com> * libio/Makefile [_LIBC_REENTRANT] (routines): Add peekc. * libio/libio.h: Add prototypes for _IO_getc, _IO_putc, _IO_feof, _IO_ferror, _IO_peekc_locked, and _IO_ftrylockfile. Remove prototypes for _IO_getc_locked and _IO_putc_locked. [_IO_MTSAFE_IO]: Add weak aliases for _IO_flockfile and _IO_funlockfile. [! _IO_MTSAFE_IO]: Define _IO_ftrylockfile as empty. Define _IO_getc, _IO_peekc, _IO_putc, _IO_feof, _IO_ferror to appropriate values according to __USE_REENTRANT. * libio/stdio.h: Add prototype for ftrylockfile. [!_LIBC]: Define getc_locked, getchar_locked, putchar_locked, getc, getchar, putc, and putchar using _IO_* names. * libio/feof.c: Rename to _IO_feof and make feof weak alias. * libio/ferror.c: Rename to _IO_ferror and make ferror weak alias. * libio/getc.c: Rename to _IO_getc and make getc weak alias. * libio/putc.c: Rename to _IO_putc and make putc weak alias. * libio/putc_u.c: Don't define alias _IO_putc_unlocked. * libio/peekc.c: New file. * stdio-common/vfprintf.c (vfprintf): Unconditionally call __flockfile. * sysdeps/stub/locfile.c [USE_IN_LIBIO]: Also define _IO_* names. * crypt/Makefile (tests): Add md5test and md5c-test. * crypt/md5-crypt.c: Correct various error. Now md5_process_bytes is called, the buffer limit is honoured and a loop in a inner loop is corrected. * crypt/md5.h (struct md5_ctx): Add new fields. Add prototypes for new functions. * crypt/md5.c (md5_init_ctx): Initialize new fields. (md5_finish_ctx): New function. Like md5_read_ctx but before perform correct finalization. (md5_process_bytes): New function. Similar to md5_proces_block, but does not require input size to be multiple of 64. (md5_stream): Rewrite using md5_process_bytes and md5_finish_ctx. (md5_buffer): Likewise. (md5_process_block): Count number of bytes. * crypt/md5test.c: New file. Test program for MD5 functions. * crypt/md5c-test.c: New file: Test program for MD5 crypt function. * po/fr.po: Update. * time/strptime.c: Recognize %s, %u, %g, and %G format. * posix/getopt.c: Add some more casts and initializations to prevent warnings. Sat Oct 12 16:15:29 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/speed.c (speeds): Removed. We provide an extra function to provide this functionality. (cfgetospeed): Simply return masked value. (cfsetospeed): Don't use speeds array and so we can simply test the value of SPEED for illegal values. * termios/cfsetspeed.c: Rewrite. We convert here between the real values and the B* constants. Changes suggested by Uwe Ohse <uwe@tirka.gun.de>. Fri Oct 11 21:45:34 1996 Andreas Jaeger <aj@arthur.pfalz.de> * locale/programs/xstrdup.c: Define prototypes. * locale/programs/xmalloc.c: Likewise. * stdio-common/xbug.c (main): Change definition to avoid warning. Fri Oct 11 23:36:31 1996 Miles Bader <miles@gnu.ai.mit.edu> * db/hash/hash.c (__hash_open): Correctly test for a read-write db.
1996-10-13 21:35:39 +00:00
implementation of character class and collation class handling.
It is planed to do a complete rewrite.
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com> * limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646 character in UTF-8 encoding has that many bytes. * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX. * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX. * locale/Makefile (routines): Add mb_cur_max. * locale/mb_cur_max.c: New file. This function gets called when the macro MB_CUR_MAX is used. * locale/C-ctype.c: Initialize new mb_cur_max field. * locale/localeinfo.h: Change magic value because of incompatible change. * locale/programs/ld-ctype.c: Determine value of mb_cur_max according to current character set and write it out with the rest. * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value according to currently used locale for catefory LC_CTYPE by calling the function __ctype_get_mb_cur_max. Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com> * FAQ: Fix some typos. Tell that for Linux the kernel header files are necessary. * PROJECTS: New file. List of open jobs for glibc. * Makefile (distribute): Add PROJECTS. * crypt/GNUmakefile (headers): New variable. Mention crypt.h. * crypt/crypt.h: Header for crypt functions. * elf/elf.h: Add some new constants from recent Cygnus ELF header files. * login/getutid_r.c: Test for correct type. Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/getutline_r.c, login/pututline_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. Make really compliant with specification. * login/setutent_r.c: Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined. * login/login.c, login/logout.c, login/logwtmp.c: Complete rewrite. Now based on getut*/setut* functions. * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996. This prevented using this file in other GNU packages. * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID, and _HAVE_UT_TV because struct utmp has these members. * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case. * utmp.h: New file. Wrapper around login/utmp.h. * elf/dl-error.c (struct catch): New type. (catch): New static variable, struct catch *. (catch_env, signalled_errstring, signalled_objname): Variables removed. (_dl_signal_error): If CATCH is non-null, set its errstring and objname members and jump to CATCH->env. If it is null, call _dl_sysdep_fatal with a standard message. * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body. No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
[12] Write access function for netmasks, bootparams, and automount
update from main archive 961113 Thu Nov 14 02:00:33 1996 Ulrich Drepper <drepper@cygnus.com> * inet/Makefile (headers): Add aliases.h. (routines): Add getaliasent_r, getaliasent, getaliasname, and getaliasname_r. * aliases.h: New file. * inet/aliases.h: New file. * inet/getaliasent.c: New file. * inet/getaliasent_r.c: New file. * inet/getaliasname.c: New file. * inet/getaliasname_r.c: New file. * nss/Makefile (databases): Add alias. * nss/alias-lookup.c: New file. * nss/databases.def: Add aliases and publickey. * nss/nss_db/db-alias.c: New file. * nss/nss_files/files-alias.c: New file. * inet/getnetgrent_r.c (__internal_getnetgrent): Buffer length argument to lookup function is of type size_t. (innetgr): Likewise. * nss/getXXbyYY_r.c: Likewise. * nss/getXXent_r.c: Likewise. * nss/nss_db/db-XXX.c: Likewise. * nss/getXXbyYY.c: Don't provide static buffer. Resize if call failed because buffer was too small. * nss/getXXent.c: Likewise. * nss/nss_files/files-XXX.c: Correct handling of shared file. The getXXent_r function now uses f[gs]etpos to get to the correct position. * nss/nss_files/files-parse.c: Indent lines for better readability. * malloc/obstack.c: Add new variable obstack_alloc_failed_handler and new function print_and_abort. Remove all references to alloc_failed field. Add new function _obstack_memory_used. * malloc/obstack.h (struct obstack): Remove field alloc_field. Remove all references to alloc_failed field. Add prototype for _obstack_memory_used. * posix/unistd.h: Correct typo. Wed Nov 13 03:09:16 1996 Ulrich Drepper <drepper@cygnus.com> * configure.in: Require at least autoconf-2.10.2. Tue Nov 12 03:35:01 1996 Christian von Roques <roques@pond.sub.org> * malloc/obstack.h: Add new macro `obstack_make_room'. * malloc/obstack.c: Add function implementation for `obstack_make_room'. Mon Nov 11 13:54:04 1996 Ulrich Drepper <drepper@cygnus.com> Update to BIND-4.9.5-REL. * resolv/Banner: Set to 4.9.5-REL. * resolv/inet_net_pton.c: Was doing bad things to subnets and b'casts. * resolv/res_debug.c (__fp_nquery): Could read past end of buffer. (fix from BIND 8.1) * config.make.in: Add definition for top_absdir. * Makerules (make-link): Fix path to rellns-sh script. Sat Nov 9 02:15:24 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * posix/unistd.h: Fix comment. * manual/arith.texi: Fix misspellings. Use `zero', not `null', when talking about numbers. * manual/users.texi: Likewise. * manual/creature.texi: Likewise. Use @defvarx for a secondary description header. Sat Nov 9 19:25:11 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/posix/Makefile ($(common-objpfx)mk-stdiolim): Depend on the real posix1_lim.h file so that it works in all subdirs, not only in posix. Sat Nov 9 02:08:34 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makefile ($(includedir)/gnu/lib-names.h): Quote arguments of tr. Sat Nov 9 02:06:17 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/Makefile ($(common-objpfx)s-proto.d): Don't depend on $(before-compile) which hasn't been properly setup yet at this point. Sat Nov 9 02:02:48 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/sigset.h: Don't use implicit int which will probably require a diagnostic in the next revision of the C standard. * sysdeps/stub/lockfile.c: Likewise. Sat Nov 9 01:57:17 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/m68k/syscall.S: Correct last change. * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise. Mon Nov 11 02:53:14 1996 Ulrich Drepper <drepper@cygnus.com> * time/strftime.c: Update copyright. Small cosmetic changes. char *' and `int'. PROJ_ID are used.
1996-11-14 02:04:07 +00:00
databases for nss_files and nss_db module.
The functions should be embedded in the nss scheme. This is not
hard and not all services must be supported at once.
update from main archvie 961013 Sun Oct 13 22:52:56 1996 Ulrich Drepper <drepper@cygnus.com> * shlib-versions: Add version number/name for ld.so. * Makeconfig: Move definition of rtld-installed-name after inclusion of soversions.mk. Don't add . before version number from shlib-versions file when when name does not start with digit. This is needed for ld.so. Sat Oct 12 20:31:58 1996 Richard Henderson <rth@tamu.edu> * libio/iogets.c: Warn when gets used. * stdio/gets.c: Strengthen the warning. Sat Oct 12 23:10:43 1996 Ulrich Drepper <drepper@cygnus.com> * libio/Makefile [_LIBC_REENTRANT] (routines): Add peekc. * libio/libio.h: Add prototypes for _IO_getc, _IO_putc, _IO_feof, _IO_ferror, _IO_peekc_locked, and _IO_ftrylockfile. Remove prototypes for _IO_getc_locked and _IO_putc_locked. [_IO_MTSAFE_IO]: Add weak aliases for _IO_flockfile and _IO_funlockfile. [! _IO_MTSAFE_IO]: Define _IO_ftrylockfile as empty. Define _IO_getc, _IO_peekc, _IO_putc, _IO_feof, _IO_ferror to appropriate values according to __USE_REENTRANT. * libio/stdio.h: Add prototype for ftrylockfile. [!_LIBC]: Define getc_locked, getchar_locked, putchar_locked, getc, getchar, putc, and putchar using _IO_* names. * libio/feof.c: Rename to _IO_feof and make feof weak alias. * libio/ferror.c: Rename to _IO_ferror and make ferror weak alias. * libio/getc.c: Rename to _IO_getc and make getc weak alias. * libio/putc.c: Rename to _IO_putc and make putc weak alias. * libio/putc_u.c: Don't define alias _IO_putc_unlocked. * libio/peekc.c: New file. * stdio-common/vfprintf.c (vfprintf): Unconditionally call __flockfile. * sysdeps/stub/locfile.c [USE_IN_LIBIO]: Also define _IO_* names. * crypt/Makefile (tests): Add md5test and md5c-test. * crypt/md5-crypt.c: Correct various error. Now md5_process_bytes is called, the buffer limit is honoured and a loop in a inner loop is corrected. * crypt/md5.h (struct md5_ctx): Add new fields. Add prototypes for new functions. * crypt/md5.c (md5_init_ctx): Initialize new fields. (md5_finish_ctx): New function. Like md5_read_ctx but before perform correct finalization. (md5_process_bytes): New function. Similar to md5_proces_block, but does not require input size to be multiple of 64. (md5_stream): Rewrite using md5_process_bytes and md5_finish_ctx. (md5_buffer): Likewise. (md5_process_block): Count number of bytes. * crypt/md5test.c: New file. Test program for MD5 functions. * crypt/md5c-test.c: New file: Test program for MD5 crypt function. * po/fr.po: Update. * time/strptime.c: Recognize %s, %u, %g, and %G format. * posix/getopt.c: Add some more casts and initializations to prevent warnings. Sat Oct 12 16:15:29 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/speed.c (speeds): Removed. We provide an extra function to provide this functionality. (cfgetospeed): Simply return masked value. (cfsetospeed): Don't use speeds array and so we can simply test the value of SPEED for illegal values. * termios/cfsetspeed.c: Rewrite. We convert here between the real values and the B* constants. Changes suggested by Uwe Ohse <uwe@tirka.gun.de>. Fri Oct 11 21:45:34 1996 Andreas Jaeger <aj@arthur.pfalz.de> * locale/programs/xstrdup.c: Define prototypes. * locale/programs/xmalloc.c: Likewise. * stdio-common/xbug.c (main): Change definition to avoid warning. Fri Oct 11 23:36:31 1996 Miles Bader <miles@gnu.ai.mit.edu> * db/hash/hash.c (__hash_open): Correctly test for a read-write db.
1996-10-13 21:35:39 +00:00
[13] Rewrite utmp/wtmp functions to use database functions. This is much
update from main archvie 961013 Sun Oct 13 22:52:56 1996 Ulrich Drepper <drepper@cygnus.com> * shlib-versions: Add version number/name for ld.so. * Makeconfig: Move definition of rtld-installed-name after inclusion of soversions.mk. Don't add . before version number from shlib-versions file when when name does not start with digit. This is needed for ld.so. Sat Oct 12 20:31:58 1996 Richard Henderson <rth@tamu.edu> * libio/iogets.c: Warn when gets used. * stdio/gets.c: Strengthen the warning. Sat Oct 12 23:10:43 1996 Ulrich Drepper <drepper@cygnus.com> * libio/Makefile [_LIBC_REENTRANT] (routines): Add peekc. * libio/libio.h: Add prototypes for _IO_getc, _IO_putc, _IO_feof, _IO_ferror, _IO_peekc_locked, and _IO_ftrylockfile. Remove prototypes for _IO_getc_locked and _IO_putc_locked. [_IO_MTSAFE_IO]: Add weak aliases for _IO_flockfile and _IO_funlockfile. [! _IO_MTSAFE_IO]: Define _IO_ftrylockfile as empty. Define _IO_getc, _IO_peekc, _IO_putc, _IO_feof, _IO_ferror to appropriate values according to __USE_REENTRANT. * libio/stdio.h: Add prototype for ftrylockfile. [!_LIBC]: Define getc_locked, getchar_locked, putchar_locked, getc, getchar, putc, and putchar using _IO_* names. * libio/feof.c: Rename to _IO_feof and make feof weak alias. * libio/ferror.c: Rename to _IO_ferror and make ferror weak alias. * libio/getc.c: Rename to _IO_getc and make getc weak alias. * libio/putc.c: Rename to _IO_putc and make putc weak alias. * libio/putc_u.c: Don't define alias _IO_putc_unlocked. * libio/peekc.c: New file. * stdio-common/vfprintf.c (vfprintf): Unconditionally call __flockfile. * sysdeps/stub/locfile.c [USE_IN_LIBIO]: Also define _IO_* names. * crypt/Makefile (tests): Add md5test and md5c-test. * crypt/md5-crypt.c: Correct various error. Now md5_process_bytes is called, the buffer limit is honoured and a loop in a inner loop is corrected. * crypt/md5.h (struct md5_ctx): Add new fields. Add prototypes for new functions. * crypt/md5.c (md5_init_ctx): Initialize new fields. (md5_finish_ctx): New function. Like md5_read_ctx but before perform correct finalization. (md5_process_bytes): New function. Similar to md5_proces_block, but does not require input size to be multiple of 64. (md5_stream): Rewrite using md5_process_bytes and md5_finish_ctx. (md5_buffer): Likewise. (md5_process_block): Count number of bytes. * crypt/md5test.c: New file. Test program for MD5 functions. * crypt/md5c-test.c: New file: Test program for MD5 crypt function. * po/fr.po: Update. * time/strptime.c: Recognize %s, %u, %g, and %G format. * posix/getopt.c: Add some more casts and initializations to prevent warnings. Sat Oct 12 16:15:29 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/speed.c (speeds): Removed. We provide an extra function to provide this functionality. (cfgetospeed): Simply return masked value. (cfsetospeed): Don't use speeds array and so we can simply test the value of SPEED for illegal values. * termios/cfsetspeed.c: Rewrite. We convert here between the real values and the B* constants. Changes suggested by Uwe Ohse <uwe@tirka.gun.de>. Fri Oct 11 21:45:34 1996 Andreas Jaeger <aj@arthur.pfalz.de> * locale/programs/xstrdup.c: Define prototypes. * locale/programs/xmalloc.c: Likewise. * stdio-common/xbug.c (main): Change definition to avoid warning. Fri Oct 11 23:36:31 1996 Miles Bader <miles@gnu.ai.mit.edu> * db/hash/hash.c (__hash_open): Correctly test for a read-write db.
1996-10-13 21:35:39 +00:00
better than the normal flat file format.
**** There are plans for a new approach to this problem. Please contact
bug-glibc@prep.ai.mit.edu before starting to work.)
[14] Several more or less small functions have to be written:
+ tcgetid() and waitid() from XPG4.2
+ grantpt(), ptsname(), unlockpt() from XPG4.2
+ getdate() from XPG4.2
+ fmtmsg() from SVID
More information are available on request.
[15] We need to write a library for on-the-fly transformation of streams
of text. In fact, this would be a recode-library (you know, GNU recode).
This is needed in several places in the GNU libc and I already have
rather concrete plans but so far no possibility to start this.