1997-01-23 Paul Eggert <eggert@twinsun.com>
* mktime.c (mktime): Invoke __tzset, not __tzset_internal, to set tz,
so that tzname is set as POSIX requires.
Fri Jan 24 02:49:18 1997 Ulrich Drepper <drepper@cygnus.com>
* dirent/dirent.h: Declare readdir_r also when __USE_POSIX.
* grp/grp.h: Declare *_r functions also when __USE_POSIX.
* pwd/pwd.h: Likewise.
* time/time.h: Likewise.
* posix/unistd.h: Declare ttyname_r also when __USE_POSIX.
* string/string.h: Declare strtok_r also when __USE_POSIX.
* stdio-common/bug7.c: Use tmpnam to generate names for test files.
* stdio-common/tmpnam.c: Update copyright.
* stdio-common/tmpnam_r.c: Likewise.
* sysdeps/unix/sysv/linux/alpha/sys/kernel_termios.h: Protect
against multiple inclusion. Include <termbits.h>.
* sysdeps/unix/sysv/linux/sys/kernel_termios.h: Likewise.
* sysdeps/unix/sysv/linux/net/if.h: Update according to recent
kernel headers. Patch by Philip Blundell <pjb27@cam.ac.uk>.
Thu Jan 23 17:42:00 1997 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/sparc/clone.S: Correct author attribution.
* sysdeps/unix/sysv/linux/net/if_arp (MAX_ADDR_LEN): Add definition.
Thu Jan 23 14:20:34 1997 Ulrich Drepper <drepper@cygnus.com>
* time/tzfile.c (__tzfile_read): Don't allow arbitrary files to be
read when running a setuid program.
Thu Jan 23 04:06:42 1997 Ulrich Drepper <drepper@cygnus.com>
* Make-dist (.PHONY: dist): Remove duplicate declaration.
(README): Depend on version.h not version.c.
* Makefile (README): Depend on version.h not version.c.
* Makeconfig (inst_libdir, inst_slibdir, inst_includedir,
inst_datadir, inst_zonedir, inst_localedir, inst_i18ndir, inst_bindir,
inst_sbindir, inst_infodir, inst_sysconfdir): New variables. Same
as variable withough inst_ but prepended with $(install_root).
(localtime-time): Use $(inst_sysconfdir) not $(sysconfdir).
* Makefile (install-others): Use $(inst_includedir).
(gnu/stabs.h, gnu/lib-names.h): Use $(inst_includedir).
* Makerules (tons of install rules): Use inst_% variables.
* elf/Makefile: Likewise.
* hurd/Makefile: Likewise.
* intl/Makefile: Likewise.
* manual/Makefile: Likewise.
* po/Makefile: Likewise.
* sunrpc/Makefile: Likewise.
* sysdeps/mach/hurd/Makefile: Likewise.
* sysdeps/standalone/i386/force_cpu386/Makefile: Likewise.
* time/Makefile: Likewise.
* config.make.in: Revert patch from Sat Jan 18 22:15:26 1997,
leave install_root in place.
* gnu-versions.h (_GNU_GETOPT_INTERFACE_VERSION): Define to 2.
* posix/getopt.c (GETOPT_INTERFACE_VERSION): Define to 2.
* posix/getopt1.c (GETOPT_INTERFACE_VERSION): Define to 2.
* elf/Makefile [yes==$(has-ldconfig)]: Correct dependencies of
ldconfig.
(CFLAGS-dl-load.c): New variable, avoid gcc warning.
* sysdeps/mach/hurd/configure.in: Add _LIBC_REENTRENT to DEFINES.
* sysdeps/mach/hurd/getdents.c: Update copyright. De-ANSI-declfy.
* sysdeps/stub/getdents.c: Likewise. Correct return value.
* sysdeps/unix/getdents.c: Likewise.
* sysdeps/unix/sysv/getdents.c: Likewise.
* sysdeps/unix/readdir.c: Update copyright.
* sysdeps/unix/bsd/sony/newsos4/Makefile: Correct ifeq arguments.
* sysdeps/unix/bsd/sun/sunos4/Makefile: Likewise.
* sysdeps/unix/sysv/Makefile: Likewise.
* sysdeps/unix/sysv/linux/Makefile: Likewise.
* sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.
* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
* sysdeps/unix/sysv/linux/Dist: Don't distribute kernel_termios.h,
but sys/kernel_termios.h.
* sysdeps/unix/sysv/linux/alpha/Dist: Likewise.
* sysdeps/unix/sysv/linux/Makefile [$(subdir)==termios]
(sysdep_headers): Add sys/kernel_termios.h.
* sysdeps/unix/sysv/linux/kernel_termios.h: Moved to...
* sysdeps/unix/sysv/linux/sys/kernel_termios.h: ...here.
* sysdeps/unix/sysv/linux/sys/tcgetattr.c: Use __kernel_termios and
__KERNEL_NCCS instead of kernel_termios and KERNEL_NCCS resp.
* sysdeps/unix/sysv/linux/alpha/ioctls.h: New file.
* sysdeps/unix/sysv/linux/getdents.c: Correct problems with alignment.
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove getdents.
Reported by Eirik Fuller <eirik@netcom.com>.
* time/Banner: Removed. Wrong and unnecessary information. It's now
in...
* time/README: New file.
* time/Makefile (distribute): Remove Banner, add README.
Wed Jan 22 13:19:56 1997 Richard Henderson <rth@tamu.edu>
* sysdeps/unix/sysv/linux/alpha/ioperm.c (platforms): Add Sable.
(init_iosys): Recognize /etc/alpha_systype as a four-tuple for
the purpose of supporting brand new systems.
(*): The type of iosys variables should be iosys_t.
1997-01-22 Paul Eggert <eggert@twinsun.com>
* strftime.c (_strftime_copytm):
New function, to work around Solaris 2.5 tzset bug.
Wed Jan 22 23:05:14 1997 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/mach/hurd/vdprintf.c: Complete de-ANSI-declfication.
* sysdeps/posix/pipestream.c (writedecl): Fix typo.
Reported by Marcus G. Daniels <marcus@shannon.sysc.pdx.edu>.
Wed Jan 22 13:58:56 1997 Andreas Jaeger <aj@arthur.pfalz.de>
* elf/Makefile (CFLAGS-dl-load.c): New Variable to keep gcc silent
since name_copy is initialized.
Wed Jan 22 16:58:12 1997 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/Makefile (tests): Remove scanf11.
* stdio-common/scanf11.c: Removed.
* stdio-common/vfscanf.c Revert patch of Thu Jan 16 23:39:25 1997.
Although the Corrigendum 1 describes the result as implemented the
even more recent Amendement 1 seconds the position of ISO C:1990
where the %n directive has no effect on the assignment count.
* stdio-common/bug10.c: Likewise.
* stdio-common/scanf1.c: Likewise.
* stdio-common/scanf3.c: Likewise.
* stdio-common/scanf10.c: Likewise.
* stdio-common/tstdiomisc.c: Likewise.
* new-malloc/obstack.h: Don't define malloc using bcopy if malloc
is not available. This leads to problems since bcopy does not
return a value. Instead define _obstack_memcpy based on memcpy or
bcopy. This name isn't used outside obstack.h and so no problems
from using the memcpy function in a file including obstack.h can
result.
Reported by Martin Trapp <trapp@ipd.info.uni-karlsruhe.de>.
Tue Jan 21 18:35:55 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* misc/regexp.h (compile): Fix typos.
Tue Jan 21 01:01:59 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/sys/procfs.h (struct elf_prpsinfo): Fix
type of pr_{pid,ppid,pgrp,sid} fields.
* sysdeps/unix/sysv/linux/alpha/sys/procfs.h (struct
elf_prpsinfo): Likewise.
1997-01-21 Paul Eggert <eggert@twinsun.com>
* posix/getopt.c (_getopt_internal): Return -1, not EOF, when args
are exhausted; this is required by POSIX.2.
* catgets/gencat.c, db/makedb.c, locale/programs/locale.c,
locale/programs/localedef.c, manual/examples/subopt.c,
posix/getopt.c, posix/getopt1.c, stdio-common/bug4.c,
sunrpc/rpcinfo.c (main): Check getopt return value against -1, not EOF.
Tue Jan 21 23:10:40 1997 Ulrich Drepper <drepper@cygnus.com>
* version.h (VERSION): Bump to 1.102.
* sysdeps/unix/sysv/linux/alpha/Dist: Add kernel_sigaction.h.
* elf/Makefile: Don't use CFLAGS-dl-load.c, but instead
CPPFLAGS-dl-load.c so that dependencies can be determined correctly.
* elf/dl-load.c: Fix comment.
* time/Banner: New file.
* time/Makefile (distribute): Add Banner.
Update from ADO tzcode1997a and tzdata1997a.
* time/antarctica: Update.
* time/australia: Update.
* time/zdump.c: Update.
* time/zic.c: Update.
* time/zone.tab: Update.
Mon Jan 20 08:38:32 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* config.make.in (has-ldconfig): New variable.
* configure, configure.in (has_ldconfig): New substitute.
* sysdeps/unix/sysv/linux/configure.in (has_ldconfig): New,
check if $srcdir/elf/ldconfig.c exists.
* Makeconfig (rootsbindir): New, default as
$(exec_prefix)/sbin.
(rtld-version-installed-name): New, default as
ld-$(version).so.
* Makefile (install): Call `$(common-objpfx)elf/ldconfig -d'
only if $(cross-compiling) is no and $(build-shared) is yes.
* Makerules (make-shlib-link): New macro.
($(slibdir)/libfoo.so.$(libfoo.so-version)): Use
$(make-shlib-link) for symlink.
(install-rootsbin, install-rootsbin-nosubdir): New.
(install-no-libc.a-nosubdir): Add
install-rootsbin-nosubdir.
* Rules (others): Add $(install-rootsbin).
* config.make.in (rootsbindir): New.
* configure, configure.in (libc_cv_rootsbindir): New
substitute.
* elf/Makefile (others, install-rootsbin): New, set to
ldconfig.
(+link): New for static linking.
($(slibdir)/$(rtld-version-installed-name)): New.
($(slibdir)/$(rtld-installed-name)): Depend on
$(slibdir)/$(rtld-version-installed-name) and use
$(make-shlib-link) for symlink.
* sunrpc/xdr.c (xdr_string): Return FALSE if sp == NULL
while XDR_ENCODE.
* sysdeps/unix/sysv/linux/a.out.h: Use #include_next for
glibc internals.
* sysdeps/unix/sysv/linux/configure.in (libc_cv_rootsbindir):
New, set to "/sbin" if "$prefix" == "/usr".
Tue Jan 21 13:38:39 1997 Ulrich Drepper <drepper@cygnus.com>
* Makefile (distribute): Add glibcbug.in.
Reported by Philip Blundell <pjb27@cam.ac.uk>.
* elf/Makefile ($(objpfx)trusted-dirs.h): Create elf/ subdir in
build directory if necessary.
Reported by marcus@shannon.sysc.pdx.edu (Marcus G. Daniels).
Sun Jan 19 04:38:20 1997 Ulrich Drepper <drepper@cygnus.com>
* config.make.in (have-ksh, KSH): New variables. Will be filled
in by configure.
* configure.in: Add test for ksh like shell (prefer bash).
* time/Makefile (tests): Depend on install-test-data.
(distribute): Add simplebackw.
(generated-dirs): New variable.
[$(have-ksh)==yes] (install-others): Add iso3166.tab and zone.tab.
(install-bin): Add tzselect.
(install-test-data): Install the zoneinfo files which are needed
for the test case in the build directory.
(test-tz-ENV): New variable. Call test-tz program using data in
build directory.
* time/simpleback: New file.
* time/test-tz.c: Pretty print.
* time/tzfile.c: Use value of environment variable TZDIR as directory
to look for zone info files.
don't let search for DST data destroy already found values.
* time/tzselect.ksh: Use @KSH@ and @TZDIR@ to be substituted when
installing.
* time/tzset.c (__tzset_internal): Avoid freeing string twice.
Set DST zone name to normal zone name if no information is provided.
* time/mktime.c (mktime): Call __tzset_internal to use current
value of TZ.
* Makerules (common-clean): Remove $(generated-dirs) inclusing content.
* glibcbug.in: Fix several bugs. Reported by several people.
* elf/Makefile: Correct dependecies for $(objpfx)ldd.
* inet/netinet/ip.h: Define IPTOS_LOWCOST and IPTOS_MINCOST.
* locale/C-time.c: Update copyright.
* locale/localeinfo.h: Likewise.
* sysdeps/unix/bsd/bsd4.4/direntry.h: Likewise.
* locale/programs/ld-time.c (time_finish): Correct message string.
* locale/programs/linereader.c (lr_token): Use correctly `number'
not `digit' in message string.
* stdlib/strtol.c [UNSIGNED]: Don't punt immediately when `-' is
seen. Instead return ULONG_MAX and set ERANGE.
* stdlib/tst-strtol.c: Correct test to reflect above change.
Sun Jan 19 03:22:30 1997 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/sys/mtio.h: Don't use <linux/mtio.h>.
We must not use <linux/posix_types.h>.
* sysdeps/unix/sysv/linux/sys/ipc_buf.h: Don't use __kernel_* types
since we must not use <linux/posix_types.h>.
* sysdeps/unix/sysv/linux/sys/procfs.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/sys/ipc_buf.h: New file. Similar
to sysdeps/unix/sysv/linux/sys/ipc_buf.h, but use alpha relavent
types.
* sysdeps/unix/sysv/linux/alpha/sys/procfs.h: New file. Similar
to sysdeps/unix/sysv/linux/sys/procfs.h, but use alpha relavent
types.
Sun Jan 19 01:48:20 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* sysdeps/libm-i387/e_exp.S: Correct computation of fractional
part.
* sysdeps/libm-i387/e_expf.S: Likewise.
* sysdeps/libm-i387/e_expl.S: Likewise.
* sysdeps/libm-i387/s_expm1.S: Correct computation of fractional
part. Take care of additional value left on stack by fscale.
* sysdeps/libm-i387/s_expm1f.S: Likewise.
* sysdeps/libm-i387/s_expm1l.S: Likewise.
Fri Jan 17 17:45:32 1997 Ulrich Drepper <drepper@cygnus.com>
* posix/getopt.c: Change all direct usages of `gettext' to `_'.
* sysdeps/generic/sysd-stdio.c (__stdio_reopen): Add missing
parameter.
Reported by Harmanjit Singh <harman@netearth.iitd.ernet.in>.
Thu Jan 16 23:39:25 1997 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/Makefile (tests): Add scanf11.
* stdio-common/scanf11.c: New file.
* stdio-common/vfscanf.c (__vfscanf): Increment `done' when %n
was processed and value is not suppressed.
* stdio-common/bug10.c: Correct test to expect %n increment the
return value of scanf.
* stdio-common/scanf1.c: Likewise.
* stdio-common/scanf3.c: Likewise.
* stdio-common/scanf10.c: Likewise.
* stdio-common/tstdiomisc.c: Likewise.
* time/strptime.c: Add lots of conditional compiling to enable use
outside glibc. When used in glibc, make sure C locale format
strings will always be recognized.
Sat Jan 11 18:53:47 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
Fix definitions so that they work with __kernel_dev_t.
Sat Jan 11 14:24:10 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/kernel_sigaction.h,
sysdeps/unix/sysv/linux/alpha/kernel_sigaction.h,
sysdeps/unix/sysv/linux/sigaction.c: New files.
* sysdeps/unix/sysv/linux/syscalls.list: Add s_sigaction.
Sun Jan 12 15:22:33 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libc-symbols.h (link_warning): Make sure that the .gnu.warning
section is not allocated.
Update and reformat copyright.
Sun Jan 12 12:19:28 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/Makefile ($(objpfx)ldd): Fix depedency list.
Sat Jan 11 15:11:26 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/Makefile ($(common-objpfx)sysd-syscalls): Fix
command so that it works in subdirectories.
Wed Jan 8 22:07:58 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/i386/syscalls.list: Add s_getgroups and
s_setgroups.
* sysdeps/unix/sysv/linux/m68k/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/i386/getgroups.c,
sysdeps/unix/sysv/linux/i386/setgroups.c,
sysdeps/unix/sysv/linux/m68k/getgroups.c,
sysdeps/unix/sysv/linux/m68k/setgroups.c: New files.
Wed Jan 8 19:42:59 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (config.status): Delete bogus rule.
($(objpfx)glibcbug): Renamed from plain `glibcbug', depend on
config.status in build directory, fix command to change to build
directory.
* Makeconfig ($(common-objpfx)config.status): Depend on version.h.
Thu Jan 9 08:47:54 1997 Andreas Jaeger <aj@arthur.pfalz.de>
* glibcbug.in (while): We test for four and not five conditions,
set MAIL_AGENT instead of RMAIL, filter spaces and tabs.
Thu Jan 16 22:00:27 1997 Ulrich Drepper <drepper@cygnus.com>
* misc/syslog.c: Don't define cancel_handler if _LIBC_REENTRANT
is not defined. Reported by Andreas Jaeger.
Thu Jan 9 08:47:54 1997 Andreas Jaeger <aj@arthur.pfalz.de>
* new-malloc/malloc.c (__MALLOC_P): define call to pthread
initializer only if NO_THREADS is not defined.
Wed Jan 8 21:28:58 1997 Andreas Jaeger <aj@arthur.pfalz.de>
* resolv/nss_dns/dns-host.c: Clean-up: delete unnecessary includes
and variables.
Thu Jan 16 21:50:27 1997 Ulrich Drepper <drepper@cygnus.com>
* inet/arpa/inet.h: Include <netinet/in.h> to get struct in_addr
defined.
Tue Jan 7 17:29:59 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (LDLIBS-c.so): New variable.
Tue Jan 7 19:22:00 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile ($(includedir)/gnu/lib-names.h): Define the library
names as strings, not as sequence of tokens that may fall apart.
Fri Jan 10 14:08:41 1997 Roland McGrath <roland@fmh.frob.com>
* time/tzfile.c (__tzfile_read): Check for bogus type and zone name
indices in data file and punt, so a bogus file can't crash us.
Thu Jan 16 20:29:15 1997 Ulrich Drepper <drepper@cygnus.com>
* values.h [__USE_MISC]: Define BITSPERBYTE.
Fri Jan 17 14:16:28 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* stdio/vdprintf.c: Moved file to ...
* sysdeps/posix/vdprintf.c: Here. De-ansideclificate.
* sysdeps/stub/vdprintf.c: New file.
* sysdeps/mach/hurd/vdprintf.c: New file.
Thu Jan 9 15:59:35 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* sysdeps/mach/hurd/posix_opt.h: New file.
* sysdeps/mach/hurd/sigwait.c (sigwait): Don't affect signal mask.
* sysdeps/unix/bsd/tcsendbrk.c (tcsendbreak): Finish
deansideclification.
* sysdeps/mach/libc-lock.h: Add kludges to pretend to implement
recursive locks.
Tue Jan 7 09:48:15 1997 Andreas Jaeger <aj@arthur.pfalz.de>
* signal/sigempty.c (sigemptyset): Correct typo: Empty set should
have all bits zero.
Thu Dec 12 03:32:21 1996 Ulrich Drepper <drepper@cygnus.com>
* libio/_G_config.h: Add definition of _G_int16_t, _G_int32_t,
_G_uint16_t, _G_uin32_t, _G_HAVE_BOOL, _G_HAVE_MMAP, and
_G_ARGS.
Change libio buffer handling to allocate internal buffers using
mmap if possible.
* libio/filedoalloc.c (_IO_file_doallocate): Change call to
ALLOC_BUF.
* libio/genops.c (_IO_setb, _IO_default_finish): Change call
to FREE_BUF.
(_IO_default_doallocate): Change call to ALLOC_BUF.
* libio/libioP.h: Change definition of ALLOC_BUF and FREE_BUF
to use mmap/munmap when possible.
* libio/memstream.c: Don't use ALLOC_BUF, but directly malloc.
* libio/vasprintf.c: Likewise.
Patch by HJ Lu.
* libio/libio.h: Define NULL as __null only for gcc-2.8 and up.
* libio/libioP.h: Likewise.
* libio/fileops.c (_IO_file_read, _IO_file_write): Don't
restart syscall when EINTR was returned. Necessary for POSIX.1.
* libio/strops.c (_IO_str_overflow): Add cast to prevent warning.
* new-malloc/malloc.c (heap_trim): Correctly place parentheses to
prevent warnings.
* nis/Makefile: Remove rules for bsd-tools which are not part
of glibc.
Patch by Thorsten Kukuk.
* nis/ypclnt.c: Add prototype for xdr_free.
Add const to first parameter for __yp_bind.
* nis/nss_compat/compat-pwd.c (getpwent_next_netgr, getpwent_next_nis,
getpwent_next_file): Variable `p2len' must have type size_t.
* nis/nss_nis/nis-alias.c: Add casts to prevent warnings.
* nis/nss_nis/nis-ethers.c: Likewise.
* nis/nss_nis/nis-grp.c: Likewise.
* nis/nss_nis/nis-hosts.c: Likewise.
* nis/nss_nis/nis-network.c: Likewise.
* nis/nss_nis/nis-proto.c: Likewise.
* nis/nss_nis/nis-pwd.c: Likewise.
* nis/nss_nis/nis-rpc.c: Likewise.
* nis/nss_nis/nis-service.c: Likewise.
* nis/nss_nis/nis-spwd.c: Likewise.
* nis/rpcsvc/yp_prot.h (ypreq_key): Change type of members to
`const char *'.
(ypmaplist): Change member names to `map' and `next' and provide
#defines for old names.
Patch by Thorsten Kukuk.
* nss/nss_files/files-parse.c (parse_line, parse_list): Change
type for `datalen' parameter to size_t.
* shsdow/lckpwdf.c: Use fcntl forlocking, not flock.
* stdio-common/printf.c [USE_IN_LIBIO]: Provide alias _IO_printf
for printf.
* stdio-common/sscanf.c [USE_IN_LIBIO]: Provide alias _IO_sscanf
for sscanf.
Patch by HJ Lu.
* stdio-common/tmpfile.c: Update copyright.
* stdio-common/vfscanf.c: Correctly handle EINTR error from fgetc
function.
Don't eat white space for `C' format.
* stdlib/tst-strtol.c [~0UL != 0xffffffff]: Fix typo in test data.
* sysdeps/generic/abort.c: Update copyright. De-ANSI-declfy.
* sysdeps/i386/abort.c: Removed. This version does not use
signal SIGABRT.
* sysdeps/i386/fpu/__math.h: Define __NO_MATH_INLINES if not using
gcc-2.8 or up.
Patch by HJ Lu.
* sysdeps/posix/tempname.c: Test for error but EEXIST after open
call. If EMFILE, ENFILE, or EINTR return with error.
Wed Dec 11 14:43:52 1996 Ulrich Drepper <drepper@cygnus.com>
* gnu-versions.h: Set _GNU_OBSTACK_INTERFACE_VERSION back to 1.
We are compatible again.
* new-malloc/obstack.h (struct obstack): Add back alloc_failed bit
even though it is not used.
* malloc/obstack.h: Likewise.
* new-malloc/obstack.c (_obstack_begin, _obstack_begin_1): Initialize
alloc_failed bit to 0.
* time/strftime.c: Extend for Emacs' needs. Recognize field width,
%P format and `0' modifier.
Tue Dec 10 21:20:44 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (make-link): Don't discard exit codes of intermediate
commands. Always use rellns-sh if symbolic links are available.
Tue Dec 10 20:09:51 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/netinet/in.h: Enclose #include
<linux/in.h> in __BEGIN_DECLS/__END_DECLS to avoid linkage
conflict of ntohs etc. in <asm/byteorder.h>.
Tue Dec 3 08:38:15 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/unix/alpha/sysdep.S: Remove definition of __errno_location.
Reformat copyright.
* elf/rtld.c (_dl_start): Don't dereference the value returned by
elf_machine_got to get _DYNAMIC, instead call new function
elf_machine_dynamic.
* sysdeps/alpha/dl-machine.h: Permute elf_machine_got to
elf_machine_dynamic. Reformat copyright.
* sysdeps/i386/dl-machine.h: Likewise.
* sysdeps/m68k/dl-machine.h: Likewise.
* sysdeps/mips/dl-machine.h: Likewise.
* sysdeps/sparc/dl-machine.h: Likewise.
* sysdeps/stub/dl-machine.h: Likewise.
Tue Oct 15 23:46:00 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* MakeTAGS (sysdep_dirs): Include add-on sysdep directories.
Tue Dec 3 02:06:18 1996 Ulrich Drepper <drepper@cygnus.com>
* Makerules ($(libdir)/libc.so): Make first line of generated
link script contain `/* GNU ld script'. This will be used in
ldconfig to check for linker scripts.
* sysdeps/mach/hurd/libc-ldscript: Likewise.
* sysdeps/mach/hurd/libc_p-ldscript: Likewise.
* stdlib/getsubopt.c: Update copyright. Correct typo in comment.
Wed Nov 27 06:10:10 1996 Ulrich Drepper <drepper@cygnus.com>
* Makefile: Fix typo.
* configure: Require autoconf-2.11.
* elf/dl-deps.c: Terminate duplicate list.
* libio/libio.h: Add prototypes for _IO_seekoff and _IO_seekpos.
* libio/strfile.h: Update from current libg++.
* libio/strops.c: Likewise.
* login/Makefile (routines): Update after correction of reentrant
interface.
* login/endutent.c: Removed.
* login/endutent_r.c: Likewise.
* login/pututline.c: Likewise.
* login/pututline_r.c: Likewise.
* login/setutent.c: Likewise.
* login/setutent_r.c: Likewise.
* login/getutent.c: Update for new interface.
* login/getutent_r.c: Likewise.
* login/getutid.c: Likewise.
* login/getutid_r.c: Likewise.
* login/getutline.c: Likewise.
* login/getutline_r.c: Likewise.
* login/login.c: Likewise.
* login/logout.c: Likewise.
* login/logwtmp.c: Likewise.
* login/utmp.h: Likewise.
* sysdeps/unix/getlogin.c: Likewise.
* sysdeps/unix/getlogin_r.c: Likewise.
* login/utmp-private.h: New private header.
* login/utmp_db.c: Stub DB backend for utmp handler.
* login/utmp_file.c: File backend for utmp handler.
* sysdeps/gnu/utmpbits.h (struct utmp): Add some more fields.
(enum utlogin): List of record types.
(struct exit_status): Record to align with other implementations.
* sysdeps/generic/paths.h: Add _PATH_UTMP_DB.
* sysdeps/unix/sysv/linux/paths.h: Likewise.
* sysdeps/generic/pty.c: Use getgrnam_r instead of getgrnam.
* sysdeps/stub/getlogin.c: Update copyright.
* sysdeps/stub/getlogin_r.c: Likewise.
* nss/getXXbyYY_r.c: Use -1l for error-pointer value instead of -1.
* nss/getXXent_r.c: Likewise.
* nss/nsswitch.c: Likewise.
* posix/Makefile (headers): Add wait.h.
* posix/wait.h: New file.
* posix/sys/types.h: Always define intN_t types.
* stdio-common/Makefile: Update copyright.
Use -Wno-format flag for scanf4.c and scanf7.c.
* stdlib/stdlib.h: Reformat.
* time/africa: Update from ADO tzdata1996m.
* time/antarctica: Likewise.
* time/asia: Likewise.
* time/australia: Likewise.
* time/etcetera: Likewise.
* time/europe: Likewise.
* time/northamerica: Likewise.
* time/southamerica: Likewise.
* time/zone.tab: Likewise.
Fri Nov 22 19:34:12 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/posix/getcwd.c (__getcwd): After resizing the buffer
move the current contents to the end and relocate file name
pointer to upper half of the buffer.
Sun Nov 24 04:56:19 1996 Ulrich Drepper <drepper@cygnus.com>
* time/africa: Update from ADO tzdata1996m.
* time/antarctica: Likewise.
* time/asia: Likewise.
* time/australia: Likewise.
* time/etcetera: Likewise.
* time/europe: Likewise.
* time/nothamerica: Likewise.
* time/southameria: Likewise.
* time/zone.tab: Likewise.
* sysdeps/unix/sysv/linux/sys/serial.h: New file.
* sysdeps/unix/sysv/linux/Makefile [$(subdir)=misc] (sysdep_headers):
Add sys/serial.h.
* sysdeps/unix/sysv/linux/Dist: Add sys/serial.h.
* posix/wait.h: New file.
* posix/Makefile (headers): Add wait.h.
Sat Nov 23 17:27:52 1996 Roland McGrath <roland@gnu.ai.mit.edu>
* Makeconfig ($(common-objpfx)soversions.mk): Use regular
expression instead of shell pattern matching.
* shlib-versions: Change to regular expressions.
Sat Nov 23 13:24:55 1996 Ulrich Drepper <drepper@cygnus.com>
* io/stat.c: Add section from libgcc to copyright comment
to allow this file to be statically linked in applications.
* io/fstat.c: Likewise.
* io/lstat.c: Likewise.
* io/mknod.c: Likewise.
Fri Nov 22 15:14:23 1996 Ulrich Drepper <drepper@cygnus.com>
* csu/initfini.c: Add section from libgcc to copyright comment
to allow this file to be statically linked in applications.
* malloc/obstack.h [!_LIBC && !HAVE_STRING_H]: Define memcpy if
not already defined.
(obstack_grow, obstack_grow0): Correct placement of braces.
* gnu-versions.h (_GNU_OBSTACK_INTERFACE_VERSION): Define to 2.
* malloc/obstack.c (OBSTACK_INTERFACE_VERSION): Define to 2.
Thu Nov 21 19:54:51 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (make-link): Simplify by changing directory only if
not using rellns-sh; check whether we really have symbolic links.
* rellns-sh: Fix the case of $(dirname $2) being a prefix of
$(dirname $1); use status of ln for exit code; make more robust
against multiple slashes in a row.
Thu Nov 21 13:05:21 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* configure.in (after AC_CANONICAL_HOST): mutate *-*-gnu* names
into *-*-gnu-gnu*.
* shlib-versions (gnu versions): Recognize *-*-gnu-gnu* instead of
the three-part name, to distinguish correctly from *-*-linux-gnu*.
* sysdeps/mach/hurd/Makefile ($(libdir)/libc.so): Depend on
$(rpcuserlibs).
* sysdeps/mach/hurd/Makefile (install-others): Add
$(libdir)/libc_p.a.
($(libdir)/libc_p.a): New rule.
* sysdeps/mach/hurd/libc_p-ldscript: New file.
* sysdeps/mach/hurd/Dist: Add libc_p-ldscript.
Wed Nov 20 20:28:21 1996 Richard Henderson <rth@tamu.edu>
* Makerules (make-link): Use $(shell) to find rellns-sh before we cd.
* time/Makefile: Likewise.
* sysdeps/alpha/elf/Makefile: New file. Build crtbegin.o & crtend.o.
* sysdeps/alpha/elf/Dist: New file.
* sysdeps/alpha/elf/crtbegin.S, sysdeps/alpha/elf/crtend.S: New files.
The bits currently distributed with GCC fail in two ways -- they don't
understand multiple .got subsections and the extents of the lists are
dynamicly bound meaning that the application's lists get executed
multiple times and the library's lists never get executed.
Wed Nov 20 00:42:45 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* stdlib/strtod.c: Fix previous change.
Wed Nov 20 22:07:58 1996 Andreas Jaeger <aj@arthur.pfalz.de>
* time/Makefile ($(installed-localtime-file)): Use $(..) to find
rellns-sh script.
Wed Nov 20 12:50:54 1996 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/Makefile: Add CFLAGS-scanf7.c to prevent warning.
Likesie for scanf4.c
Wed Nov 20 02:04:11 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/sigsuspend.c: Make sigsuspend a weak
alias of __sigsuspend.
* grp/grp.h: Correct comment about POSIX compliance.
* pwd/pwd.h: Likewise.
* login/utmp.h: Update copyright and pretty-print prototypes.
* sysdeps/generic/paths.h: Add _PATH_LASTLOG, _PATH_UTMP and
_PATH_WTMP from utmpbits.h.
* sysdeps/unix/sysv/linux/paths.h: Likewise.
* sysdeps/generic/utmpbits.h: Remove here.
* sysdeps/gnu/utmpbits.h: Likewise.
* misc/sys/uio.h: Place __BEGIN_DECLS correctly.
Pretty-print prototypes.
* sysdeps/unix/sysv/linux/sparc/clone.S: New file. Taken from
LinuxThreads-0.5.
Tue Nov 19 13:43:07 1996 Richard Henderson <rth@tamu.edu>
* inet/ether_hton.c: Include <string.h>.
* inet/ether_ntoh.c: Likewise.
* inet/rexec.c: Get errno, index, getpass, getlogin from headers.
* misc/search.h: Fix hcreate_r argument type (unsigned -> size_t).
* misc/sys/cdefs.h: Change __long_double_t definition from typedef
to define. Jim Nance reports problems building XEmacs otherwise.
* resolv/gethnamaddr.c: Protect h_errno redefinition.
* resolv/getnetnamadr.c: Likewise.
* resolv/herror.c: Likewise.
* sysdeps/generic/sigset.h (__SIGSETFN): Operator ## doesn't work
with -traditional. Reported by Eric Youngdale. While we're at this,
don't do error checking in the __ functions. This is consistent
with the sysv4 definitions and seems Right.
* signal/signal.h: Don't __OPTIMIZE__ sigops to __ versions. Add
prototype for __sigsuspend.
* sysdeps/posix/sigblock.c: Optimize sigmask <-> sigset_t conversions
for sigset_t == unsigned long. De-ansidecl-ify. Reformat copyright.
* sysdeps/posix/sigpause.c: Likewise.
* sysdeps/posix/sigsetmask.c: Likewise.
* sysdeps/posix/sigvec.c: Likewise.
* sysdeps/posix/sigintr.c: Reformat copyright.
* sysdeps/posix/signal.c: Check signal number out of range since
__sigismember doesn't anymore. Reformat copyright.
* sysdeps/posix/sigwait.c: Use __ versions of sigfillset, sigismember,
sigdelset, sigaction, and sigsuspend.
* stdlib/drand48-iter.c (__drand48_iterate): Cast state fragments
to the wider type before shifting.
* sysdeps/alpha/bsd-_setjmp.S: Silence assembler warning "$at used
without .set noat" in profiling hook.
* sysdeps/alpha/bsd-setjmp.S: Likewise.
* sysdeps/alpha/htonl.S: Likewise.
* sysdeps/alpha/htons.S: Likewise.
* sysdeps/alpha/s_copysign.S: Likewise.
* sysdeps/alpha/setjmp.S: Likewise.
* sysdeps/alpha/stpcpy.S: Likewise.
* sysdeps/alpha/strcat.S: Likewise.
* sysdeps/alpha/strcpy.S: Likewise.
* sysdeps/alpha/strncat.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/brk.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/llseek.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise. Rename
function to __sigsuspend and add weak alias.
* sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise. Add missing END.
* sysdeps/alpha/w_sqrt.S: Define _ERRNO_H so <errnos.h> defines EDOM.
* sysdeps/unix/execve.S: Match PSEUDO_END symbol with the symbol
SYSCALL__ actually generated.
* sysdeps/unix/sysv/linux/errnos.h [_LIBC_REENTRANT]: Reflexively
#define __set_errno, as several imported subsystems (eg. BIND) check
that the symbol is defined.
* sysdeps/unix/sysv/linux/getsysstats.c: Include <alloca.h>.
* sysdeps/alpha/memcpy.S: Temporarily remove until I can find a bug
that manifests in GCC.
Tue Nov 19 11:10:05 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* sysdeps/posix/writev.c (writev): COUNT parm is now int.
* sysdeps/posix/readv.c (readv): Likewise.
Tue Nov 19 15:28:29 1996 Ulrich Drepper <drepper@cygnus.com>
* nss/nss_dns/dns-network.c: Change return type of all functions
to enum nss_status.
Reported by NIIBE Yutaka.
* nss/nss_dns/dns-host.c: Update copyright.
Fri Nov 15 20:16:38 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* config.make.in: Remove definition of top_absdir.
* configure.in: Likewise. Use $(..) instead.
* Makerules (make-link): Use $(..) to find rellns-sh script.
Sat Nov 16 15:52:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* manual/nss.texi (Name Service Switch): Fix reference to
`frobnicate'.
Fri Nov 15 22:08:33 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
sys/mtio.h.
Mon Nov 18 05:51:13 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/waitstatus.h (__WIFSIGNALED): Rename local
variable from __stat to __status to prevent shadowing.
* sunrpc/rpc/clnt.h (clntudp_create, clntudp_bufcreate): Likewise
for parameter __wait.
Reported by NIIBE Yutaka.
Mon Nov 18 02:05:38 1996 Ulrich Drepper <drepper@cygnus.com>
* misc/regexp.c: New file. Implementation of obsolete interface
to regular expression matcher (required in XPG4.2).
* misc/regexp.h: New file. Header for above.
* misc/Makefile (headers): Add regexp.h.
(routines): Add regexp.c.
Update copyright.
Sun Nov 17 21:50:24 1996 Andreas Jaeger <aj@arthur.pfalz.de>
* stdlib/tst-strtod.c (main): Add arguments for main.
* stdlib/tst-strtol.c (main): Likewise.
Sun Nov 17 21:15:05 1996 Ulrich Drepper <drepper@cygnus.com>
* configure.in: Substitute libc_cv_slibdir and libc_cv_sysconfdir
in output files.
* sysdepes/unix/sysv/linux/configure: Define libc_cv_slibdir to /lib
and sysconfdir to /etc if $prefix is /usr.
* config.make.in: Add slibdir, sysconfdir and BASH to be replaced.
* elf/Makefile ($(objpfx)ldd): Install ldd.bash.in if
$(have-bash2) is yes.
* elf/ldd.bash.in: Add copyright and various cleanups.
* elf/ldd.sh.in: Likewise.
Implement RTLD_NEXT.
* elf/dlfcn.h: Define RTLD_NEXT.
* elf/dl-deps.c: Build second searchlist which contains duplicates.
* elf/dl-lookup.c (_dl_lookup_symbol_skip): New function. Used
for RTLD_NEXT lookup.
Rewrite _dl_lookup_symbol to put common parts for both lookup
functions in a separate function.
* elf/dlsym.c: Handle RTLD_NEXT by calling _dl_lookup_symbol_skip.
* elf/link.h (struct link_map): Add l_dupsearchlist and
l_ndupsearchlist.
Add prototype for _dl_lookup_symbol_skip.
* sunrpc/Makefile (rpcsvc): Add rusers.
* sunrpc/rpcsvc/rnusers.x: Remove. Obsolteted by rusers.x.
* sunrpc/rpcsvc/rusers.x: New file.
Sun Nov 17 04:24:35 1996 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/vfprintf.c [USE_IN_LIBIO] (buffered_vfprintf): Call
__libc_lock_init for local lock.
Reported by a sun <asun@zoology.washington.edu>.
[!USE_IN_LIBIO] (PAD): Optimize a bit.
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.
Sat Nov 2 01:48:47 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/errnos.h: Move declaration of errno
and __errno_location to correct position.
Thu Oct 31 22:51:25 1996 Ulrich Drepper <drepper@cygnus.com>
* Makefile (distribute): Add rellns-sh.
* rellns-sh: New file.
* Makerules (make-link): Use rellns-sh.
* time/Makefile ($(installed-localtime-file)): Likewise.
Thu Oct 31 11:33:01 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile ($objpfx)ldd) Substitute $(version) for @VERSION@.
(distribute): Add ldd.bash.in.
* elf/ldd.sh.in: Process --help and --version parameter.
Correct comments.
* elf/ldd.bash.in: New file.
* stdlib/stdlib.h: Add prototype for clearenv.
* sysdeps/generic/setenv.c: Add implementation of clearenv.
(setenv): Handle __environ == NULL correctly.
* sysdeps/stub/setenv.c: Add stub definition for unsetenv and
clearenv.
* sysdeps/generic/putenv.c: Correct layout to fit in libit.
* sysdeps/generic/setenv.c: Likewise.
* stdlib/strtol.h: Likewise.
* time/sys/time.h: Define __need_timeval and include <timebits.h>.
Remove definition of struct timeval.
* sysdeps/stub/timebits.h [__need_timeval]: Define struct timeval
using `time_t' for members.
* sysdeps/unix/sysv/linux/timebits.h [__need_timeval]: Likewise.
* sysdeps/unix/sysv/linux/alpha/timebits.h: New file. Same
as old Linux specific version.
* string/argz.h: Use __const in definitions.
* inet/herrno.c: Don't define __h_errno, only h_errno otherwise the
__syscall_error defined.
TRACE_MODE.
Craig Metz.
arithmetic.
buggy and more competent people work on a usable version which is
distributed separately.
`finitel'.
better message if it is not available.
whether read failed.
PSEUDO_END macro.
Especially on the currently supported ELF systems the nlist
function comes with the libelf.
"$(i18ndir)/charmaps".
net/if_arp.h, and net/route.h.
version.
EXTERN_PARSER is defined.
set errno (to ENOMEM).
nothing is found. This guarantees all subsequent calls behave
the same.
the file even if no `era's are specified.
pointers.
_llseek to _llseek (not llseek).
Initialize `result'.
end_alt_digits.
__libc_force_cancel_wrapper when compiling reentrant version.
a weak alias.
make tcdrain a weak alias.
lseek, open, read, and write to have __libc_ prefix and make old
names a weak alias.
to fpathconf.
__libc_setlocale_lock.
ld.so.preload. Suggested by David Engel <david@elo.ods.com>.
on the same device as the password file.
variable.
to lock when passing it to __libc_lock_init macro.
sysdep.h to the top outside of #ifndef PIC. Don't include errnos.h.
Use the ENTRY macro.
9th field.
and sys/vt.h.
`_dl_start' so that linking fails if this file should ever be used
in ld.so.
RMS' last standard revision.
(sysdep_headers): Remove sys/sysinfo.h.
match files in the sysdeps hierachy (welcome back,
sys/syscall.h!).
categories which succeeded to load after a wrong or missing data
file was observed.
_IO_flockfile and _IO_funlockfile resp.
all three versions of the math function.
non-trivial inline functions.
rpath-link so that running the check finds the new library.
daylight saving, timezone by time zone.
syscall_error handler for reentrant libc.
warning.
_IO_getc_unlocked.
in version information banner.
clearerr_u, feof_u, ferror_u, fputc_u, getc_u, getchar_u,
iofflush_u, putc_u, putchar_u, ioflockfile.
using __errno_location function.
syscall_error handler for reentrant libc.
definition of function itself.
funlockfile.
_malloc_loc.
but _POSIX_THREAD_DESTRUCTOR_ITERATIONS.
Add macro `errno' to get thread specific variable.
__errno_location function.
* malloc/free.c (free): __lib_malloc_lock -> __libc_malloc_lock.
case, so don't prepend uppercase `ISO' for only numeric arg.
call to __libc_lock_lock.
sys/sysmacros.h. Reported by Curtiss <1CMC3466@IBM.MTSAC.EDU>.
stamp file.
generating stamp file.
implementation.
`decimal' char is 0.
noexpr to "^[nN]"; this conforms to POSIX.2.
conform to POSIX.2.
mon_grouping, int_frac_digits, frac_digits, p_cs_precedes,
p_sep_by_space, n_cs_precedes, n_sep_by_space, p_sign_posn, and
n_sign_posn to CHAR_MAX, as required by the POSIX Standard.
variable.
this changes the global state for `localtime' and `gmtime'. Use
`__localtime_r'/`__gmtime_r' instead.
state.
getutid_r() fails with ESRCH. Reported by Miquel van Smoorenburg.
for "Jensen" so _bus_base() returns 0 on that platform. Use
_bus_base_sparse() to determine base address of sparse memory.
are now in $P/stdio-common.pot.
script at run time, not configure time.
warning.
sorted.
inet_net_pton, inet_net.
value of sprintf.
functions instead of BSD `b*' functions.
$(objpfx)/mach-syscalls.mk.
<marcus@sysc.pdx.edu> for the patch.)
before returning. Reported by Miles Bader.
__BEGIN_DECLS/__END_DECLS up so ntohl() et al are bracketed as
well.
This is not a gross hack, after all---for compatibility,
getlogin() really should check fd 0 only and not try to base its
operation on the controlling tty.
change utmp_data from static to auto.
_IO_file_flags. It's the same as _flags.
call is only a stub.
Mikasa.
pointer as __const.
segfault when called with an N that is not a multiple of four and
src[N-1]=='\0'.
try again with SOCK_STREAM (the Linux syslogd uses a socket of the
latter type).
terminator as a record-delimiter. If __send(LogFile) fails,
`getutline_r'.
`setutline_r'.
of `vscanf'.
name a weak alias.
typo.
initialized in init-first.c. Some actions in the libc work
different when libc is static or dynamic.
`__libc_is_static' variable to determine whether call to
`personality' and `setfpucw' is necessary. When done set variable
to +-1 depending on library type.
`__libc_enable_secure' instead of calling `get{,e}{g,u}id()' to
determine whether it's a SET[UG]ID program.
(open_file): New function, contents mostly from __open.
LD_TRACE_LOADED_OBJECTS is set.
n)' equivalent to `strncpy (d, s, n), d += strnlen (d, n)'.
from the USA any software that even makes it easy to drop in an
encryption module of foreign origin.
old code would have failed on a big-endian 64-bit architecture).
Remove gratitous parentheses around return expressions.
not int.
ustatbits.h.
alphabetically correct place. Mention ustat.
record always gets appended at end of file (wtmp is a log file,
after all). Set ut_type to DEAD_PROCESS if name is empty.
ut_line matches and type is either USER_PROCESS or LOGIN_PROCESS.
avoid duplicate declarations.
word extends right up to rmargin.
point_col ssize_t.
to fiddle __put_limit in conjunction with __linebuf_active.
of, not the ones he is _not_ a member of.
instead of a local function. The latter are difficult to debug
and slow to execute on certain platforms.
place of sizeof (dev). The size of a literal string includes the
NUL byte.
entry. Return 1 on error, not -1.
shift amount for Jensen must be 5 not 4.
for send and connect syscalls.
signed<->unsigned warnings.
variable name, so new a libc with new requirements won't fail to
notice an insufficient Linux version.
PENDIN, NOFLSH): Undefine these at start if they are already
defined to avoid collision with termbits.h.
error is 0. The "placeholder" entries recently added to
memcpy for possibly overlapping strings.
instead of weak_symbol (NAME) after the defn.
necessary using current implementation of memcpy, but...).
Move struct timespec defn outside [_TIME_H] so it can be got with
#define __need_timespec.
__connect instead of connect to avoid name-space collisions (e.g.,
with psgetty).
function ctype_is_charmap to ctype_is_charconv.
charconv.
charconv.
lables according to this.
warnings.
actually do something.
sysdeps/unix/sysv/linux/m68k/init-first.h,
sysdeps/unix/sysv/linux/i386/init-first.h: New files.
init-first.h to make abstract machine dependent parts of
typo/extraneous whitespace.
check-for-pending signals code, release _hurd_siglock before
jumping to deliver_pending.
size_t.
soname of a loaded object, use that object.
if libnss_dns.so module for DNS name lookup in NSS service.
guessing to not assume p_vaddr of first load cmd is zero.
only for ?s, not for *s. Fix from Chet Ramey.
about currently used character set.
name `MAX_IOVEC'. Instead use standard name `UIO_MAXIOV'.
(xdrrec_getlong), sunrpc/xdr_mem.c (xdrmem_getlong): Make sure
appropriate sign-extension is performed on machines with
sizeof(long) > 4.
sizeof(int)<sizeof(long), we need to go through a temporary
variable.
in efect.
volatile to avoid "might get clobbered by longjmp" warning.
unless _LOOSE_KERNEL_NAMES is in effect (which, with high
probability is a sure loser).
sysdeps/unix/sysv/linux/alpha/brk.S,
sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
sysdeps/unix/sysv/linux/alpha/llseek.S,
sysdeps/unix/sysv/linux/alpha/sigsuspend.S,
sysdeps/unix/sysv/linux/alpha/syscall.S: Rename syscall_error to
__syscall_error to avoid intruding application name space.
sysdeps/unix/geteuid.S, sysdeps/unix/getppid.S,
sysdeps/unix/execve.S, sysdeps/unix/fork.S,
sysdeps/unix/syscall.S: Terminate syscall with PSEUDO_END.
(PSEUDO_END): Rename END() to PSEUDO_END().
to PSEUDO_END to improve branch-prediction. Include .frame
directive to make syscalls debugabble.
sysdeps/unix/sysv/linux/alpha/brk.S: Use ldiq instead of ldi since
latter is illegal under DEC Unix.
as well.
EWOULDBLOCK -> EAGAIN mapping was unnecessary since
EWOULDBLOCK==EAGAIN under DEC Unix and Linux/Alpha).
address register in the .frame directive.
avoid RPC definitions of INADDR_LOOPBACK and/or MAXHOSTNAMELEN.
compilable under c++.
as unsigned long, not as int (to avoid incorrect int->long
promotion).
Thu Oct 31 00:01:39 1996 Ulrich Drepper <drepper@cygnus.com>
* signal/Makefile (routines): Add sigwait.
* signal/signal.h: Add prototype for sigwait.
* sysdeps/posix/sigwait.c: New file. Implementation of sigwait
function from POSIX.1c.
* sysdeps/stub/sigwait.c: New file. Stub version of sigwait.
Wed Oct 30 02:01:17 1996 Richard Henderson <rth@tamu.edu>
* sunrpc/xdr_float.c (xdr_float): Handle sizeof(float)!=sizeof(long),
but don't bother going farther than sizeof(float)==sizeof(int).
(xdr_double): Handle little-endian machines! Handle sizeof(double)
!= 2*sizeof(long), though again don't bother with more than int.
Thu Oct 29 16:09:42 1996 Craig Metz <cmetz@inner.net>
* sysdeps/posix/getaddrinfo.c: Use buffer limits for inet_ntop
function.
Tue Oct 29 12:37:22 1996 Ulrich Drepper <drepper@cygnus.com>
* Makerules: Create symbolic links for linking in $(libdir).
(make-link): Use absolute path for destination if this is not in
the same directory.
* elf/rtld.c (dl_main): When verifying don't check the name of
the dynamic linker.
* shlib-versions: Change entries for Hurd specific libs from
*-*-gnu* to *-*-gnu?* so that i586-pc-linux-gnu does not match
these entries.
* assert/assert.h: Reformat copyright.
Change reference to ANSI into reference to ISO C.
* ctype/ctype.h: Likewise.
* errno.h: Likewise.
* limits.h: Likewise.
* math/math.h: Likewise.
* setjmp/setjmp.h: Likewise.
* stdio/stdio.h: Likewise.
* libio/stdio.h: Likewise.
* stdlib/stdlib.h: Likewise.
* string/string.h: Likewise.
* time/time.h: Likewise.
* string/argz.h: Use __const is definitions.
* elf/dlfcn.h: Use __const and __P. Reformat copyright.
* misc/err.h: Likewise.
* wctype/wctype.h (wctrans_t): Use __const instead of const.
* Makeconfig ($(common-objpfx)soversions.mk): Generate list of
sonames for versioned libraries.
* Makefile: Remove code to generate libc-version.h.
Generate gnu/lib-names.h with info from soversions.mk.
* features.h: Define __GLIBC__ and __GLIBC_MINOR__.
* dirent/tst-seekdir.c: Initialize save3.
* grp/testgrp.c: Initialize my_group.
* grp/fgetgrent_r.c: Change interface to follow POSIX.1c.
* grp/grp.h: Likewise.
* nss/getXXbyYY.c: Likewise.
* nss/getXXbyYY_r.c: Likewise.
* nss/getXXent.c: Likewise.
* nss/getXXent_r.c: Likewise.
* pwd/fgetpwent_r.c: Likewise.
* pwd/pwd.h: Likewise.
* shadow/fgetspent_r.c: Likewise.
* shadow/sgetspent.c: Likewise.
* shadow/sgetspent_r.c: Likewise.
* grp/fgetgrent.c: Adapt for change in interface of fgetgrent_r.
* pwd/fgetpwent.c: Likewise, for fgetpwent_r.c.
* shadow/fgetspent.c: Likewise, for fgetpwent_r.c.
* resolv/netdb.h: Adapt prototypes for reentrant functions to
follow POSIX.1c.
* sunrpc/rpc/netdb.h: Likewise,
* shadow/shadow.h: Likewise.
* inet/getnetgrent_r.c: Follow change in pwd/grp function interface.
* sysdeps/unix/getlogin_r.c: Return ERANGE when buffer is too small.
* inet/herrno.c: Don't define __h_errno. Only h_errno otherwise the
ELF aliasing creates strange situations.
* sysdeps/unix/sysv/linux/errnos.H: Define __set_errno as inline
function.
* sysdeps/unix/sysv/linux/i386/sysdep.S: Don't define __errno.
* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
* libio/libio.h: Don't declare _IO_flockfile and _IO_funlockfile
weak.
* locale/programs/charmap.c: Add casts to prevent warnings.
* locale/programs/linereader.h: Likewise.
* locale/programs/ld-collate.c: Likewise.
* locale/programs/stringtrans.c: Likewise.
Change types for various variables to prevent warnings.
* locale/programs/ld-ctype.c: Likewise.
* locale/programs/linereader.h (lr_ungetc): Likewise.
* locale/programs/charset.h (struct charset): Use `unsigned int'
as type for width_default.
* posix/regex.c: Change type of `this_reg' variables.
* stdio-common/Makefile: Use -Wno-format for tstdiomisc.c.
* stdio-common/bug5.c: De-ANSI-fy. Use correct types for
variables.
* stdio-common/printf_fp.c: Initialize to_shift.
* stdio-common/test_rdwr.c: Add cast.
* stdio-common/vfprintf.c: Add casts and use correct types to
prevent warnings.
* stdio-common/vfscanf.c: Initialize str and strptr.
* sysdeps/libm-ieee754/e_jnf.c: Use correct types to prevent warnings.
* sysdeps/libm-ieee754/e_pow.c: Likewise.
* sysdeps/libm-ieee754/e_powf.c: Likewise.
* sysdeps/libm-ieee754/e_rem_pio2f.c: Likewise.
* time/test-tz.c: Likewise.
* manual/creature.texi: Document _REENTRANT and _THREAD_SAFE.
* manual/libc.texinfo: Prevent makeinfo failure by avoiding
libc.cp index. This must be fixed.
* manual/nss.texi: Adapt for correct POSIX.1c interface of
reentrant functions.
* manual/users.texi: Document netgroup functions.
* po/es.po: Updated.
* po/fr.po: Updated.
* posix/fnmatch.c: Change to match libit version.
* posix/unistd.h: Change prototype for ttyname_r to match POSIX.1c.
* sysdep/posix/ttyname_r.c: Likewise.
* stdlib/atexit.h (__new_exitfn): Add internal locking.
* stdlib/exit.c: De-ANSI-fy. Handle new ef_us value for flavor.
* stdlib/exit.h: De-ANSI-fy. Define new ef_us value for flavor.
* stdlib/random.c (__srandom): Add internal locking.
(__initstate): Likewise.
(__setstate): Likewise.
(__random): Likewise.
Mon Oct 28 22:28:37 1996 NIIBE Yutaka <gniibe@mri.co.jp>
* sysdeps/generic/crypt-entry.c (crypt_r): Use __set_errno.
(crypt): Likewise.
* resolv/gethnamaddr.c (gethostbyname2): Likewise.
* sysdeps/generic/uname.c: Likewise.
* sysdeps/posix/rename.c: Likewise.
* sysdeps/stub/setrlimit.c: Likewise.
* nss/nss_db/db-netgrp.c (_nss_db_setnetgrent): Fix typo.
Sun Oct 27 11:12:50 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* locale/programs/ld-collate.c (collate_order_elem): Fix format
string.
(collate_element_to): Cast field width argument to `int' for
format string.
(collate_symbol): Likewise.
(collate_order_elem): Likewise.
(collate_weight_bsymbol): Likewise.
(collate_simple_weight): Likewise.
* locale/programs/ld-time.c (STRARR_ELEM): Fix format string.
* locale/programs/ld-ctype.c (ctype_class_newP): Add missing
argument for format string.
(ctype_map_newP): Likewise.
(set_class_defaults): Fix format string.
* locale/programs/localedef.c (construct_output_path): Putting an
explicit \0 into the format string does not work, use %c.
Sat Oct 26 20:38:36 1996 Richard Henderson <rth@tamu.edu>
* Makerules: Install all shared libraries in $(slibdir).
* login/Makefile: Build libutil.so in others pass after
libc.so is created.
* misc/mntent.h: Include <paths.h> for _PATH_MNTTAB & _PATH_MOUNTED.
* string/stratcliff.c: Allocate 3 pages instead of one, then use
mprotect so that we know that the adjacent pages are inaccessible.
* resource/sys/resource.h: Move all structures and enums to ...
* sysdeps/generic/resourcebits.h: ... here ...
* sysdeps/unix/bsd/sun/sunos4/resourcebits.h: ... and here.
* sysdeps/unix/sysv/linux/alpha/resourcebits.h: Remove.
* sysdeps/unix/sysv/linux/i386/resourcebits.h: Remove.
* sysdeps/unix/sysv/linux/m68k/resourcebits.h: Remove.
* sysdeps/unix/sysv/linux/mips/resourcebits.h: Remove.
* sysdeps/unix/sysv/linux/resourcebits.h: New file. Use kernel
header for RLIMIT_* definitions. The members of struct rlimit
are longs.
Thu Oct 24 17:43:34 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* MakeTAGS (sysdep-dirs): Fix typo.
Wed Oct 23 03:45:22 1996 Ulrich Drepper <drepper@cygnus.com>
* Makefile (headers): Don't mention libc-version.h.
(install-others): ...but here.
* time/strptime.c: Recognize %s, %u, %g, and %G format.
nothing is found. This guarantees all subsequent calls behave
* sysdeps/unix/sysv/linux/syscalls.list: Change function name for
* io/getwd.c (getwd) [! PATH_MAX]: Don't assume that the user's
buffer is any longer than the amount necessary to hold the
filename; the Hurd getcwd uses the *entire* contents of the
buffer, however long it is specified to be.
* posix/getconf.c: De-ANSI-fy. Recognize POSIX.2 constant names.
since these do not depend on the platform.
Tue Oct 22 21:38:21 1996 Ulrich Drepper <drepper@cygnus.com>
* version.h: Bump version number to 1.97.
* features.h: Undo change of Sun Oct 20 22:19:58 1996.
Include libc-version.h.
* features.h.in: Removed.
* Makefile: Change rules to generate libc-version.h instead of
features.h.
* malloc/free.c: Add cast to prevent warning.
* malloc/malloc-walk.c: Likewise.
* malloc/ralloc.c: Likewise.
* malloc/realloc.c: Likewise.
* grp/fgetgrent_r.c: Accept empty numeric field if name start with +
or -.
* pwd/fgetpwent_r.c: Likewise.
* nss/nss_files/files-grp.c: Don't accept entries with names starting
with + or - in lookup functions.
* nss/nss_files/files-pwd.c: Likewise.
* Makerules: Call autolock.sh using $(SHELL).
Mon Oct 21 22:52:16 1996 NIIBE Yutaka <gniibe@mri.co.jp>
* elf/dl-minimal.c: Don't define `dgettext' replacement but
`dcgettext'. When optimizing the macros in <libintl.h> define
`dgettext' as a macro and so this function will never be called.
Mon Oct 21 15:41:59 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/sysdep.h: Define END to use .size when available.
(PSEUDO_END): Use END.
* sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_END to
define SYSCALL_ERROR_HANDLER before using END.
(SYSCALL_ERROR_HANDLER): Don't use .size directive.
* sysdeps/unix/sysv/linux/clone.S: Don't use SYSCALL_ERROR_HANDLER
and .size directive but PSEUDO_END.
* sysdeps/unix/sysv/linux/mmap.S: Likewise.
* sysdeps/unix/sysv/linux/socket.S: Likewise.
* sysdeps/unix/sysv/linux/syscall.S: Likewise.
* sysdeps/unix/sysv/linux/sysdep.S (__errno_location): Use END.
* sysdeps/unix/i386/sysdep.S (__syscall_error): Likewise.
* sysdeps/i386/__longjmp.S: Use END instead of PSEUDO_END.
* sysdeps/i386/bsd-_setjmp.S: Likewise.
* sysdeps/i386/bsd-setjmp.S: Likewise.
* sysdeps/i386/memchr.S: Likewise.
* sysdeps/i386/memcmp.S: Likewise.
* sysdeps/i386/setjmp.S: Likewise.
* sysdeps/i386/stpcpy.S: Likewise.
* sysdeps/i386/stpncpy.S: Likewise.
* sysdeps/i386/strchr.S: Likewise.
* sysdeps/i386/strcspn.S: Likewise.
* sysdeps/i386/strpbrk.S: Likewise.
* sysdeps/i386/strrchr.S: Likewise.
* sysdeps/i386/strspn.S: Likewise.
* sysdeps/i386/strtok.S: Likewise.
* sysdeps/i386/i486/strcat.S: Likewise.
* sysdeps/i386/i486/strlen.S: Likewise.
* sysdeps/i386/i586/memset.S: Likewise.
* sysdeps/i386/i586/strchr.S: Likewise.
* sysdeps/i386/i586/strlen.S: Likewise.
* sysdeps/i386/strlen.c: De-ANSI-fy.
* sysdeps/generic/_strerror.c: Undo change of Mon Oct 21 01:32:36 1996.
Define dgettext if not defined to use dcgettext.
* sysdeps/mach/_strerror.c: Likewise.
* sysdeps/unix/sysv/i386/time.S: Add PSEUDO_END to get
__syscall_error defined..
Sat Oct 19 12:27:50 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/mmap.S: Fix braino: CALL_MCOUNT is
already included in the ENTRY macro. Remove SYSCALL_ERROR_HANDLER
now provided by PSEUDO_END.
* sysdeps/unix/sysv/linux/m68k/sigreturn.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/socket.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/syscall.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/clone.S: Likewise. Use JUMPTARGET.
* sysdeps/generic/sysdep.h (END): Provide default empty
definition.
* sysdeps/unix/sysv/linux/m68k/sysdep.h (END): Redefine to use
size directive.
(PSEUDO): Don't include SYSCALL_ERROR_HANDLER.
(PSEUDO_END): Include it here instead.
(SYSCALL_ERROR_HANDLER): Remove type directive.
* sysdeps/m68k/bsd-_setjmp.S: Use END, not PSEUDO_END.
* sysdeps/m68k/bsd-setjmp.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/sigreturn.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
(__syscall_error): Can't use ENTRY macro.
Sat Oct 19 12:13:24 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/syscalls.list (getresuid, setresuid):
Set caller to EXTRA.
O_SHLOCK.
Tue Oct 15 14:37:40 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* sysdeps/mach/hurd/fcntlbits.h (O_HURD): Add O_EXLOCK and
Sat Oct 19 17:42:24 1996 Ulrich Drepper <drepper@cygnus.com>
* intl/locale.alias: Language for entry `czech' is `cs'.
Fri Oct 17 13:20:35 1996 Thorsten Kukuk <kukuk@weber.uni-paderborn.de>
* sunrpc/etc.rpc: Update from ti-rpcsvc 2.3.
Fri Oct 18 22:56:45 1996 Ulrich Drepper <drepper@cygnus.com>
* sunrpc/Makefile (install-sbin): Remove portmap. This version is
buggy and more competent people work on a usable version which is
distributed separately.
* sunrpc/portmap.c: Removed.
Suggested by Thorsten Kukuk.
Fri Oct 18 12:17:09 1996 Enrique Melero <justine@iprolink.ch>
* sysdeps/libm-ieee754/s_finitel.c: Change function name to
`finitel'.
Fri Oct 18 00:01:10 1996 Ulrich Drepper <drepper@cygnus.com>
* string/Makefile (tests): Add stratcliff.
* string/stratcliff.c: New file. Test for string function at
the edge of the usable memory.
Thu Oct 17 22:10:19 1996 Ulrich Drepper <drepper@cygnus.com>
* Makerules ($(libdir)/libc.so): Fix typo.
* elf/ldd.sh.in: Test whether given file really exist and give
better message if it is not available.
Thu Oct 17 04:25:38 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/sys/shm_buf.h: Add definition for
SHM_R and SHM_W.
* locale/programs/localedef.c (main): Test with -1 to find out
Thu Oct 17 01:55:34 1996 Ulrich Drepper <drepper@cygnus.com>
* sunrpc/Makefile ($(objpfx)rpcsvc/%.h, $(objpfx)x%.c): Write
output to $@T and move to $@ later since the new rpcgen will not
overwrite existing files.
* po/Makefile (libc.pot): Fix typo.
Sun Oct 13 20:52:07 1996 Thorsten Kukuk <kukuk@weber.uni-paderborn.de>
Update rpcgen program to TI-rpc code.
* sunrpc/Makefile (rpcgen-objs): Add rpc_tblout.o and rpc_sample.o.
(distribute): Add proto.h.
* sunrpc/proto.h: New file. Prototypes for all the RPC functions.
* sunrpc/rpc_clntout.c: Change to allow generation of ISO C code.
* sunrpc/rpc_cout.c: Likewise.
* sunrpc/rpc_hout.c: Likewise.
* sunrpc/rpc_main.c: Likewise.
* sunrpc/rpc_parse.c: Likewise.
* sunrpc/rpc_parse.h: Likewise.
* sunrpc/rpc_scan.c: Likewise.
* sunrpc/rpc_scan.h: Likewise.
* sunrpc/rpc_svcout.c: Likewise.
* sunrpc/rpc_util.c: Likewise.
* sunrpc/rpc_util.h: Likewise.
* sunrpc/rpc_tblout.c: New file.
* sunrpc/rpc_sample.c: Likewise.
Thu Oct 17 00:26:20 1996 NIIBE Yutaka <gniibe@mri.co.jp>
* sysdeps/unix/opendir.c: Add semicolon for consistency.
Wed Oct 16 12:26:53 1996 Sven Verdoolaege <skimo@breughel.ufsia.ac.be>
* locale/progams/localedef.c (main): Test with -1 to find out
whether read failed.
Wed Oct 16 14:54:59 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/clone.S: Use JUMPTARGET and
PSEUDO_END macro.
Tue Oct 15 21:27:42 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/sigcontext.h: Removed.
Tue Oct 15 15:52:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/clone.S: Add CALL_MCOUNT.
* sysdeps/unix/sysv/linux/m68k/mmap.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/sigreturn.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/socket.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/sysdep.S (__errno_location):
Likewise.
* sysdeps/unix/sysv/linux/m68k/syscall.S: Likewise.
Correct generation of system call.
Tue Oct 15 15:13:16 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (sysd-Makefile): Fix command so that it works in the
subdirectories.
(BUILD_CFLAGS): Change back using $(..) instead of
$(common-objpfx), the latter fails in the toplevel directory when
$(objdir) is relative.
(common-objdir-compile): Run compiler in $(objdir).
* sysdeps/posix/Makefile (mk-stdiolim): Likewise.
Tue Oct 15 23:39:48 1996 Ulrich Drepper <drepper@cygnus.com>
* string/string.h [__USE_SVID]: Add prototype for swab.
* time/sys/time.h [__USE_BSD]: Add prototype for ualarm.
Reported by Andreas Jaeger.
The available nlist implementation is not generally usable.
Especially on the currently supported ELF systems the nlist
function comes with the libelf.
* misc/Makefile (headers): Remove nlist.h.
(routines): Remove nlist.
* Makefile ($(objpfx)version-info.h): Include information about
system the libc is built on in version-info.h file.
* po/Makefile (distribute): Add header.pot.
Tue Oct 15 16:34:15 1996 Andreas Jaeger <aj@arthur.pfalz.de>
* sysdeps/unix/sysv/linux/sleep.c: Include file with prototype.
* sysdeps/unix/sysv/linux/reboot.c: Likewise.
* misc/error.c: Likewise.
Tue Oct 15 22:41:27 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/syscalls.list: Add {get,set}resuid.
Tue Oct 15 08:06:02 1996 Andreas Jaeger <aj@arthur.pfalz.de>
* crypt/Makefiel (rpath-link): Extend search path to current directory.
Fri Oct 11 09:18:06 1996 Sven Verdoolaege <skimo@breughel.ufsia.ac.be>
* sysdeps/i386/i586/strlen.S: Correct handling of prolog for
aligning pointer.
Tue Oct 15 02:13:21 1996 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/vfprintf.c: Don't declare __flockfile as weak.
* crypt/md5-crypt.c (md5_crypt_r): Add cast to prevent warning.
Sun Oct 13 19:16:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/sysdep.h (POUND): Macro removed,
replaced by `&'.
(PSEUDO_END): Provide definition to use .size directive.
(PSEUDO): Don't interpret negative return values less than -128 as
syscall error.
* sysdeps/unix/sysv/linux/m68k/syscall.S (syscall): Likewise.
* sysdeps/m68k/bsd-_setjmp.S: Use PSEUDO_END macro to provide
.size directive.
* sysdeps/m68k/bsd-setjmp.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/clone.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/mmap.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/sigreturn.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/socket.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/syscall.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/sysdep.S: Use PSEUDO_END instead of
explicit .size directive.
* libio/iogets.c: Warn when gets is used.
cd * time/strptime.c: Recognize %s, %u, %g, and %G format.
* Makerules (sysd-Makefile): Look for sysdep Makefiles using $(..)
so that it still works right if we happen to get called in a
subdir it still works.
Thu Oct 10 17:25:55 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* Makerules (sysd-Makefile): Look for sysdep Makefiles using $(..)
so that it still works right if we happen to get called in a
subdir it still works.
* sysdeps/mach/hurd/fcntlbits.h (O_SHLOCK, O_EXLOCK): Redesignate
as file name translation flags.
* hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Don't pretend
to do anything for O_SHLOCK or O_EXLOCK. Those are now file name
translation flags.
* Makerules ($(libdir)/libc.so): Mention the actual libc.a archive
name (changed according to libc-name) to avoid getting the
Hurd-ish linker script for libc.a when we only want the archive
library.
Thu Sep 12 03:35:27 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/Dist: Remove init-first.h.
* sysdeps/unix/sysv/linux/m68k/Dist: Likewise.
* sysdeps/unix/sysv/linux/Dist: Add init-first.h.
1996-09-11 Paul Eggert <eggert@twinsun.com>
* strftime.c (strftime):
Handle E and O modifiers, required for POSIX.2 and XPG4.
Don't use sprintf to format numbers; this way, we can handle time_t
correctly regardless of whether it's signed.
Don't dump core if format ends in %.
In default %c format, use %e instead of %d, for POSIX.2 compatibility.
For %z:
Use tm_gmtoff if available.
Output nothing if tm_isdst is negative.
Output correct value even if arg is 1969-12-31 23:59:59 UTC.
Don't assume that UTC offset is less than 24 hours;
Posix requires support for 24 hours, and there's no point
limiting it at all.
(HAVE_TM_GMTOFF, TYPE_SIGNED, INT_STRLEN_BOUND): New macros.
(CHAR_BIT): Define if <limits.h> doesn't.
(tm_diff): New function.
(fmt, <stdio.h>): Remove; no longer used.
Thu Sep 12 02:21:44 1996 Ulrich Drepper <drepper@cygnus.com>
* db/Makefile: Add extra-libs-others variable so that shared
library is built in `others' pass.
* elf/Makefile: Likewise.
* math/Makefile: Likewise.
* resolv/Makefile: Likewise.
* Makefile (generated): Add version.info.h.
* time/checktab.awk: New file. From ADO 96k.
* time/iso3166.tab: Likewise.
* time/tzselect.ksh: Likewise.
* time/zone.tab: Likewise.
* stdio-common/vfprintf.c: Correct cleanup registration. We
cannot use a macro
1996-09-11 Paul Eggert <eggert@twinsun.com>
* time/time.h (tm_gmtoff, tm_zone): Prefix with `__' unless
__USE_BSD; this is required for ANSI C compatibility.
* manual/time.texi: Replace GMT by UTC, daylight savings by
daylight saving, timezone by time zone.
Rewrite description of %V to match ISO 8601.
Fix TZ Posix string example for US Eastern time.
Explain tzname[1] when DST isn't used.
Explain tzname when multiple abbreviations used (e.g. EST/EWT/EDT).
Explain that timezone's sign is opposite from tm_gmtoff, and that
timezone lacks DST adjustment whereas tm_gmtoff has it.
Deprecate tzname and timezone.
Tue Sep 10 14:46:16 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
Implement Roland McGrath's idea of how to put an .interp into
shared libraries.
* interp.c: New file.
* Makerules (interp-obj): New object, linked into every shared
library.
(common-generated): Add interp.so.
(CFLAGS-interp.c): Pass name of interpreter.
Tue Sep 10 21:09:35 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* db/Makefile: Fix typo.
Tue Sep 10 19:29:53 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* nss/db-Makefile ($(VAR_DB)/passwd.db): Look for multiple
occurences of the same uid, and only generate a mapping for the
first one.
Tue Sep 10 03:14:59 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/system.c: New file, to override
sysdeps/unix/system.c.
Tue Sep 10 15:05:40 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (before-compile): Add version-info.h, needed to build
version.d.
Tue Sep 10 14:14:33 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/sysdep.S: Remove check for
EWOULDBLOCK, never true on Linux.
(__errno_location): New function.
[_LIBC_REENTRANT]: Set errno using __errno_location function.
* sysdeps/unix/sysv/linux/m68k/sysdep.h [PIC]: Add second
syscall_error handler for reentrant libc.
Tue Sep 10 13:27:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/Makefile (extra-objs): Add eval.so to get dependencies.
Wed Sep 11 04:40:57 1996 Ulrich Drepper <drepper@cygnus.com>
* time/tzset.c (__tzname_cur_max): Use type `size_t' to avoid
warning.
* time/tzfile.c (compute_tzname_max): Likewise.
Sat Sep 7 14:00:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
* catgets/catgets.c (catopen): Allocate sizeof(*result) bytes
instead of sizeof(nl_catd) (which is just a pointer!).
Sat Sep 7 19:39:19 1996 Ulrich Drepper <drepper@cygnus.com>
* Makefile ($(objpfx)version-info.h): Generate from Banner files.
* version.c (banner): Add contents of version-info.h to string.
* Makerules: If $($(subdir)-version) is available name versioned
shared library according to this value instead of glibc's version.
* libio/Banner: New file.
* elf/eval.c (funcall): Write error message in case function is
not found.
(eval): Recognize `_' in names.
Thu Sep 5 03:20:42 1996 Ulrich Drepper <drepper@cygnus.com>
Change configuration and Makefiles to allow add-ons to have a
sysdeps/ directory hierachy.
* configure.in: Test for sysdeps/ directory in add-ons. Before
all test and searches in these hierachies, too.
* Makeconfig (full-config-subdirs): Define based on $(config-sysdirs).
Extend with $(..) if not absolute path.
Use $(full-config-subdirs) where $(config-sysdirs) was used.
* Makefile ($(objpfx)sysd-dirs): Use config-sysdirs.
* MakeTAGS: Use $(full-config-subdirs).
* Makerules: Change comment to libc.so link script.
(sysdirs): Define based on $(full-config-subdirs).
(sysd-Makefile): Define using config-sysdirs.
(sysd-rules): Likewise.
* sysdeps/unix/Makefile (sysd-syscalls): Define based on +sysdep-dirs.
* sysdeps/unix/make-syscalls.sh: Remove basedir argument.
Wed Sep 4 01:32:21 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/fpu/k_cos.c: Rewritten for better accuracy.
* sysdeps/m68k/fpu/k_sin.c: Likewise.
* sysdeps/m68k/fpu/k_tan.c: Likewise.
Thu Sep 5 01:06:09 1996 Richard Henderson <rth@tamu.edu>
* malloc/free.c (free): Protect by using __libc_malloc_lock.
* malloc/malloc-find.c (malloc_find_object_address): Likewise.
* malloc/malloc-size.c (malloc_usable_size): Likewise.
* malloc/malloc-walk.c (malloc_walk): Likewise.
* malloc/memalign.c (memalign): Likewise.
* malloc/realloc.c (realloc): Likewise.
* malloc/malloc.c: Define __libc_malloc_lock.
(_malloc_internal): Don't use `malloc'. Instead look for
`__malloc_hook' or call `_malloc_internal'.
(malloc): Protect by using `__libc_malloc_lock'.
* malloc/malloc.h: Declare `__libc_malloc_lock'.
Mon Sep 2 22:42:59 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/elf/start.S: Use weak_alias for __start
instead of the hard definition.
* sysdeps/alpha/dl-machine.h (RTLD_START): Add type info for
_start and _dl_start_user.
* sysdeps/unix/sysv/linux/alpha/init-first.h (SYSDEP_CALL_INIT):
Make _dl_starting_up weak. Add type info for NAME.
Mon Sep 2 22:15:14 1996 Richard Henderson <rth@tamu.edu>
* Makefile (all): Add extra_solibs pass.
(+subdir_targets): Same.
* Rules (extra_solibs): New phony empty target for subdirs without
extra libs.
* extra-lib.mk: Build lib*.so* in extra_solibs not lib-noranlib.
* manual/Makefile: Add dummy extra_solibs target.
Sun Sep 1 15:41:22 1996 Richard Henderson <rth@tamu.edu>
* Makeconfig (+link): Add $(link-extra-libs).
(link-extra-libs): New variable which expands to the full paths of
the other libraries needed by a program, as controled by LDLIBS-$(@F).
* db/Makefile: Use LDLIBS-makedb to link libdb not a dependency, as
the later attempts to install the library before linking it.
* sysdeps/unix/alpha/sysdep.S: Align errno.
* sysdeps/unix/sysv/linux/alpha/ioperm.c (struct platform): Add
hae_shift entry.
(io): Move bus_memory_base and sparse_bus_memory_base into struct.
(_hae_shift): New function.
* sysdeps/unix/sysv/linux/alpha/sys/io.h: New file. Prototypes
for the bus query functions.
Sat Aug 31 18:14:54 1996 Richard Henderson <rth@tamu.edu>
* elf/dl-close.c (_dl_close): In static executables, map->l_prev
can be NULL when unloading a library.
* elf/dl-open.c (_dl_open): Pass __environ instead of __libc_envp
to the library .init function.
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Since we omitted
part of the COPY reloc processing earlier, omit the rest now --
we'll get into less trouble later when some fool does use a COPY.
* sysdeps/unix/sysv/linux/init-first.c (init): Accept argc et al as
parameters. Move all argc and __libc_multiple_libcs calculation out
to init-first.h. Use __environ not __libc_envp.
* sysdeps/unix/sysv/linux/alpha/init-first.h: Rewrite.
* sysdeps/unix/sysv/linux/i386/init-first.h: Rewrite.
Thu Aug 29 20:26:40 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/posix/profil.c (profil): Don't clobber saved timer and
signal settings when profiling was already turned on.
* csu/gmon-start.c (__gmon_start__) [HAVE_INITFINI]: Protect from
being called twice.
Wed Sep 4 01:31:50 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/mmap.S: Test for
0 < return value < -4096 and not < 0 to decide about failure.
Reported by Andreas Jaeger.
Tue Sep 3 19:04:05 1996 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/vfscanf.c (__vfscanf): Don't count EOF char
in %c format.
Sat Aug 31 18:10:51 1996 Ulrich Drepper <drepper@cygnus.com>
* wcsmbs/wchar.h: Define prototypes for wcstoq and wcstouq only
#ifdef __USE_GNU.
Sat Aug 31 12:34:29 1996 Ulrich Drepper <drepper@cygnus.com>
* version.c: Add missing newline character in banner.
* sysdeps/unix/sysv/linux/alpha/Dist: Correct typo.
* sysdeps/unix/sysv/linux/i386/Dist: Likewise.
Sat Aug 31 03:07:39 1996 Ulrich Drepper <drepper@cygnus.com>
* intl/l10nflist.c (_nl_normalize_codeset): We convert to lower
case, so don't prepend uppercase `ISO' for only numeric arg.
Fri Aug 30 13:39:21 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* Makerules (BUILD_CFLAGS): Use @(common-objpfx) for config.h, not
$(..). Some rules (like sysdeps/posix/Makefile for mk-stdiolim)
do `cd' commands.
(sed-remove-objpfx): Don't substitute for $(objpfx) anymore;
$(common-objpfx) is good enough.
* Rules (common-generated): Provide default (empty) value.
(dummy.o, dummy.c, empty.o, empty.c): Put these in
$(common-generated), not $(generated), and without $(..).
(subdir_echo-distinfo): Treat $(common-generated) just like
$(generated).
(generated): Depend on the (suitably mutated) $(common-generated)
files too.
* Makerules (common-clean): Remove common-generated files too.
* sysdeps/mach/hurd/Makefile (generated): Don't put errnos.d and
stamp-errnos here.
(common-generated): Do put errnos.d and stamp-errnos here.
(rpath-link): Don't use +=; $(rpath-link) is a colon separated list.
* sysdeps/mach/hurd/Makefile (before-compile): Add auth; also add
auth to following rule to get it built.
$(common-objpfx). All uses in dependency lists changed.
Fri Aug 30 01:26:44 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/Dist: Add close.S.
* sysdeps/unix/sysv/linux/m68k/Dist: Likewise.
* sysdeps/unix/sysv/linux/alpha/Dist: Likewise.
* version.c: Add comment about where to report bugs to.
* catgets/gencat.c (usage): Likewise.
* db/makedb.c (usage): Likewise.
* locale/programs/locale.c (usage): Likewise.
* locale/programs/localedef.c (usage): Likewise.
* manual/socket.texi: A little bit better wording.
Thu Aug 29 18:03:06 1996 Ulrich Drepper <drepper@cygnus.com>
* Makerules: Make sure directory exists before generating stamp file.
(BUILD_CFLAGS): Always refer to using $(..).
* manual/Makefile: Make sure directory exists before generating
stamp file.
(make-target-directory): Add macro definition.
* sysdeps/generic/Makefile: Make sure directory exists before
generating stamp file.
* Makefile (distribute): Add autolock.sh. Reported by Fila Kolodny.
Tue Aug 27 10:06:22 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
When compiling in separate directory put objects into
subdirectories matching the source layout.
* Makeconfig (objpfx) [ifdef objdir]: Append $(subdir).
When looking for configparms try in $(common-objpfx).
Use $(common-objpfx)SUBDIR to find objects from other subdirectory
builds.
* Makerules: Add $(objpfx) to vpath list.
(make-dummy-dep): Use $(common-objpfx) to avoid creating dummy.d
more than once. All uses in dependency lists changed.
(+make-deps): Make target directory.
(sed-remove-objpfx): Substitute $(common-objpfx).
(do-ar, build-extra-lib, $(common-objpfx)stub-$(subdir)): Use
$(objpfx) instead of $(objdir) for cd command.
(O%-lib): Always find libc relative to $(..).
(subdir-stamps): Collect stamp files from subdirs.
(common-mostlyclean): Remove stub file in $(common-objpfx).
* MakeTAGS ($P/siglist.pot): Find siglist.c in stdio-common.
* Rules (dep-dummy-lib): Use $(common-objpfx) to avoid creating to
more than once.
($(objpfx)dummy.c, $(objpfx)empty.c): Change target name to use
$(common-objfpx). All uses in dependency lists changed.
(generated): Prepend $(..) to names.
* bare/Makefile ($(objpfx)lib$(config-vendor).a): Remove $(objpfx)
from $@.
* nss/Makefile ($(objpfx)libnss_dns.so, $(objpfx)libnss_db.so):
Use $(common-objpfx) instead of $(..) in dependencies.
* sysdeps/mach/Makefile (mach-objpfx): Unconditionally use
$(common-objpfx) instead of $(..) and (objpfx).
* sysdeps/mach/hurd/Makefile (hurd-objpfx): Likewise.
(rpath-link): Likewise.
(rpcuserlibs): Likewise.
* sysdeps/unix/Makefile [$(subdir) = stdio-common]: Check for
errlist.c in $(objpfx), not $(common-objpfx).
($(common-objpfx)s-proto.d): Special rule not covered by pattern
rule.
* sysdeps/unix/make-syscalls.sh: Make syscall rules depending on
s-proto.d in $(common-objpfx), not $(objpfx).
Thu Aug 29 17:45:49 1996 Ulrich Drepper <drepper@cygnus.com>
* nss/nsswitch.c (nss_dlerror_run): Free returned error
string.
Thu Aug 29 15:53:33 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/libm-ieee754/e_acoshl.c: New file. `long double'
implementation.
* sysdeps/libm-ieee754/e_atanhl.c: Likewise.
* sysdeps/libm-ieee754/e_remainderl.c: Likewise.
* sysdeps/libm-ieee754/e_scalbl.c: Likewise.
* sysdeps/libm-ieee754/s_asinhl.c: Likewise.
* sysdeps/libm-ieee754/s_cosl.c: Likewise.
* sysdeps/libm-ieee754/s_sinl.c: Likewise.
* sysdeps/libm-ieee754/s_tanhl.c: Likewise.
* sysdeps/libm-ieee754/s_tanl.c: Likewise.
* stdio-common/printf_fp.c (__printf_fp): Use default value '.' if
Thu Aug 29 00:28:08 1996 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/printf_fp.c (__printf_fp): Use default value `.` if
`decimal' char is 0.
* C-numeric.c (not_available): New constant.
(_nl_C_LC_NUMERIC): Use `not_available' for grouping value.
* nss/nsswitch.conf: Example configuration file.
* nss/db-Makefile: Example Makefile for generation of databases
for nss_db.
* nss/Makefile (distribute): Add nsswitch.conf and db-Makefile.
1996-08-28 Paul Eggert <eggert@twinsun.com>
* C-messages.c (_nl_C_LC_MESSAGES): Set yesexpr to "^[yY]" and
noexpr to "^[nN]"; this conforms to POSIX.2.
* C-time.c (_nl_C_LC_TIME): Change %d to %e in d_t_format, to
conform to POSIX.2.
1996-08-28 Paul Eggert <eggert@twinsun.com>
* C-monetary.c (not_available): New constant.
(_nl_C_LC_MONETARY): Set mon_decimal_point to "", and set
mon_grouping, int_frac_digits, frac_digits, p_cs_precedes,
p_sep_by_space, n_cs_precedes, n_sep_by_space, p_sign_posn, and
n_sign_posn to CHAR_MAX, as required by the POSIX Standard.
Wed Aug 28 23:12:28 1996 Ulrich Drepper <drepper@cygnus.com>
* nss/nss_db/db-XXX.c: Correct function names. They must be
`_nss_db_*' instead of `_nss_files_*'.
(lookup): `parse_line' returns 1 if succesful.
* nss/nss_files/files-service.c (servbyname): Key for database
must also contain protocol names.
(servbypt): Likewise.
Test must also check for protocol. Add `proto' argument.
Tue Aug 27 09:56:13 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* MakeTAGS ($P/subdirs.pot): Prefix all file names, not only the
first one.
Fri Aug 16 16:11:25 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* nss/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Treat
EPFNOSUPPORT and EAFNOSUPPORT as implying NSS_STATUS_UNAVAIL just
like ECONNREFUSED already does.
(_nss_dns_gethostbyaddr_r): Likewise.
* nss/nss_dns/dns-network.c (_nss_dns_getnetbyname_r): Likewise.
(_nss_dns_getnetbyaddr_r): Likewise.
* sysdeps/mach/hurd/socket.c (socket): For message transmission
and RPC errors that indicate that the socket server is not really
present and able to do its job, turn the error into EPFNOSUPPORT.
* sysdeps/generic/sbrk.c (__sbrk): Get kernel brk address
always only if in static libc or if statically linked program
uses libc.so.
Tue Aug 27 17:45:21 1996 Ulrich Drepper <drepper@cygnus.com>
* Makerules: Add some test for correct version of GNU Make.
* io/fcntl.h: Undo change from Mon Aug 26 22:22:17 1996.
* sysdeps/unix/sysv/linux/fcntlbits.h: Place macros here instead.
* sysdeps/generic/dl-sysdep.c: Initialize break address to
avoid overwriting last page (OK, Roland).
Tue Aug 27 16:20:37 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/resolv.h: Update from BIND-4.9.5-T3A.
* resolv/arpa/nameser.h: Likewise.
* resolv/res_init.c: Likewise.
* resolv/res_debug.c: Likewise.
* resolv/res_mkquery.c: Likewise.
Tue Aug 27 15:47:04 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-error.c (catch): Define errstring element not as const.
(_dl_catch_error): ERRSTRING argument is not const pointer.
Initialize *ERRSTRING and *OBJNAME separately.
* elf/link.h: Change prototype for `_dl_catch_error'.
* elf/dl-load.c (_dl_map_object): Use separate variable for
copied NAME to avoid `const' warning.
* elf/dlerror.c: Make `last_errstring' variable not const pointer.
* elf/rtld.c: Implement reading of /etc/ld.so.preload. This
provides preloading even for SUID binaries.
Add some more casts to avoid signed<->unsigned warnings.
Tue Aug 27 15:40:28 1996 NIIBE Yutaka <gniibe@mri.co.jp>
* posix/sys/types.h: Define loff_t.
* sysdeps/unix/sysv/linux/gnu/types.h: Define __loff_t.
Mon Aug 26 16:31:33 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* sysdeps/mach/hurd/setitimer.c (setitimer_locked): Tolerate NEW
being null; in that case don't touch the timer at all (but do
return something in OLD if necessary).
Mon Aug 26 13:35:16 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* sysdeps/mach/hurd/i386/init-first.c (__libc_multiple_libcs): New
variable.
* sysdeps/i386/init-first.c: Likewise.
* sysdeps/stub/init-first.c: Likewise.
Wed Aug 14 21:36:16 1996 Ulrich Drepper <drepper@cygnus.com>
* stdlib/strtod.c (STRTOD): Correct assertion about size of
wint_t and wchar_t. Reported by David Mosberger-Tang.
Mon Aug 12 22:40:16 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/dl-lookup.c (_dl_lookup_symbol): Remove fifth parameter
RELOC_ADDR and make NOPLT a set of flags. All callers
changed. Delete condition that checks for resolving to the
location being filled in. Add condition to skip the
executable's symbols if requested.
* elf/link.h: Change declaration of _dl_lookup_symbol
accordingly.
(DL_LOOKUP_NOEXEC, DL_LOOKUP_NOPLT): New definitions.
* elf/dl-reloc.c (RESOLVE): Remove second parameter and rename
NOPLT to FLAGS.
* elf/dl-runtime.c (RESOLVE): Likewise.
* elf/rtld.c (RESOLVE): Likewise.
* sysdeps/m68k/dl-machine.h (elf_machine_rela): Pass
DL_LOOKUP_NOEXEC as second argument to the RESOLVE macro if
processing a copy reloc, DL_LOOKUP_NOPLT for a jump slot
reloc, zero otherwise.
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
* sysdeps/mips/dl-machine.h (elf_machine_rel): Likewise.
Wed Aug 14 17:57:08 1996 Ulrich Drepper <drepper@cygnus.com>
* MakeTAGS: Clean up use of --omit-header and -n for xgettext.
* po/header.pot: Add empty line at end.
Sun Aug 11 13:45:33 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* MakeTAGS (all-pot): Remove $P/errlist.pot, all error messages
are now in $P/stdio-common.pot.
(XGETTEXTFLAGS-errlist.pot): Variable removed.
Mon Aug 12 19:25:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (do-ar, o-iterator-doit): Compute path to autolock
script at run time, not configure time.
* config.make.in, configure.in: Undo previous change.
Wed Aug 14 13:20:02 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/close.S: Push return value of thread
on stack as argument for `_exit'. Reported by Andreas Schwab.
Mon Aug 12 19:36:25 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/clone.S: New file.
Wed Aug 14 04:22:35 1996 Richard Henderson <rth@tamu.edu>
* elf/dl-load.c (_dl_map_object): Save name in malloced memory.
(_dl_map_object_from_fd): Free name on error.
Wed Aug 14 13:00:09 1996 Ulrich Drepper <drepper@cygnus.com>
* string/strdup.c: Use result of memcpy to avoid reloading.
Tue Aug 13 00:55:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* shadow/sgetspent_r.c (__sgetspent_r): Copy string to buffer, not
the other way round.
* resolv/Makefile (libresolv-routines): Add base64, inet_net_ntop,
inet_net_pton, inet_net.
* resolv/arpa/nameser.h (__BIND): Update version number.
Mon Aug 12 19:03:22 1996 Thomas Bushnell n/BSG <thomas@psilocin.gnu.ai.mit.edu>
* sysdeps/generic/gnu/types.h: Declare __fd_mask as `unsigned long'.
* mach/Makefile (mach/mach_host.uh): Depend on
$(objpfx)/mach-syscalls.mk.
($(objpfx)mach-shortcuts.h): Depend on $(objpfx)mach/mach_host.h.
(This fixes a make loop; thanks to Marcus Daniels
<marcus@sysc.pdx.edu> for the patch.)
* sysdeps/unix/sysv/linux/configure.in (LIBC_LINUX_VERSION): New
macro, now put the needed Linux version just once, here; update to
needing linux-2.0.3 headers.
(libc_cv_linuxVER): New macro derived from that.
(kernel header check): Use those macros and some m4 magic to replace
hard-coded `201' and `2.0.1' in several places.
* Makerules ($(libdir)/libc.so): Fix typos in generated comment.
Wed Jul 24 17:02:30 1996 Ulrich Drepper <drepper@cygnus.com>
* time/localtime.c: Move lock variable declaration to end of
variable declarations since if is a dummy macro the ; at the
end terminates the variable section of the function.
* time/tzset.c: Undefine `tzset' before function declaration.
Use `weak_function' macro instead of `weak_symbol'.
Wed Jul 24 18:57:33 1996 Ulrich Drepper <drepper@cygnus.com>
* stdlib/strtouq.c: Additional weak alias is `strtoull', not
`strotull'.
Wed Jul 24 18:26:23 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/C-ctype.c: Increment number of fields after change
from Wed Jun 19 03:24:58 1996.
* crypt/Makefile, crypt/nocrypt.c: Removed. It is illegal to export
from the USA any software that even makes it easy to drop in an
encryption module of foreign origin.
* Makerules (cryptobjdir): Variable removed.
($(libdir)/libc.so): Remove dep on libcrypt.so$(libcrypt.so-version).
* Makefile (subdirs): Remove crypt.
Fri Jul 19 15:10:37 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sunrpc/xdr_mem.c (xdrmem_putlong): Don't cast LP to int32 (the
old code would have failed on a big-endian 64-bit architecture).
* sunrpc/xdr_stdio.c (xdrstdio_putlong): Ditto.
* sunrpc/xdr.c (xdr_int): Handle XDR_FREE case.
(xdr_u_long): Use switch instead of chain of if-statements.
Remove gratitous parentheses around return expressions.
(xdr_enum): Open code case where INT_MAX<LONG_MAX.
* sunrpc/svc.c (svc_getreqset): Increment SOCK by 32, not NFDBITS.
* sunrpc/portmap.c (reg_service): Declare ANS and PORT as long,
not int.
Fri Jul 19 16:56:41 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* dlfcn.h, db.h: New wrapper headers.
* posix/glob.h [!_AMIGA && !VMS]: Check this instead of just [!_AMIGA]
for `struct stat;' forward decl.
Fri Jul 19 22:25:19 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/iso-4217.def: Add some more standardized currency
symbols.
* sysdeps/mach/hurd/errnos.awk: Move EWOULDBLOCK check before errno==0
check. mib's clueless hacking broke it.
Thu Jul 18 04:27:21 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makerules ($(libdir)/libc.so): Add missing / after $(cryptobjdir).
Wed Jul 17 10:54:20 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/alpha/start.S: Move to ...
* sysdeps/alpha/elf/start.S: here.
* misc/sys/ustat.h: New file.
* misc/ustat.h: Ditto.
* sysdeps/generic/ustatbits.h: Ditto.
* libc-orig/sysdeps/stub/ustat.c: Ditto.
* sysdeps/unix/sysv/linux/ustatbits.h: Ditto.
* misc/Makefile (headers): Mention ustat.h, sys/ustat.h, and
ustatbits.h.
(routines): Mention ustat.
* sysdeps/unix/sysv/linux/syscalls.list: Mention klogctl in
alphabetically correct place. Mention ustat.
* sysdeps/unix/alpha/sysdep.S: Make errno a bss symbol, not a
common symbol (makes errno accessible from gdb).
* login/pututline_r.c (pututline_r): Test ut_id in repositioning
test, not ut_type.
* login/logwtmp.c (logwtmp): Reimplemented. Must ensure that a
record always gets appended at end of file (wtmp is a log file,
after all). Set ut_type to DEAD_PROCESS if name is empty.
* login/getutid_r.c (getutid_r): Handle search for UT_TYPE in
separate loop from search for UT_ID. Fix code so it is in
sync with Unix man page.
* login/getutline_r.c (getutline_r): Stop searching only if
ut_line matches and type is either USER_PROCESS or LOGIN_PROCESS.
Tue Jul 16 15:06:18 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/netinet/in.h: Base on <linux/in.h> to
avoid duplicate declarations.
Sun Jul 14 19:08:55 1996 David Mosberger-Tang <davidm@azstarnet.com>
* manual/maint.texi (Supported Configurations): Add alpha-gnu-linux
and alpha-gnu-linuxecoff targets.
Fri Jul 12 16:58:44 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/netinet/in.h: Declare bindresvport().
Sat Jun 22 23:30:07 1996 David Mosberger-Tang <davidm@azstarnet.com>
* resolv/res_send.c (res_send): Declare FROMLEN as size_t instead
of int.
* resolv/res_comp.c (res_hnok): Use empty statement in place
of NULL (which generates a "useless expression" warning in
gcc).
* version.h (VERSION): Update to 1.93.
* Makerules ($(libdir)/libc.so): Depend on
$(common-objpfx)libcrypt.so$(libcrypt.so-version).
* crypt/nocrypt.c: New file.
* Makefile (subdirs): Add crypt.
* crypt/Makefile: New file.
* Makerules (soversions.mk): Move this target, include of it, and
include of version.mk to ...
* Makeconfig: ... here.
(soversions.mk): Depend on Makeconfig instead of Makerules.
* shlib-versions (*-*-*): Set libcrypt=0.
Wed Jul 17 02:43:28 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* shlib-versions (*-*-gnu*): Set libc=0.0
Tue Jul 16 01:52:42 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/dl-machine.h: Follow Jul 14 change in
sysdeps/i386/dl-machine.h.
Tue Jul 16 00:14:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/inet/syscalls.list (connect, send): Add underscores
to the strong name, not the file name.
* csu/initfini.c: More magic. Detect if .end is produced and put it
in the output iff the compiler does.
* sysdeps/mach/hurd/mmap.c: Use same inheritance arg in second vm_map
call as in first.
* Makerules (make-link): Install the new link with atomic mv -f in
case ln itself requires the library being installed.
* catgets/gencat.c (write_out): Use %Zu to print variables of type
size_t.
* resolv/res_debug.c (__p_rr): Print size_t variable as %lu and
cast it to (unsigned long) to make it work both on 32 and 64
bit architectures.
Sat Jun 22 13:05:25 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* locale/Makefile (distribute): Add `programs/' prefix to all
files in that directory.
* Makerules (distinfo-vars): Assign subdir directly so that `ifdef
subdir' works.
* MakeTAGS (sources, headers): Make them simply expanded variables
so that all-dist is expanded before it is changed.
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
* misc/Makefile (headers): Add ar.h.
* misc/ar.h: New file.
* config.make.in (BUILD_CC): New variable.
* configure.in: Check for BUILD_CC if $host != $build.
* posix/glob.c: Include <alloca.h> only [HAVE_ALLOCA_H], not [sparc].
* Makerules [! objects] (subdir_lib): Depend on the stamp$o files.
(stamp$o files): New targets, create them empty, no deps.
Update from bind-4.9.4-T3B.
* rpm/template: New file.
* rpm/Makefile: New file.
* Makeconfig (sysdep-configures): Remove empty variable.
* Makerules (distinfo-vars): Write defns for $(install-lib.so) and
$(versioned).
* manual/Makefile (subdir_%): Add new rule with no deps, secondary to
to rule w/dep on %, with no-op commands.
* Makerules (subdir_distinfo): New phony target; depend on distinfo.
* Makefile (rpm/%): New rule.
(+subdir_targets): Add subdir_distinfo.
* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Don't add
fpu_control.h here.
* sysdeps/unix/sysv/linux/Dist: Add sys/klog.h.
* elf/dl-open.c (_dl_open): Remove PARENT argument, pass null.
* elf/link.h: Update prototype.
* elf/dl-load.c (_dl_map_object): If dependents' DT_RPATHs don't find
NAME, try the DT_RPATH of the executable itself if dynamic.
* elf/dlopen.c (dlopen): Don't pass first arg to _dl_open.
* elf/dl-load.c (_dl_map_object): Exit DT_RPATH checking loop when an
open succeeds.
* Makerules (build-shlib): Give -L opts for each elt of $(rpath-link).
* sysdeps/mach/hurd/Makefile (sysdep-LDFLAGS): Variable removed.
(rpath-link): Append to this instead.
* elf/dl-lookup.c (_dl_lookup_symbol): If no value and *REF is
null, consider it a strong reference and give the error.
Wed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-open.c (_dl_open): Correctly terminate relocating loop
after relocating NEW when it's the only new object.
* elf/dl-init.c (_dl_init_next): When out of initializers, set
_r_debug.r_state to RT_CONSISTENT and call _dl_debug_state just
before return.
* elf/rtld.c (dl_main): Move _dl_debug_initialize call after
relocation. Call it unconditionally and only fill in DT_DEBUG
if it's present. Then call _dl_debug_state with r_state RT_ADD
before running initializers.
* elf/dl-open.c (_dl_open): Call _dl_debug_initialize and then call
_dl_debug_state with r_state RT_ADD before running initializers
* elf/dl-close.c (_dl_close): Call _dl_debug_state with r_state
RT_DELETE before running finalizers and with RT_CONSISTENT just
before return.
* elf/Makefile (dl-routines): Add dl-debug.
* elf/dl-debug.c: New file.
* elf/rtld.c (_dl_r_debug): Rename to _r_debug and move to dl-debug.c.
(_dl_r_debug_state): Rename to _dl_debug_state and likewise move.
(dl_main): Use _dl_debug_initialize.
* elf/link.h: Fix name to _dl_debug_state in decl.
(_dl_debug_initialize): Declare new function from dl-debug.c.
(_r_debug): Declare it.
* Makerules (distinfo-vars): Add install-{lib,data,bin,sbin,others}.
In distinfo set $(subdir)-VAR and then set VAR to $($(subdir)-VAR).
* Makeconfig (rpath-link): New variable; add $(elfobjdir).
(default-rpath): Use it.
(built-program-cmd): Use it in LD_LIBRARY_PATH.
* Makeconfig (sysdep-configures): Prepend $(sysdep_dir) to names tried.
* sysdeps/unix/Dist: Add make-syscalls.sh.
* misc/Makefile (headers): Add sys/swap.h.
* posix/unistd.h: Remove decls for swapon, swapoff.
* sysdeps/generic/sys/swap.h: New file.
* sysdeps/unix/sysv/linux/sys/swap.h: New file.
* sysdeps/unix/sysv/linux/gnu/types.h: Remove temporary hack #define
of __kernel_fsid_t. It is correctly defines in <linux/types.h> now.
* Makerules (LDFLAGS-c.so): Use __libc_main instead of
__libc_print_version as entry point for shared object.
* version.c [HAVE_ELF] (__libc_main): New function.
* elf/dl-load.c (_dl_map_object_from_fd): Relocate l_entry with the
load address.
* elf/Makefile (routines): Remove init-first.
* csu/Makefile (routines): New variable; put it here instead.
* config.make.in (CFLAGS): New variable.
* io/sys/stat.h (S_ISLNK, S_ISSOCK): Make conditional on __USE_BSD,
not __USE_GNU.
* string/string.h (strncasecmp): Likewise.
link to ld.so if that is not the installed name.
(lib-noranlib): Depend on the installed name in the build directory
instead of on ld.so.
* Makeconfig (link-libc): Include $(elfobjdir)/$(rtld-installed-name)
between libc.so and libc.a, because with libc.so's DT_NEEDED for ld.so
ld searches libc.a before ld.so (is that an ld bug?).
Add $(elfobjdir) to -rpath-link.
* Makerules (elfobjdir): Define as . when $(subdir) is elf.
* sysdeps/i386/dl-machine.h (elf_machine_rel): In R_386_32 case when
relocating _dl_rtld_map, subtract SYM's value from final reloc value,
but don't change *RELOC_ADDR before calling *RESOLVE, because it might
call the function we are relocating!
* elf/dl-close.c: New file.
* elf/link.h: Declare _dl_close.
* elf/Makefile (routines): Add dl-close.
* elf/dlclose.c (dlclose): Use _dl_close.
* elf/Makefile ($(objpfx)librtld.so): Remove libelf from deps.
* elf/dl-runtime.c (_dl_global_scope): New variable.
(_dl_object_relocation_scope): New function.
(fixup): Use it.
* elf/rtld.c (dl_main): Use it.
* elf/dl-open.c (_dl_open): Use it. If (MODE & RTLD_GLOBAL), set the
l_global bit and append the new map to _dl_global_scope.
* elf/link.h: Declare _dl_global_scope, _dl_global_scope_alloc,
and _dl_object_relocation_scope.
* elf/link.h (struct link_map): Add l_loader member.
Remove _dl_map_object_from_fd decl.
* elf/dl-load.c (_dl_map_object): Pass LOADER to ...
(_dl_map_object_from_fd): Take new arg LOADER and set l_loader member.
(_dl_map_object): Try DT_RPATH from all loaders up the chain.
* elf/dl-object.c (_dl_loaded): Variable removed.
(_dl_default_scope): New variable replaces it.
* elf/link.h (_dl_loaded): Remove variable decl; instead define as
macro for _dl_default_scope[2].
(_dl_default_scope): Declare it.
* sysdeps/i386/dl-machine.h (RTLD_START): Use _dl_default_scope[2]
instead of _dl_loaded.
* sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
* elf/rtld.c (dl_main): Use _dl_default_scope for symbol lookups.
* elf/dl-reloc.c (_dl_relocate_object): Remove check for _dl_rtld_map.
* elf/rtld.c (dl_main): Pass 0 for LAZY flag when re-relocating self.
* elf/link.h (struct link_map.l_type): Remove lt_interpreter.
(struct link_map): Add new flag member l_global.
* elf/dl-reloc.c (_dl_relocate_object): Check for _dl_rtld_map
directly instead of looking for lt_interpreter.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
* elf/rtld.c (_dl_start): Don't bother setting BOOTSTRAP_MAP.l_type.
(dl_main): Set _dl_rtld_map.l_type to lt_library.
* elf/dl-deps.c (_dl_map_object_deps): Propagate MAP->l_type to
dependencies loaded, downgrading lt_executable -> lt_library.
* elf/dl-load.c (_dl_map_object_from_fd): Take new arg TYPE and set
l_type from that, translating lt_library->lt_executable based on the
file's ELF type.
(_dl_map_object): Likewise.
* elf/link.h: Update prototypes.
* elf/dl-open.c: Pass type lt_loaded.
* elf/rtld.c: Pass type lt_library.
* elf/dl-load.c (_dl_map_object_from_fd): Handle null return from
_dl_new_object.
(_dl_map_object_from_fd: lose): Unchain and free L if it's not null.
Free REALNAME, and just use NAME in error message.
* elf/dl-object.c (_dl_new_object): If malloc fails, return null
instead of calling _dl_signal_error.
* elf/dl-load.c (_dl_map_object_from_fd): Close FD before signalling
error for _dl_zerofd setup failure.
* elf/dl-object.c (_dl_startup_loaded): Variable removed.
* elf/link.h: Remove its decl.
* elf/dl-reloc.c (_dl_relocate_object): Take new SCOPE arg and pass it
through to _dl_lookup_symbol.
* elf/link.h (_dl_relocate_object): Update comment and prototype.
* elf/rtld.c (dl_main): Pass scope vector to _dl_relocate_object.
* elf/dl-lookup.c (_dl_lookup_symbol): Arg SYMBOL_SCOPE is now a
null-terminated vector of pointers, no longer a vector of exactly two.
* elf/link.h (_dl_lookup_symbol): Update comment and prototype.
* elf/dl-runtime.c (fixup): Set up scope for symbol lookup properly as
done in _dl_relocate_object.
* elf/dlopen.c: Pass "" to _dl_open when FILE is null.
* sysdeps/unix/sysv/linux/configure.in: New file, start with configure.
Add check for installed <linux/version.h> being v2.0 or later.
* sysdeps/generic/dl-sysdep.c (_dl_sysdep_open_zero_fill): Call __open
instead of open.
(_dl_sysdep_fatal): Call __write instead of write.
(_dl_sysdep_message): Likewise.
Sun Jun 9 20:40:00 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/fpu/e_acosl.c: New file.
* Makerules (o-objects): New variable. Use it in place of
$(objects:.o=$o); it filters out $(elide-routines$o).
Use o-iterator for ar and ranlib rules so they use the per-type object
list.
* sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
* Makerules (make-target-directory): Use ./mkinstalldirs so we do not
assume . is in PATH.
Sat Jun 8 22:05:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* math/Makefile (distribute): Comment out addition of
$(long-m-routines) sources until they are all written.
* math/Makefile (distribute): Append long double source names to this
instead of using elided-routines.
Sat Jun 8 15:15:07 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* mach/mach_shortcuts.c: Obsolete file removed.
* mach/mach_syscalls.h: Likewise.
* hurd/Makefile (distribute): Consolidate defns into one.
* time/Makefile (tzfiles): Add solar87 solar88 solar89.
* version.h (VERSION): Set to 1.90.
* Makerules (distinfo-vars): Write extra-libs and *-routines for each
of its elts.
* MakeTAGS (sources): Add those sources.
* MakeTAGS (all-sources): Add $(others:=.c) and $(tests:=.c).
Wed May 29 08:53:08 1996 Miles Bader <miles@gnu.ai.mit.edu>
* hurd/report-wait.c (_S_msg_report_wait): Return `itimer' for the
itimer thread.
* hurd/hurdinit.c (_hurd_init): Set _HURDSIG_TRACED before calling
_hurd_proc_init.
* string/tester.c (main): Fix strsep tests 6, 7, 20 to expect null
token instead of it being implicitly skipped.
* Makerules (sed-remove-objpfx): Avoid extra space in regexp due to
continuation line.
* sysdeps/unix/sysv/linux/i386/socket.S: Fix off-by-one error in
setting %ecx to 2nd syscall arg: we have pushed nothing, so function
args are found at 4(%esp), not 8(%esp).
* libc-symbols.h (lint): Macro removed. The sunrpc code does some
really stupid things #ifdef lint.
* sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter): Fix
struct member name: sc_eip -> eip.
* mach/Machrules (%.udeps rule): Write deps for %_server.[ch] too.
(%_server.[ch] rule): Don't depend on %.defs; use #include to get
installed .defs file.
* stdio-common/vfprintf.c (flockfile, funlockfile): Define to
nothing for stdio. Fix fUNlockfile -> funlockfile for libio.
* stdio-common/vfscanf.c: Likewise.
Sat May 11 13:43:41 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* hurd/hurdfault.c: Include faultexc_server.h instead of faultexc.h.
* mach/Machrules (%.ir rule): Don't produce deps for imports.
* elf/dl-fini.c (_dl_fini): Clear L->l_init_called after calling fn.
* Makerules (install): Depend on $(slibdir)/libc.so$(libc.so-version).
[!subdir] ($(libdir)/libc.so, $(common-objpfx)/libc-syms.so): Protect
these targets and install dep on $(libdir)/libc.so with this.
* hurd/Makefile: Removed all rules and defns for using code from Hurd
sources and installing headers from there.
* sysdeps/mach/hurd/errnos.awk: Set in_mach_errors to FILENAME when we
set it. In Mach error matching clause, only match if FILENAME is
still the same value.
* sysdeps/mach/hurd/Makefile: Don't include sysdeps/mach/Makefile;
$(mach-srcdir) no longer exists.
(hurd-srcdir): Variable removed.
(includes): Don't append -I$(hurd-srcdir).
(last-includes): Variable removed.
Remove vpath specs using $(hurd-srcdir).
(mach-errno-h): New canned sequence.
($(common-objpfx)errnos.d): New target, generated included makefile
to determine absolute file names of Mach headers to search for error
codes and set variable mach-errnos-deps.
($(common-objpfx)stamp-errnos): Depend on $(mach-errnos-deps) instead
of prior explicit list.
(generated): Add errnos.d, stamp-errnos.
* mach/Machrules (some-if-rtn): New variable and target; compute deps
of some if routine and make all if routines depend on that .d file
instead of static list of .h files.
* mach/Makefile (mach/mach_interface.defs,
mach/memory_object_user.defs): Targets removed.
($(objpfx)mach-syscalls.mk): Tweak this kludge so it doesn't depend
directly on Mach sources.
* sysdeps/mach/Makefile (mach-srcdir): Variable removed.
(includes): Don't append -I$(mach-srcdir).
Remove vpath specs using $(mach-srcdir).
* hurd/Makefile (server-interfaces): Add faultexc.
(sig): Remove it from here.
(fault%.[ch]): Rule removed.
(MIGFLAGS-faultexc): New variable.
* hurd/faultexc.defs: New file.
* mach/Machrules (%.ustamp rule): Pass $(MIGFLAGS-$*) to mig.
(%_server.[ch] rule): Likewise.
* mach/Makefile: Removed all rules and defns for using code from Mach
sources and installing headers from there.
* Makeconfig [$(build-shared)=yes] (link-libc): Append
$(libc.so-version) to libc.so.
* mach/Machrules (%.ustamp rule): Don't depend on %.defs.
(%.udeps): New rule parallel to that one, generating included
makefiles with -M output from `#include <%.defs>'.
* Makerules (sed-remove-objpfx): Remove space before \ at eol.
* Rules (static-only-routines rule): Remove spurious space in dep.
* misc/getusershell.c: Undo changes of 7 May 96 (rev 1.6).
Cast string constants to char *.
* posix/glob/SMakefile, posix/glob/SCOPTIONS, posix/glob/Makefile.ami:
New files, AmigaDOS support from Aaron Digulla.
* posix/Makefile (glob.tar): Add AmigaDOS support files.
parts of o-iterator-doit defns.
(unversioned libraries install rule): Fix pattern.
* mach/Makefile (mach-src-headers): Use $(base-machine) instead of
$(config-machine).
($(includedir)/machine): Likewise.
* config.make.in (base-machine): New variable.
* configure.in (machine): Move case stmt to set $machine out of sysdep
dirs AC_CACHE_CHECK.
(base_machine): New variable, set in that switch and AC_SUBST'd.
* Makerules (stub-$(subdir)): Use file name in directory as output,
since cmd is cd'd.
* extra-lib.mk: Put libs in $(common-objpfx) instead of $(objpfx).
* Makerules ($(install-lib) rules): Find libs with $(common-objpfx)
instead of $(objpfx).
* posix/glob.c (glob_pattern_p): Avoid scanning past eos if
the pattern ends with a backslash and quoting is enabled.
* posix/fnmatch.c (fnmatch): Likewise; return FNM_NOMATCH for such
patterns.
* locale/nl_langinfo.c (nl_langinfo): Use DATA->values instead of
DATA->strings.
* Makerules (BUILD_CFLAGS): Remove $(common-objpfx) from config.h.
* configure.in (.weakext check): Fix asm code to use .weakext instead
of .weak! Fix bogus test calls.
* configure: Regenerated.
* stdio-common/printf.h, stdio-common/printf_fp.c,
stdio-common/vfprintf.c: Place const in parameter list at
correct place.
Wed Mar 20 23:58.12 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* sysdeps/i386/ldbl2mpn.c: Copy of former version of
sysdeps/ieee754/ldbl2mpn.c.
* sysdeps/ieee754/ldbl2mpn.c: Remove i386 specific unification.
Reported by Andreas Schwab.
Wed Mar 20 19:58:43 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* version.c: Include version.h to define RELEASE and VERSION macros.
(__libc_release, __libc_version): Use them.
* locale/SYS_libc.c (_libc_intl_domainname): Include ../version.h and
use VERSION to define domainname as `SYS_GNU_libc-VERSION'.
* Make-dist (rel+vers): Snarf the macro values from version.h.
* MakeTAGS (extract): Pass $(XGETTEXTFLAGS-$(@F)).
(XGETTEXTFLAGS-siglist.pot, XGETTEXTFLAGS-errlist.pot): New variables;
pass -a for these files.
* Makerules (po/%.pot): Depend on FORCE target so recursive make is
always run.
* sysdeps/sparc/jmp_buf.h: Rewritten; use array of ints, not struct.
* sysdeps/sparc/setjmp.S: Rewritten; store %fp value as well.
* sysdeps/sparc/__longjmp.S: Rewritten; unwind frames one by one with
`restore' until the target frame is hit.
Sun Mar 10 20:29:40 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/sigsuspend.c: New file.
* sysdeps/unix/sysv/linux/syscalls.list: Remove sigsuspend, add
s_sigsuspend.
Thu Mar 7 21:30:58 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (+make-deps, sed-remove-objpfx): Quote periods on the
left side of sed substitutions.
Sun Mar 10 16:58:10 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* stdio-common/printf_fp.c (hack_digit): __mpn_normal_size
is not available anymore. Do it ourselves.
* sysdeps/unix/sysv/linux/i386/fpu_control.h (_FPU_SETCW):
Correct GCC `asm' syntax.
* stdio-common/Makefile (tests): Add tst-ungetc.
* stdio-common/tst-ungetc.c: New test from drepper.
* stdio-common/tstscanf.c (main): New %[ test case from drepper.
* sysdeps/libm-ieee754/s_scalbn.c (scalbn): Rename to __scalbn;
somehow this was missed, though the weak alias is already there.
* Rules (others): Depend on $(extra-objs), $(install-lib),
$(install-bin), $(install-sbin), in object directory.
* Makeconfig (link-libc): Don't pass -rpath option with default
path, since ld.so should use the same default.
* Makerules (build-shlib): Likewise.
* Makerules (make-target-directory): Use mkinstalldirs.
* sysdeps/mach/i386/sysdep.h: Include unix/i386/sysdep.h to
redefine ENTRY et al.
* sysdeps/unix/sysv/linux/i386/sysdep.h (NO_UNDERSCORES, ENTRY):
Macros removed. The code in unix/i386/sysdep.h should now suffice.
* sysdeps/unix/i386/sysdep.h (ALIGNARG): New macro, defns for
[HAVE_ELF] and not.
(ENTRY): Use it in .align directive.
(CALL_MCOUNT): New macro, empty unless [PROF].
(ENTRY): Do CALL_MCOUNT just after the label.
* Makeconfig (CPPFLAGS-.po): New variable, use -DPROF so assembly
code can call mcount.
Tue Feb 20 23:05:16 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* time/private.h, time/zdump.c, time/zic.c: Updated verbatim from ADO;
translation markings are now integrated in his distribution.
* stdlib/strtod.c (round_and_return): Add missing (mp_limb) 1 cast.
* po: New directory where `LANG.po' files for message translations
will reside.
* po/SYS_libc.pot: New file, template of message strings as in source.
* MakeTAGS: New rules to build po/SYS_libc.pot automatically from
the source using xgettext.
* Makerules ($(..)po/%.pot): New rule.
* manual/Makefile (../po/manual.pot): New target, make it empty.
* sysdeps/unix/bsd/alarm.c: Moved to sysdeps/unix/alarm.c.
* sysdeps/unix/bsd/nice.c: Moved to sysdeps/unix/nice.c.
* sysdeps/unix/bsd/stime.c: Moved to sysdeps/unix/stime.c.
* sysdeps/unix/bsd/time.c: Moved to sysdeps/unix/time.c.
* sysdeps/unix/bsd/utime.c: Moved to sysdeps/unix/utime.c.
* sysdeps/posix/utimes.c (__utimes): There are 1000000 usecs in a
sec.
Sun Feb 18 13:56:00 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/Makefile, time/Makefile: Make `all' the default target.
Mon Feb 19 18:09:04 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* misc/sys/ptrace.h: Moved to ...
* sysdeps/generic/sys/ptrace.h: ... here.
* sys/ptrace.h: File removed.
Sun Feb 18 12:13:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/Makefile (headers): Add fpu_control.h.
* sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Put it into .bss
so that the symbol alias works.
* sysdeps/unix/sysv/linux/m68k/fpu_control.h (_FPU_SETCW): Corrected.
* sysdeps/unix/sysv/linux/resourcebits.h: New file.
* sysdeps/unix/sysv/linux/sys/ptrace.h: New file.
* sysdeps/unix/sysv/linux/syscalls.list: Add getegid, geteuid,
getppid and reboot.
* sysdeps/unix/sysv/linux/sysconf.c: Special version that does not
use getdtablesize.
Sat Feb 17 10:30:21 1996 David Mosberger-Tang <davidm@AZStarNet.com>
* stdio-common/printf_fp.c, stdlib/strtod.c, sysdeps/ieee754/dbl2mpn.c,
sysdeps/ieee754/ldbl2mpn.c, sysdeps/ieee754/mpn2dbl.c,
sysdeps/ieee754/mpn2ldbl.c: Cast left operands of shift instructions
to `long' where necessary.
Thu Feb 15 20:04:50 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* stdlib/fpioconst.h: Introduce new constant _FPIO_CONST_OFFSET.
* stdio-common/printf_fp.c, stdlib/strtod.c: Use _FPIO_CONST_OFFSET
to correctly access MPN array depending on architecture.
Mon Feb 19 15:30:26 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* stdio-common/tstscanf.c (main): Add check for "0" as %d.
* sysdeps/stub/msync.c: Undo change of Jan 29; just two args.
Only some systems have three args; let them define their own stub.
* sysdeps/generic/dl-sysdep.c: Declare _dl_secure.
* sysdeps/generic/machine-gmon.h: New file.
* gmon/Makefile (distribute): Add machine-gmon.h.
* gmon/mcount.c: Undo changes of Feb 13.
Include "machine-gmon.h".
Sun Feb 18 13:24:06 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/direct.h: File removed, since it is
identical to unix/common/direct.h.
* sysdeps/unix/Makefile [no_deps]: Don't include s-proto.d.
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Don't add ipc.
* stdio-common/Makefile (tests): Remove scanf6.
* sysdeps/unix/sysv/linux/Makefile (non-lib.a): Append libieee.a.
* time/mktime.c (mktime): Move static variable localtime_offset to
file scope.
* stdio-common/vfscanf.c: Put '0' in buffer before scanning for %i
base indicator.
Thu Feb 15 16:56:17 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/dl-machine.h (elf_machine_load_address): Corrected.
(ELF_MACHINE_BEFORE_RTLD_RELOC): Define.
(_dl_runtime_resolve): Save %a1 as well.
(ELF_MACHINE_RUNTIME_FIXUP_ARGS): Add second dummy arg.
(elf_machine_relplt): Define.
* elf/dl-runtime.c: Include possible extra args in declaration of
fixup.
* sysdeps/unix/sysv/linux/sys/mman.h: Define MAP_ANON and
MAP_FILE if not already defined.
* elf/elf.h: Add m68k reloc definitions.
* sysdeps/m68k/dl-machine.h, sysdeps/m68k/elf/start.S: New files.
Sat Feb 10 13:09:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/sys/mman.h: Define MAP_ANON and
MAP_FILE if not already defined.
* elf/elf.h: Add m68k reloc definitions.
* sysdeps/m68k/dl-machine.h, sysdeps/m68k/elf/start.S: New files.
* gmon/Makefile (headers): Remove machine-gmon.h.
* sysdeps/stub/machine-gmon.h, sysdeps/i386/machine-gmon.h: Removed.
* gmon/mcount.c [! NO_UNDERSCORES] (_mcount): Specify "mcount" as
the asm name.
(_mcount): Define normally, taking no args.
Use __builtin_return_address to fetch PC values of caller and caller's
caller.
Tue Feb 13 00:12:12 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* gmon/Makefile (headers): Remove machine-gmon.h.
* sysdeps/stub/machine-gmon.h, sysdeps/i386/machine-gmon.h: Removed.
* gmon/mcount.c [! NO_UNDERSCORES] (_mcount): Specify "mcount" as
the asm name.
(_mcount): Define normally, taking no args.
Use __builtin_return_address to fetch PC values of caller and caller's
caller.
* Makerules: Rewrote rules to update libc archives of all flavors.
Define separate specific rules for each flavor using o-iterator.
* sysdeps/unix/Makefile: Include s-proto.d only ifdef subdir.
Sat Feb 10 11:35:16 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (ar-symtab-name): New macro. Replace all occurences
of __.SYMDEF by $(ar-symtab-name).
* sysdeps/unix/sysv/Makefile (ar-symtab-name): Define as empty.
* Makefile (configure, %/configure): Depend on aclocal.m4.
* Make-dist (configure, %/configure): Likewise.
* sysdeps/unix/Makefile: Include s-proto.d for its deps.
* gmon/sys/gmon.h: Don't include machine-gmon.h; those defns are
only needed in the implementation, not for any users.
* time/northamerica: Updated from ADO 96c, new rules for Mexico in
1996.
* Makerules (COMPILE.s): New variable.
* sysdeps/unix/Makefile (sysd-syscalls): New target; generate with
make-syscalls.sh and include it.
[$(subdir)=misc] (sysdep_routines): Append extra syscalls from
sysd-syscalls.
* sysdeps/unix/make-syscalls.sh: New file.
* Makerules (COMPILE.S): New variable.
* Makerules: Use $(do-install-so) for installing shared objects.
(do-install-so): New canned sequence. Make a symlink LIB.so after
installing LIB.so.VERSION.
* inet/netinet/in.h: Fixed typo in IPPORT_WHOIS.
* hurd/hurdsig.c (_hurd_internal_post_signal): For SIGNO == 0,
skip straight to pending check. When UNTRACED, resume process
from suspension first.
* intl/Makefile (headers): New variable, libintl.h.
[gettext-srcdir]: New rules to copy source from $(gettext-srcdir)/intl.
* configure.in: Check for --with-gettext arg.
Fri Nov 10 13:51:30 1995 Richard Stallman <rms@gnu.ai.mit.edu>
* malloc/malloc.c (get_contiguous_space): New function.
(morecore): Rewrite allocating new malloc info table.
(_malloc_internal): Use get_contiguous_space.
Fri Nov 10 13:03:40 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* hurd/hurdexec.c (_hurd_exec): If exec'ing self, pass
_hurd_msgport to be destroyed.
* Makerules (installed-libcs): Filter out %_pic.a.
* hurd/hurdinit.c (_hurd_proc_init): When traced, use msg_sig_post
to our msgport to take SIGTRAP, instead of _hurd_raise_signal.
* hurd/Makefile (user-interfaces): Add hurd/process_request.
* sysdeps/mach/hurd/group_member.c: New file.
* sysdeps/generic/group_member.c: New file.
* Makerules (lib-noranlib): Don't depend on $(install-lib).
(others): Do.
* extra-lib.mk: Fix test of $(lib)-no-lib-dep.
Mon Oct 30 12:33:10 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Rules (others): Depend on $(extra-objs).
* posix/unistd.h [__USE_GNU]: Declare group_member, __group_member.
* posix/Makefile (routines): Add group_member.
* sysdeps/posix/euidaccess.c: New file, adapted from fileutils.
* sysdeps/unix/sysv/linux/i386/sigaction.c: Tighten constraint for
SIG operand in asm so it must be a register.
Add dead return to quiet gcc warning.
* Makerules (sysd-rules): Write a defn for sysd-rules-done.
[! sysd-rules-done]: Inhibit deps.
* configure.in: Grok arg --enable-libio.
($stdio = libio): Define USE_IN_LIBIO.
* config.h.in (USE_IN_LIBIO): Add #undef.
* config.make.in (stdio): New variable, set by configure.
* Makeconfig (stdio): New variable.
* stdio.h [USE_IN_LIBIO]: Include libio/stdio.h instead of
stdio/stdio.h.
* stdio-common/Makefile: New file.
* stdio/Makefile: Half the contents moved to stdio-common/Makefile.
* stdio/_itoa.c: Moved to stdio-common.
* stdio/_itoa.h: Moved to stdio-common.
* stdio/asprintf.c: Moved to stdio-common.
* stdio/bug1.c: Moved to stdio-common.
* stdio/bug1.input: Moved to stdio-common.
* stdio/bug2.c: Moved to stdio-common.
* stdio/bug3.c: Moved to stdio-common.
* stdio/bug4.c: Moved to stdio-common.
* stdio/bug5.c: Moved to stdio-common.
* stdio/bug6.c: Moved to stdio-common.
* stdio/bug6.input: Moved to stdio-common.
* stdio/bug7.c: Moved to stdio-common.
* stdio/dprintf.c: Moved to stdio-common.
* stdio/errnobug.c: Moved to stdio-common.
* stdio/getline.c: Moved to stdio-common.
* stdio/getw.c: Moved to stdio-common.
* stdio/perror.c: Moved to stdio-common.
* stdio/printf-parse.h: Moved to stdio-common.
* stdio/printf-prs.c: Moved to stdio-common.
* stdio/printf.c: Moved to stdio-common.
* stdio/printf.h: Moved to stdio-common.
* stdio/printf_fp.c: Moved to stdio-common.
* stdio/psignal.c: Moved to stdio-common.
* stdio/putw.c: Moved to stdio-common.
* stdio/reg-printf.c: Moved to stdio-common.
* stdio/scanf.c: Moved to stdio-common.
* stdio/snprintf.c: Moved to stdio-common.
* stdio/sprintf.c: Moved to stdio-common.
* stdio/sscanf.c: Moved to stdio-common.
* stdio/tempnam.c: Moved to stdio-common.
* stdio/temptest.c: Moved to stdio-common.
* stdio/test-fseek.c: Moved to stdio-common.
* stdio/test-fwrite.c: Moved to stdio-common.
* stdio/test-popen.c: Moved to stdio-common.
* stdio/test_rdwr.c: Moved to stdio-common.
* stdio/tmpfile.c: Moved to stdio-common.
* stdio/tmpnam.c: Moved to stdio-common.
* stdio/tst-fileno.c: Moved to stdio-common.
* stdio/tst-printf.c: Moved to stdio-common.
* stdio/tstgetln.c: Moved to stdio-common.
* stdio/tstgetln.input: Moved to stdio-common.
* stdio/tstscanf.c: Moved to stdio-common.
* stdio/tstscanf.input: Moved to stdio-common.
* stdio/vfprintf.c: Moved to stdio-common.
* stdio/vfscanf.c: Moved to stdio-common.
* stdio/vprintf.c: Moved to stdio-common.
* stdio/xbug.c: Moved to stdio-common.
* sysdeps/generic/Makefile (siglist.c rules): Do this in subdir
stdio-common instead of stdio.
* sysdeps/unix/Makefile (errlist.c rules): Likewise.
* stdio-common/asprintf.c [USE_IN_LIBIO]: Call libio primitive
function.
* stdio-common/dprintf.c: Likewise.
* stdio-common/printf.c: Likewise.
* stdio-common/scanf.c: Likewise.
* stdio-common/snprintf.c: Likewise.
* stdio-common/sprintf.c: Likewise.
* stdio-common/sscanf.c: Likewise.
* stdio-common/vprintf.c: Likewise.
* Makerules: Include $(+depfiles) directly instead of generating
depend-$(subdir).
(depend-$(subdir)): Target removed.
(common-clean): Don't remove depend-$(subdir).
* sysdeps/stub/sys/sem_buf.h (union semun): New type.
* sysdeps/mach/hurd/i386/init-first.c (init1) [PIC]: Call
__libc_global_ctors.
* sysdeps/i386/init-first.c: Rewritten.
* sysdeps/unix/sysv/linux/i386/init-first.S: File removed.
* sysdeps/unix/sysv/linux/i386/init-first.c: New file.
* sysdeps/unix/sysv/linux/i386/fpu_control.h: Fix name in decl of
___fpu_control.
* Makerules (build-shlib): New canned sequence, broken out of
lib%.so rule. Link in $^ instead of just $<.
(lib%.so: lib%_pic.a): Use it.
(libc.so): New target; use $(build-shlib) for cmds, but also depend
on soinit.so first and sofini.so last.
* elf/soinit.c: New file.
* elf/sofini.c: New file.
* elf/Makefile (distribute): Add soinit.c and sofini.c.
(extra-objs): Add soinit.so and sofini.so.
* sysvipc/sys/shm.h (shmat): Fix return type to char *.
* sysdeps/stub/sys/ipc_buf.h (key_t): Type removed.
* misc/syslog.c (vsyslog): Rewritten using open_memstream to
dynamically allocate buffers.
* Makerules (install-lib-nosubdir): Make this, rather than
install-no-libc.a, depend on the installed shared libraries.
* sysdeps/mach/hurd/i386/init-first.c (init): Take just one arg,
DATA for the entry SP; DATA[-1] is always the return address
location. In both cthreads and non-cthreads cases, use asm to
force parameters into %eax and %ecx before return, and mutate
DATA[-1] to return to specific asm code to set up the user from
%eax and %ecx.
[PIC] (_init): Caller changed.
(__libc_init_first) [! PIC] (doinit): Use asm to effect call to init
with SP unwound to argument data ptr.
Thu Jul 6 14:28:56 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/hurd/dl-sysdep.c (fmh): Fixed this kludge to work
when 0x08000000 and up are not mapped.
* Makerules (stamp$o-$(subdir) rule): Remove the timestamp file
before touching it.
(lib%.so): Use -Wl to get -soname to ld.
* elf/dlsym.c: Pass final arg to _dl_lookup_symbol.
* elf/Makefile (libdl.so): Pass $(LDFLAGS.so).
* Makerules (lib%.so: lib%_pic.a): Pass -soname switch giving the
library's name including $(libprefix) and major version number.
* locale/locale-ctype.c (allocate_arrays): Use xmalloc and bzero
in place of xcalloc.
* Makeconfig (prefix, exec_prefix, libprefix): Instead of
`ifndef', use the $(origin) function to only set these if they are
undefined, and not if they are defined to empty.
* gnu-versions.h: New file.
* features.h (__GNU_LIBRARY__): Increase value to 5.
* Makerules (lib%.so: lib%_pic.a): Moved this rule to after
installation rules.
* sysdeps/mach/sysdep.h [HAVE_ELF] (ENTRY): Redefine this macro so
it uses the `.type' directive, which is necessary for shared
libraries to work properly.
from zero fill.
* elf/dl-lookup.c (_dl_lookup_symbol): Take new flag arg NOSELF;
if nonzero, don't let *REF satisfy the reference itself.
* elf/link.h (_dl_lookup_symbol): Add new arg NOSELF in decl.
* sysdeps/i386/dl-runtime.c (_dl_runtime_resolve): Pass new arg to
_dl_lookup_symbol.
* elf/do-rel.h (elf_dynamic_do_rel): Pass new second arg of
R->r_offset to RESOLVE callback.
* elf/dl-reloc.c (_dl_relocate_object: resolve): Don't let *REF
satisfy the reference itself if its value equals the reloc's
offset.
* elf/rtld.c (dl_main): Write a newline in fatal msg.
* Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS.so).
* elf/rtld.c [! NDEBUG] (__assert_perror_fail): New function.
* hurd/hurdstartup.c (_hurd_startup): Fancier kludge to guess phdr
and user entry point addresses.
* elf/dl-load.c (open_path): Don't do strlen on DIRPATH if it's null.
(_dl_map_object): DT_RPATH value is relative to DT_STRTAB value.
* Makerules (install-lib.so): Don't include libc.so.
[$(build-shared)=yes] (install): Depend on the installed libc.so file.
[$(build-shared)=yes] (install-no-libc.a): Make this, rather than
install, depend on the installed $(install-lib.so) files.
[$(build-shared)=yes] (install-lib.so): Append libc.so after that rule.
* sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Add kludge to
allocate high addresses to avoid random mappings appearing there.
(mmap): Comment out mask; always pass zero.
Tue Jun 6 13:34:53 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/i386/dl-machine.h (ELF_MACHINE_USER_ADDRESS_MASK): New macro.
* sysdeps/mach/hurd/dl-sysdep.c (mmap): Use it as mask in vm_map call.
* elf/dl-error.c (_dl_catch_error): Clear *ERRSTRING and *OBJNAME
when successful.
* sysdeps/mach/hurd/dl-sysdep.c (threadvars): New static variable.
(__hurd_threadvar_max, __hurd_threadvar_stack_offset): Define these
variables, using the `threadvars' buffer.
* elf/dl-reloc.c: Don't dereference L->l_prev when it's null.
* sysdeps/i386/dl-runtime.c: Likewise.
* elf/rtld.c (dl_main): Add missing NULL terminating argument in
_dl_sysdep_fatal call.
(__assert_fail): Likewise.
* locale/Makefile (localedef-modules): Renamed ctype to
locale-ctype so as not to conflict with the object file for
ctype/ctype.c in the build directory.
* sysdeps/i386/dl-machine.h (elf_machine_rel): If MAP->l_type is
lt_interpreter, first undo relocation done during bootstrapping.
* sysdeps/mach/hurd/i386/init-first.c: In cthreads case, handle
args on stack from kernel.
* posix/Makefile, sysdeps/alpha/Makefile,
* sysdeps/mach/hurd/Makefile, sysdeps/sparc/Makefile, Makefile,
* Makerules, Make-dist: Fix "cvs commit" cmds in rules to not fail
in the absence of CVS dirs.
* hurd/hurdstartup.c: Don't call __mach_init. Grok args from the
kernel on the stack properly.
* set-init.c: Never call _init/_fini; just run __libc_subinit.
* Makerules (LDFLAGS-c.so): Add -nostartfiles.
* mach/Machrules (LDFLAGS-$(interface.so)): Likewise.
* configure.in: Move defaulting of --with-elf and --with-gnu-*
based on host os outside the AC_CACHE_VAL for the sysdirs
calculation.
* Makeconfig (localedir, nlsdir): New variables.
* values.h: New file.
* Makefile (headers): Add values.h.
* locale/Makefile (distribute): Add error.h.
* locale/localedef.c: Include "error.h".
(main): Use error_message_count instead of warning_cntr.
Implemented runtime dynamic linker to support ELF shared libraries.
* elf/Makefile: Added rules to make ld.so and libdl.
* elf/dl-error.c: New file.
* elf/dl-fini.c: New file.
* elf/dl-init.c: New file.
* elf/dl-load.c: New file.
* elf/dl-lookup.c: New file.
* elf/dl-object.c: New file.
* elf/dl-reloc.c: New file.
* elf/dlclose.c: New file.
* elf/dlerror.c: New file.
* elf/dlopen.c: New file.
* elf/dlsym.c: New file.
* elf/dynamic-link.h: New file.
* elf/link.h: New file.
* elf/rtld.c: New file.
Mon May 1 18:48:30 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Makerules (LDFLAGS-c.so): Add -interp and -e switches to make
libc.so runnable.
* version.c (__libc_print_version): Add "et al" and missing NL to
author credit.
* mach/Machrules [interface-library]
(LDFLAGS-$(interface-library:lib%=%.so)): New variable, set to
-nostdlib.
* sysdeps/mach/hurd/fork.c: Subfunction `unlockss' removed. Lock
_hurd_siglock only around initial task creation in parent. Use
_hurd_critical_section_unlock at end. Handle dead name rights
properly, and deal with a send right dying while we try to copy
it. For the time being, use assert_perror for kernel and proc RPC
failures.
Fri Apr 21 01:10:15 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* extra-lib.mk: Don't include $(o-iterator); construct it by hand
using $(object-suffixes-$(lib)) instead.
* sysdeps/mach/hurd/Makefile (LDLIBS-c.so): New variable.
* Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS-$(notdir $*).so).
(LDFLAGS-c.so): New variable.
* resolv/res_init.c (res_init): Don't clobber _res.options with
RES_DEFAULT. If RES_INIT is clear, OR in RES_DEFAULT.
* hurd/hurd.h: Declare _hurd_startup.
* hurd/hurdstartup.c: New file.
* hurd/Makefile (routines): Add hurdstartup.
* Makerules (+depfiles): Translate %.so to %.o in $(extra-objs).
* malloc/free.c [emacs] (__malloc_safe_bcopy): Define to safe_bcopy.
* malloc/realloc.c (__malloc_safe_bcopy): Undefine before defining.
* malloc/free.c (memmove, __malloc_safe_bcopy): Do include these
#ifdef emacs, but only #ifndef memmove.
* malloc/realloc.c [emacs] (__malloc_safe_bcopy): Just #define to
safe_bcopy.
(memmove): Define only if undefined.
* stdio/_itoa.h (_EXTERN_INLINE): Define if undefined.
(_itoa): Use it in defn.
* sysdeps/mach/hurd/i386/trampoline.c: Add a link to
SS->active_resources, so that _hurdsig_longjmp_from_handler will
be called when a longjmp unwinds the signal frame.
* sysdeps/mach/hurd/i386/sigreturn.c: Remove the link on the
SS->active_resources chain added by _hurd_setup_sighandler.
* hurd/sigunwind.c: New file.
* hurd/Makefile (sig): Add sigunwind.
* Makerules (lib%.so: lib%_pic.a): Remove dir name from $*.
* MakeTAGS (tags-sources): Include $(all-dist).
[subdir] (all-dist): Define to $(distribute).
parent objdirs.
* extra-lib.mk (object-suffixes-$(lib)): New variable, produced by
filtering out $($(lib)-inhibit-o); use that instead of
$(object-suffixes) in all the other variables.
(lib-noranlib): Depend on $(install-lib) in objdir.
(common-mostlyclean): Remove $(install-lib) and stub-$(subdir)
from objdir. Don't remove TAGS; it comes in the distribution.
* malloc/malloc.c (morecore): Save errno around call to
_realloc_internal. Don't account for the additional new blocks of
the info table itself when choosing the new table size for the
first crack; if it succeeds, the new blocks will have been found
in existing free space already described by the existing info
table.
Changes from Germano Caronni <caronni@tik.ethz.ch>:
Changes from Germano Caronni <caronni@tik.ethz.ch>:
* sunrpc/Makefile (install-lib): Variable removed.
(rpcsvc-objs): Variable removed.
(extra-objs): Don't include $(rpcsvc-objs).
(extra-libs): New variable, contains librpcsvc.
(librpcsvc-routines): New variable.
(librpcsvc-inhibit-o): New variable, contains .so.
(omit-deps): Set this to $(librpcsvc-routines).
($(objpfx)rpcgen): Don't use $(libc.a).
(lib, $(objpfx)librpcsvc.a): Targets removed.
* o-iterator.mk, extra-lib.mk: New files.
* Makerules (o-iterator): New variable.
[extra-libs]: Include extra-lib.mk to generate rules for each word
of $(extra-libs).
* Makefile (distribute): Add extra-lib.mk, o-iterator.mk.
(IMPLICIT_ONE, *_MAX_10_EXP_LOG): Macros removed; no longer needed.
* stdio/fpioconst.c, stdio/fpioconst.h: Don't use
LDBL_MAX_10_EXP_LOG; LAST_POW10 defines the maximal available
exponent.
* 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.
* Makerules (libtypes, object-suffixes): New variables.
(libtype.*, CFLAGS-*, CPPFLAGS-*): New variables for each object
suffix.
(CFLAGS, CPPFLAGS): Append $(C{,CPP}FLAGS-$(suffix $@)).
(%.so, %.po, %.go): New compilation rules for %.S, %.s, %.c.
(close-check-inhibit-asm): Append a semicolon.
(sysd-rules): Generate rules for each object suffix.
(compile.S, compile.c): Always assume gcc.
(OUTPUT_OPTION): Define unconditionally.
(+make-deps): In generated rule, produce a dependent for each
object suffix.
(.SUFFIXES): Add $(object-suffixes) in place of .o.
(.PRECIOUS): Make all suffix flavors precious.
($(libc.a)): Target removed.
(lib): Depend on each enabled libtype.
(libobjs, objects, objs): Depend on all the enabled object flavors.
(lib%.a): New pattern rule.
[$(build-shared)=yes] (lib%.so: lib%_pic.a): New pattern rule.
(stamp-$(subdir)): Rewritten to a pattern rule for stamp.%-$(subdir)
to make one for each flavor; library dep rule likewise rewritten.
($(libc.a)(__.SYMDEF)): Target replaced with one target for each
flavor.
(symdef.%): New pattern rule; helper for __.SYMDEF targets.
(installed-libcs): New variable.
(install): Depend on that instead of
$(libdir)/lib$(libprefix)$(libc-name).a;
that file's rule rewritten to make each enabled libtype.
(install-lib.so): New variable, filters lib%.so from $(install-lib).
(install-lib): Filter out lib%.so after setting install-lib.so.
[$(build-shared)=yes] (install): Install $(install-lib.so).
(common-mostlyclean): Remove all flavors of objects.