diff --git a/ChangeLog b/ChangeLog index edec159d38..067a5ac3b0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,67 @@ +1998-05-25 Ulrich Drepper + + * malloc/thread-m.h: Use __mutex_init function in mutex_init macro + for Hurd. Patch by Mark Kettenis. + +1998-04-18 Gordon Matzigkeit + + * mach/Machrules (+preinit, +postinit): Define these variables to + empty because libhurduser and libmachuser don't need startup + files. + +1998-04-22 Gordon Matzigkeit + + * sysdeps/mach/hurd/errlist.c (ERR_REMAP): Use err_get_code + instead of a raw bitmask. + +1998-05-23 Andreas Schwab + + * Makeconfig (rpath-dirs): New variable. + (rpath-link): Use it. + (nssobjdir, nisobjdir, rtobjdir, resolvobjdir): Removed. + (db-objpfx): Removed. + * crypt/Makefile: Augment rpath-dirs instead of rpath-link. + * md5-crypt/Makefile: Likewise. + * sysdeps/mach/hurd/Makefile: Likewise. + + * Makeconfig (move-if-change): New variable. + * iconvdata/Makefile (move-if-change): Removed. + * manual/Makefile (move-if-change): Set only if undefined, use + local script by default. + * sunrpc/Makefile (move-if-change): Removed. + * sysdeps/mach/hurd/Makefile ($(common-objpfx)stamp-errnos): Use + $(move-if-change). + + * elf/Makefile: Remove all references to obsolete file + $(objpfx)rtldtbl.h. + ($(objpfx)trusted-dirs.h): Use stamp file. Cleanup command. + +1998-05-22 Andreas Schwab + + * elf/dl-close.c (_dl_close): Add debugging message. + +1998-05-25 Andreas Jaeger + + * csu/Makefile ($(objpfx)version-info.h): Correct sed expression + to get Linux version and not gcc version. + Reported by Alan Curry . + +1998-05-25 Andreas Jaeger + + * sysdeps/generic/_strerror.c (__strerror_r): Don't return NULL + pointers - return unknown error message instead. + Reported by Alan Curry . + +1998-05-24 Mark Kettenis + + * iconvdata/Makefile (modules, sed-generated-headers, + perl-generated-headers): ibm424.h is perl generated. Make + necessary modifications to compile without perl. + +1998-05-24 Mark Kettenis + + * hesiod/hesiod.c (read_config_file): Fix typo. + 1998-05-24 Ulrich Drepper * version.h: Bump VERSION. diff --git a/README b/README index 54c9a6e939..215866b709 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -This directory contains the version 2.0.93 test release of the GNU C Library. +This directory contains the version 2.0.94 test release of the GNU C Library. Many bugs have been fixed since the last release. Some bugs surely remain. @@ -52,7 +52,7 @@ provides the Unix `crypt' function, plus some other entry points. Because of the United States export restriction on DES implementations, we are distributing this code separately from the rest of the C library. There is an extra distribution tar file just for crypt; it is -called `glibc-crypt-2.0.93.tar.gz'. You can just unpack the crypt +called `glibc-crypt-2.0.94.tar.gz'. You can just unpack the crypt distribution along with the rest of the C library and build; you can also build the library without getting crypt. Users outside the USA can get the crypt distribution via anonymous FTP from ftp.ifi.uio.no diff --git a/csu/Makefile b/csu/Makefile index 7b30d3bba9..1e457d6380 100644 --- a/csu/Makefile +++ b/csu/Makefile @@ -173,7 +173,7 @@ $(objpfx)version-info.h: $(common-objpfx)config.make $(all-Banner-files) sed -e 's/"\([^"]*\)".*/\1/p' -e d) 2>/dev/null`;\ if [ -z "$$version" ]; then \ if [ -r /proc/version ]; then \ - version=`sed 's/.*version \([^ ]*\) .*/>>\1<>\1<l_nsearchlist; ++i) { struct link_map *imap = list[i]; - if (imap->l_opencount == 1 && imap->l_type == lt_loaded) + if (imap->l_opencount == 1 && imap->l_type == lt_loaded + && imap->l_info[DT_FINI]) { - if (imap->l_info[DT_FINI]) - /* Call its termination function. */ - (*(void (*) (void)) ((void *) imap->l_addr - + imap->l_info[DT_FINI]->d_un.d_ptr)) (); + /* When debugging print a message first. */ + if (_dl_debug_impcalls) + _dl_debug_message (1, "\ncalling fini: ", imap->l_name, + "\n\n", NULL); + /* Call its termination function. */ + (*(void (*) (void)) ((void *) imap->l_addr + + imap->l_info[DT_FINI]->d_un.d_ptr)) (); } } diff --git a/hesiod/hesiod.c b/hesiod/hesiod.c index ffae611fe2..998802d8c4 100644 --- a/hesiod/hesiod.c +++ b/hesiod/hesiod.c @@ -255,7 +255,7 @@ read_config_file (struct hesiod_p *ctx, const char *filename) /* Try to open the configuration file. */ fp = fopen (filename, "r"); - if (fp = NULL) + if (fp == NULL) { /* Use compiled in default domain names. */ ctx->lhs = malloc (strlen (DEF_LHS) + 1); diff --git a/iconvdata/Makefile b/iconvdata/Makefile index e158dcfc14..c13206f0a1 100644 --- a/iconvdata/Makefile +++ b/iconvdata/Makefile @@ -29,16 +29,16 @@ modules := ISO8859-1 ISO8859-2 ISO8859-3 ISO8859-4 ISO8859-5 \ BIG5 EUC-JP libGB EUC-CN libCNS EUC-TW ISO646 EBCDIC-DK-NO \ EBCDIC-DK-NO-A EBCDIC-ES EBCDIC-ES-A EBCDIC-ES-S EBCDIC-FI-SE \ EBCDIC-FI-SE-A EBCDIC-FR EBCDIC-IS-FRISS EBCDIC-IT EBCDIC-PT \ - EBCDIC-UK EBCDIC-US IBM037 IBM038 IBM274 IBM275 IBM423 IBM424 \ + EBCDIC-UK EBCDIC-US IBM037 IBM038 IBM274 IBM275 IBM423 \ IBM500 IBM870 IBM871 IBM891 IBM903 IBM904 IBM905 IBM1047 \ CP874 CP737 CP775 ISO-2022-KR ifneq ($(PERL),no) modules += KOI8-R LATIN-GREEK LATIN-GREEK-1 IBM256 IBM273 IBM277 IBM278 \ - IBM280 IBM281 IBM284 IBM285 IBM290 IBM297 IBM420 IBM437 \ - IBM850 IBM851 IBM852 IBM855 IBM857 IBM860 IBM861 IBM862 \ - IBM863 IBM864 IBM865 IBM868 IBM869 IBM875 IBM880 IBM918 \ - IBM1004 IBM1026 CP1250 CP1251 CP1252 CP1253 CP1254 CP1255 \ - CP1256 CP1257 ISO-2022-JP + IBM280 IBM281 IBM284 IBM285 IBM290 IBM297 IBM420 IBM424 \ + IBM437 IBM850 IBM851 IBM852 IBM855 IBM857 IBM860 IBM861 \ + IBM862 IBM863 IBM864 IBM865 IBM868 IBM869 IBM875 IBM880 \ + IBM918 IBM1004 IBM1026 CP1250 CP1251 CP1252 CP1253 CP1254 \ + CP1255 CP1256 CP1257 ISO-2022-JP endif modules.so := $(addsuffix .so, $(modules)) @@ -234,15 +234,15 @@ touch $@ endef sed-generated-headers := iso8859-2.h iso8859-3.h iso8859-4.h iso8859-6.h \ - iso8859-9.h koi-8.h hp-roman8.h ebcdic-at-de.h \ - ebcdic-at-de-a.h ebcdic-ca-fr.h ebcdic-dk-no.h \ + iso8859-9.h koi-8.h hp-roman8.h ebcdic-at-de.h \ + ebcdic-at-de-a.h ebcdic-ca-fr.h ebcdic-dk-no.h \ ebcdic-dk-no-a.h ebcdic-es.h ebcdic-es-a.h \ ebcdic-es-s.h ebcdic-fi-se.h ebcdic-fi-se-a.h \ ebcdic-fr.h ebcdic-is-friss.h ebcdic-it.h \ ebcdic-pt.h ebcdic-uk.h ebcdic-us.h ibm037.h \ - ibm038.h ibm274.h ibm275.h ibm423.h ibm424.h \ - ibm500.h ibm870.h ibm871.h ibm891.h ibm903.h \ - ibm904.h ibm905.h ibm1047.h + ibm038.h ibm274.h ibm275.h ibm423.h ibm500.h \ + ibm870.h ibm871.h ibm891.h ibm903.h ibm904.h \ + ibm905.h ibm1047.h define generate-8bit-gap-table $(make-target-directory) @@ -254,14 +254,14 @@ endef perl-generated-headers := koi8-r.h latin-greek.h latin-greek-1.h \ ibm256.h ibm273.h ibm277.h ibm278.h ibm280.h \ ibm281.h ibm284.h ibm285.h ibm290.h ibm297.h \ - ibm420.h ibm437.h ibm850.h ibm851.h ibm852.h \ - ibm855.h ibm857.h ibm860.h ibm861.h ibm862.h \ - ibm863.h ibm864.h ibm865.h ibm868.h ibm869.h \ - ibm875.h ibm880.h ibm918.h ibm1004.h ibm1026.h \ - cp1250.h cp1251.h cp1252.h cp1253.h cp1254.h \ - cp1255.h cp1256.h cp1257.h iso8859-5.h \ - iso8859-7.h iso8859-8.h iso8859-10.h \ - iso8859-7jp.h + ibm420.h ibm424.h ibm437.h ibm850.h ibm851.h \ + ibm852.h ibm855.h ibm857.h ibm860.h ibm861.h \ + ibm862.h ibm863.h ibm864.h ibm865.h ibm868.h \ + ibm869.h ibm875.h ibm880.h ibm918.h ibm1004.h \ + ibm1026.h cp1250.h cp1251.h cp1252.h cp1253.h \ + cp1254.h cp1255.h cp1256.h cp1257.h \ + iso8859-5.h iso8859-7.h iso8859-8.h \ + iso8859-10.h iso8859-7jp.h generated = $(sed-generated-headers) $(sed-generated-headers:%.h=%.stmp) \ $(perl-generated-headers) $(perl-generated-headers:%.h=%.stmp) \ diff --git a/mach/Machrules b/mach/Machrules index c5e234ec9b..8e48c367cd 100644 --- a/mach/Machrules +++ b/mach/Machrules @@ -211,6 +211,8 @@ extra-libs += $(interface-library) # Avoid -lmachuser requiring -lc, which may not be built yet. If the # shared object is absent, ld may choose a static library someplace and # produce a bogus libmachuser.so. ++preinit = ++postinit = interface.so = $(interface-library:lib%=%.so) LDFLAGS-$(interface.so) = -nostdlib -nostartfiles diff --git a/malloc/thread-m.h b/malloc/thread-m.h index f9367c6782..d9e17397ce 100644 --- a/malloc/thread-m.h +++ b/malloc/thread-m.h @@ -1,6 +1,6 @@ /* Basic platform-independent macro definitions for mutexes and thread-specific data. - Copyright (C) 1996, 1997 Free Software Foundation, Inc. + Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Wolfram Gloger , 1996. @@ -74,6 +74,9 @@ typedef void * tsd_key_t; #undef mutex_t #define mutex_t struct mutex +#undef mutex_init +#define mutex_init(m) (__mutex_init(m), 0) + #undef mutex_lock #define mutex_lock(m) (__mutex_lock(m), 0) diff --git a/manual/move-if-change b/manual/move-if-change deleted file mode 100755 index 66d8b8adc7..0000000000 --- a/manual/move-if-change +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh -# Like mv $1 $2, but if the files are the same, just delete $1. -# Status is 0 if $2 is changed, 1 otherwise. -if -test -r $2 -then -if -cmp -s $1 $2 -then -echo $2 is unchanged -rm -f $1 -else -mv -f $1 $2 -fi -else -mv -f $1 $2 -fi diff --git a/sysdeps/generic/_strerror.c b/sysdeps/generic/_strerror.c index 53ff9343e1..4a9b032c86 100644 --- a/sysdeps/generic/_strerror.c +++ b/sysdeps/generic/_strerror.c @@ -40,7 +40,7 @@ char * __strerror_r (int errnum, char *buf, size_t buflen) { - if (errnum < 0 || errnum >= _sys_nerr) + if (errnum < 0 || errnum >= _sys_nerr || _sys_errlist[errnum] == NULL) { /* Buffer we use to print the number in. For a maximum size for `int' of 8 bytes we never need more than 20 digits. */ diff --git a/sysdeps/mach/hurd/errlist.c b/sysdeps/mach/hurd/errlist.c index 5cbc543ed1..f1ca0dc3ae 100644 --- a/sysdeps/mach/hurd/errlist.c +++ b/sysdeps/mach/hurd/errlist.c @@ -21,6 +21,8 @@ indices by taking their subcode. */ #define SYS_ERRLIST _hurd_errlist #define SYS_NERR _hurd_nerr -#define ERR_REMAP(n) (n & 0x3fff) + +#include +#define ERR_REMAP(n) (err_get_code (n)) #include