We stopped adding "Contributed by" or similar lines in sources in 2012
in favour of git logs and keeping the Contributors section of the
glibc manual up to date. Removing these lines makes the license
header a bit more consistent across files and also removes the
possibility of error in attribution when license blocks or files are
copied across since the contributed-by lines don't actually reflect
reality in those cases.
Move all "Contributed by" and similar lines (Written by, Test by,
etc.) into a new file CONTRIBUTED-BY to retain record of these
contributions. These contributors are also mentioned in
manual/contrib.texi, so we just maintain this additional record as a
courtesy to the earlier developers.
The following scripts were used to filter a list of files to edit in
place and to clean up the CONTRIBUTED-BY file respectively. These
were not added to the glibc sources because they're not expected to be
of any use in future given that this is a one time task:
https://gist.github.com/siddhesh/b5ecac94eabfd72ed2916d6d8157e7dchttps://gist.github.com/siddhesh/15ea1f5e435ace9774f485030695ee02
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
I used these shell commands:
../glibc/scripts/update-copyrights $PWD/../gnulib/build-aux/update-copyright
(cd ../glibc && git commit -am"[this commit message]")
and then ignored the output, which consisted lines saying "FOO: warning:
copyright statement not found" for each of 6694 files FOO.
I then removed trailing white space from benchtests/bench-pthread-locks.c
and iconvdata/tst-iconv-big5-hkscs-to-2ucs4.c, to work around this
diagnostic from Savannah:
remote: *** pre-commit check failed ...
remote: *** error: lines with trailing whitespace found
remote: error: hook declined to update refs/heads/master
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
2000-06-29 Ulrich Drepper <drepper@redhat.com>
* stdlib/grouping.h: Correctly handle multibyte thousands
separator and decimal point.
* stdlib/stdtod.c: Likewise.
* sysdeps/generic/strtol.c: Likewise.
* locale/categories.def: Add entries for wide character decimal point
and thousands separator in numeric and monetary category.
2000-06-28 Ulrich Drepper <drepper@redhat.com>
* stdio-common/printf_fp.c (__printf_fp): Remove unnecessary
second definition and initialization of decimal.
* libio/libio.h (struct _IO_cookie_file): Move struct type defintion
out.
* libio/libioP.h (struct _IO_cookie_file): Move struct type defintion
in.
(_IO_JUMPS): Don't cast THIS--expect arg to be a
(struct _IO_FILE_plus *).
(_IO_iter_next, _IO_iter_file): _IO_ITER is now
(struct _IO_FILE_plus *).
(_IO_check_libio): Set user-visible handles to
(struct _IO_FILE_plus *).
Thu Dec 19 23:28:33 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/resolv.h: Update from BIND 4.9.5-P1.
* resolv/res_comp.c: Likewise.
* resolv/res_debug.c: Likewise.
* resolv/Banner: Update version number.
Thu Dec 19 20:58:53 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/dlfcn.h: Add extern "C" wrapper.
* io/utime.h: Don't define NULL since this isn't allowed in POSIX.
* io/sys/stat.h: Declare `lstat' only if __USE_BSD ||
__USE_XOPEN_EXTENDED.
* locale/locale.h: Define NULL.
* math/math.c: Don't include <errno.h> to define math errors.
* stdlib/stdlib.h: Likewise.
* posix/unistd.h: Don't declare environ.
* posix/sys/utsname.h (struct utsname): Declare member domainname
as __domainname is !__USE_GNU.
* signal/signal.h: Declare size_t only if __USE_BSD ||
__USE_XOPEN_EXTENDED.
* stdio/stdio.h: Don't declare cuserid when __USE_POSIX, but
instead when __USE_XOPEN.
* string/string.h: Define strndup only if __USE_GNU.
* sysdeps/unix/sysv/linux/clock.c: New file.
* sysdeps/unix/sysv/linux/timebits.h: Define CLOCKS_PER_SEC as
1000000 per X/Open standard.
* features.h: Add code to recognize _POSIX_C_SOURCE value 199309.
Define __USE_POSIX199309.
* posix/unistd.h: Declare fdatasync only if __USE_POSIX199309.
* time/time.c: Declare nanosleep only if __USE_POSIX199309.
Patches by Rüdiger Helsch <rh@unifix.de>.
* locale/locale.h: Add declaration of newlocale and freelocale.
* new-malloc/Makefile (distibute): Add mtrace.awk.
(dist-routines): Add mcheck and mtrace.
(install-lib, non-lib.a): Define as libmcheck.a.
* new-malloc/malloc.h: Add declaration of __malloc_initialized.
* new-malloc/mcheck.c: New file.
* new-malloc/mcheck.h: New file.
* new-malloc/mtrace.c: New file.
* new-malloc/mtrace.awk: New file.
* posix/unistd.h: Correct prototype for usleep.
* sysdeps/unix/bsd/usleep.c: De-ANSI-declfy. Correct return type.
* sysdeps/unix/sysv/linux/usleep.c: Real implementation based on
nanosleep.
* signal/signal.h: Change protoype of __sigpause to take two
arguments. Remove prototype for sigpause. Add two different
macros named sigpause selected when __USE_BSD or __USE_XOPEN
are defined. This is necessary since the old BSD definition
of theis function collides with the X/Open definition.
* sysdeps/posix/sigpause.c: Change function definition to also
fit X/Open definition.
* sysdeps/libm-i387/e_exp.S: Make sure stack is empty when the
function is left.
* sysdeps/libm-i387/e_expl.S: Likewise.
Patch by HJ Lu.
1996-12-17 Paul Eggert <eggert@twinsun.com>
* many, many files: Spelling corrections.
* catgets/catgetsinfo.h (mmapped):
Renamed from mmaped (in struct catalog_info.status).
* mach/err_kern.sub (err_codes_unix), string/stratcliff.c (main):
Fix spelling in message.
* po/libc.pot: Fix spelling in message for `zic'; this anticipates
a fix in the tzcode distribution.
Wed Dec 18 15:48:02 1996 Ulrich Drepper <drepper@cygnus.com>
* time/strftime.c: Implement ^ flag to cause output be converted
to use upper case characters.
* time/zic.c: Update from ADO tzcode1996n.
Wed Dec 18 14:29:24 1996 Erik Naggum <erik@naggum.no>
* time/strftime.c (add): Don't change global `i' until all is over.
Define NULL is not already defined.
Tue Dec 17 09:49:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libio/iovsprintf.c (_IO_vsprintf): Change `&sf' to `&sf._sbf._f'
to avoid the need for a cast.
* libio/iovsscanf.c (_IO_vsscanf): Likewise.
* sunrpc/rpc/xdr.h: Add prototype for xdr_free.
Mon Dec 9 03:39:30 1996 Ulrich Drepper <drepper@cygnus.com>
* config.make.in (defines): Add @USE_NEW_MALLOC@.
* Makefile.in: Define USE_NEW_MALLOC to -DUSE_NEW_MALLOC if
we use the new malloc.
* malloc.h: Use either <malloc/malloc.h> or <new-malloc/malloc.h>
depending on USE_NEW_MALLOC.
Fix some more POSIX.1 problems.
* libio/fileops.c (_IO_file_underflow): Set errno to EBADF if used
on a write-only stream.
(_IO_file_overflow): Set errno to EBADF if used on a read-only
stream.
(_IO_file_seekoff): POSIX.1 requires that fseek() after an fflush()
call really positions the file offset to the correct position
and no read-ahead happens.
* locale/C-monetary.c: Set mon_grouping file to "" and "\377"
to pass POSIX test suite.
* stdio-common/vfprintf.c: Handle empty string as grouping command
correctly.
* stdlib/grouping.h: Likewise.
* misc/syslog.c: Case first argument of __libc_cleanup_region_start.
* signal/sigsetops.h: Update copyright. Don't include ansidecl.h.
* stdio-common/printf_fp.c: Update copyright.
Sun Dec 8 16:39:28 1996 Andreas Jaeger <aj@arthur.pfalz.de>
* time/Makefile: Compile ap.c with NO_MCHECK flag if new-malloc
used (not otherwise).
* misc/syslog.c (vsyslog): Cast argument to __libc_cleanup_region
to get Hurd macros right.
* time/strftime.c: Use canonical autoconf nugget for time.h+sys/time.h
include.
Mon Apr 29 02:48:26 1996 Ulrich Drepper <drepper@cygnus.com>
* ctype/ctype-info.c: (__ctype_width): New variable.
(__ctype_names): Initialize correctly without offset.
* locale/C-collate.c, locale/C-ctype.c,
locale/C-messages.c, locale/C-monetary.c,
locale/C-numeric.c, locale/C-time.c: Change copyright.
* locale/C-ctype.c (_nl_C_LC_CTYPE_class32): Correct
endianess for initialization value.
* locale/lc-ctype.c (current): Add parameter for offset.
(__ctype32_b, __ctype_width): Add initialization for these
variables.
* locale/programs/charmap.c: Finish support for WIDTH information.
(new_width): New function.
* locale/programs/charset.h (width_rule): new data structure.
(charset_t): Add elements for width information.
* locale/programs/ld-ctype.c (locale_ctype_t): Add element
for width information.
(allocate_arrays): Add new argument for charset.
(ctype_finish): Make sure all characters named in charset
width table are known to name table.
(ctype_output): Correct handling of class and map name
information and write out width information.
(find_idx): Prepare for being called with NULL pointer as
TABLE argument. This means only allocate name entry.
(allocate_arrays): Correct handling of array element -1.
Because EOF == -1 the value of element 127 must *not* be
mirrored here.
Fill width information from charset tables.
* locale/programs/localedef.c (main): Correct loop over all
categories after change of order from Thu Mar 28 14:22:51 1996.
Add new charset argument to call of `write_all_categories'.
* locale/programs/locales.h (ctype_finish, ctype_output): New
charset argument.
* locale/programs/locfile.c (write_all_categories): Call
`ctype_output' with additional argument charset.
* posix/getconf.c (vars): Add _POSIX_SYNC_IO, _POSIX_ASYNC_IO,
and _POSIX_PRIO_IO definitions.
* posix/posix2_lim.h: Add definition of _POSIX2_CHARCLASS_NAME_MAX
and CHARCLASS_NAME_MAX.
* posix/unistd.h: Document _POSIX_SYNC_IO, _POSIX_ASYNC_IO,
and _POSIX_PRIO_IO.
* stdlib/grouping.h: Prepare for use in wide string functions.
* stdlib/stdlib.h: Correct prototypes for __strto*_internal
functions.
* stdlib/strtod.c: Extend for use as `wcsto{f,d,ld}'.
* stdlib/strtol.c: Extend for use as `wcsto{l,ul,q,uq}'.
* string/strcoll.c: Extend for use as `wcscoll'.
* string/strxfrm.c: Extend for use as `wcsxfrm'.
* sysdeps/generic/confname.h: Add definition of _PC_SYNC_IO,
_PC_ASYNC_IO, _PC_PRIO_IO and _SC_CHARCLASS_NAME_MAX.
* sysdeps/generic/stpncpy.c: Correct return value.
* sysdeps/posix/fpathconf.c: Add handling of _PC_SYNC_IO,
_PC_ASYNC_IO, and _PC_PRIO_IO.
* sysdeps/posix/sysconf.c: Add handling of _SC_REALTIME_SIGNALS,
_SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
_SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC,
_SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE,
_SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING, _SC_SEMAPHORES,
_SC_SHARED_MEMORY_OBJECTS, and _SC_CHARCLASS_NAME_MAX.
* sysdeps/stub/sysconf.c: Ditto.
* sysdeps/unix/sysv/sysv4/sysconf.c: Ditto.
* sysdeps/unix/sysv/linux/Dist: Add sys/sysctl.h.
* sysdeps/unix/sysv/linux/Makefile [subdir == misc]
(sysdep_routines): Add s_sysctl and sysctl.
* sysdeps/unix/sysv/linux/sys/mman.h: Add declaration of mremap.
* sysdeps/unix/sysv/linux/sys/socket.h: New file. Wrapper
around kernel header.
* sysdeps/unix/sysv/linux/sys/sysctl.h: New file. Define
interface to `sysctl' function.
* sysdeps/unix/sysv/linux/syscalls.list: Add mremap and _sysctl.
* sysdeps/unix/sysv/linux/sysconf.c: Add handling of
_SC_CHARCLASS_NAME_MAX.
* sysdeps/unix/sysv/linux/sysctl.c: new file. Implement caller
of _sysctl system call.
* sysvipc/Makefile (routines): Add ftok.
* sysvipc/ftok.c: use variable `proj_id' not `id'. Patch by
David Mosberger-Tang.
* wcsmbs/Makefile (routines): Add wcpcpy, wcpncpy, wcstol,
wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll,
wcsxfrm, wcwidth, and wcswidth.
* wcsmbs/wchar.h: Add declarations for wcpcpy, wcpncpy, wcstol,
wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll,
wcsxfrm, wcwidth, and wcswidth.
Declare internal interfaces for wcsto* functions.
[OPTIMIZE]: Define inline functions for wcsto* functions to
call internal interface functions.
* wcsmbs/wcpcpy.c, wcsmbs/wcpncpy.c: New files. Implement non-
standard function equivalent to stpcpy/stpncpy.
* wcsmbs/wcscoll.c: Implement `wcscoll' function by using
`strcoll' implementation.
* wcsmbs/wcscpy.c, wcsmbs/wcsncpy.c: Use wint_t instead of
wchar_t.
* wcsmbs/wcstod.c: Implement `wcstod' function by using `strtod'
implementation.
* wcsmbs/wcstof.c: Same for `wcstof'.
* wcsmbs/wcstold.c: Same for `strtold'.
* wcsmbs/wcstol.c: Implement `wcstol' function by using `strtol'
implementation.
* wcsmbs/wcstoq.c: Same for `wcstoq'.
* wcsmbs/wcstoul.c: Same for `wcstoul'.
* wcsmbs/wcstouq.c: Same for `wcstouq'.
* wcsmbs/wcswidth.c: Implement `wcswidth' function from X/Open
CAE.
* wcsmbs/wcwidth.c: Ditto for `wcwidth'.
* wcsmbs/wcwidth.h: Common function for definitions of above two
functions.
* wcsmbs/wcsxfrm.c: Implement `wcsxfrm function by using
`strxfrm implementation.
* wctype/wctype.c: Remove case for `wctype_t' being 16 bit type.
* wctype/wctype.h (wint_t): Protect against multiple definition.
(wctype_t): Always define as `unsigned long int'.
* wctype.h: New file. Wrapper around wctype/wctype.h.
* hurd/hurdstartup.c (_hurd_split_args): Function removed.
(_hurd_startup): Use argz functions.
* hurd/hurdexec.c: Use argz functions.
* locale/C-ctype.c: New correct data generated by drepper.
* Rules: Don't use $(libc.a).
Parsing of grouped numbers contributed by Ulrich Drepper.
* stdlib/strtol.c (__strtol_internal): Renamed from strtol. Take
new flag arg; if nonzero, parse locale-dependent thousands
grouping and interpret only the prefix that is correctly grouped.
(strtol): Define this to call _strtol_internal with zero for the flag.
Use a weak symbol for the definition.
* stdlib/strtod.c (strtod, __strtod_internal): Likewise.
Check for the exponent of the number overflowing the float format.
* stdlib/stdlib.h (__strtof, __strtold): Declarations removed.
(__strto{f,d,ld,l,ul,q,uq}_internal): Declare these functions.
[__OPTIMIZE__]: Define inline functions calling those.
* stdlib/grouping.h: New file, written by drepper.
* stdlib/Makefile (distribute): Add grouping.h.
* stdio/vfscanf.c: Grok %' modifier to numeric conversions. Call
__strtoX_internal with the grouping flag set iff the modifier is
present.
Wed Mar 15 00:40:54 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/generic/memchr.c: Fix typos: limit.h -> limits.h.
* mach/Machrules: Produce static deps for all object flavors.
[interface-library]: Remove all these variables and rules.
($(interface-library)-routines): Define this variable.
(extra-libs): Append $(interface-library) to this.
* mach/Makefile (interface-library): Omit .a suffix.
* hurd/Makefile: Likewise.
Tue Mar 14 23:40:31 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio/internals.c (flushbuf): If !FLUSH_ONLY, don't skip out
early if no new data in buffer after priming.
* Makerules (object-suffixes, libtypes): Move all these variables
to Makeconfig.
* Makeconfig (object-suffixes, libtypes): Moved here from Makerules.
* Makerules (build-extra-lib): New canned sequence.
* sysdeps/mach/hurd/euidaccess.c: Include fcntl.h. Declare ERR;
fix uses of FILE and PORT. Remove bogus weak alias for `access'.
* sysdeps/mach/hurd/dirfd.c: Include hurd/fd.h and errno.h.
Add missing semicolon.
* sysdeps/mach/hurd/opendir.c: Include hurd/fd.h. Use a `struct
hurd_fd *' temp var, since DIRP->__fd is a `void *'.
* sysdeps/mach/hurd/readdir.c: Include hurd/fd.h.
* stdlib/wcstombs.c: #if 0 out code for non-ASCII chars until the
locale data format is implemented.
* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
Pass &__sigreturn on the stack to the trampoline code, so it is
not position-dependent.
* stdio/printf_fp.c (NDEBUG): Define this to disable assert.
Don't include <stdarg.h>.
(__printf_fp): Last arg ARGS is now `const void **const';
dereference ARGS[0] instead of using va_arg.
* locale/setlocale.c: In LC_ALL case, initialize CATEGORY before
loop to install data.
* locale/loadlocale.c (_nl_category_num_items): Use _NL_ITEM_INDEX
to extract number from item code.
(_nl_load_locale): Close the descriptor when finished.
* malloc/realloc.c (_realloc_internal): Call _malloc_internal in
place of malloc.
* time/tzfile.c (__tzfile_default): Initialize RULE_STDOFF to zero.