diff options
| author | Roland McGrath <roland@gnu.org> | 1996-02-19 20:54:38 +0000 |
|---|---|---|
| committer | Roland McGrath <roland@gnu.org> | 1996-02-19 20:54:38 +0000 |
| commit | be10a86854716071a64f559e1f5bc94e145d0fdb (patch) | |
| tree | e7abce4d5ba8da4ff17dad3510c4bea6cb3e037e | |
| parent | 1cbca0d93c6c1507c4e69a21e60c77e704b7e1da (diff) | |
| download | glibc-be10a86854716071a64f559e1f5bc94e145d0fdb.tar.xz glibc-be10a86854716071a64f559e1f5bc94e145d0fdb.zip | |
*** empty log message ***
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.
| -rw-r--r-- | ChangeLog | 44 | ||||
| -rw-r--r-- | MakeTAGS | 38 | ||||
| -rw-r--r-- | Makerules | 4 | ||||
| -rw-r--r-- | dirent/dirent.h | 21 | ||||
| -rw-r--r-- | elf/dl-runtime.c | 6 | ||||
| -rw-r--r-- | intl/Makefile | 6 | ||||
| -rw-r--r-- | intl/dcgettext.c | 41 | ||||
| -rw-r--r-- | intl/finddomain.c | 26 | ||||
| -rw-r--r-- | intl/gettextP.h | 21 | ||||
| -rw-r--r-- | intl/hash-string.h | 26 | ||||
| -rw-r--r-- | intl/libintl.h | 34 | ||||
| -rw-r--r-- | intl/localealias.c | 20 | ||||
| -rw-r--r-- | manual/Makefile | 8 | ||||
| -rw-r--r-- | stdio-common/vfscanf.c | 1 | ||||
| -rw-r--r-- | sysdeps/m68k/bsd-_setjmp.S | 2 | ||||
| -rw-r--r-- | sysdeps/m68k/bsd-setjmp.S | 2 | ||||
| -rw-r--r-- | sysdeps/m68k/dl-machine.h | 27 | ||||
| -rw-r--r-- | sysdeps/unix/closedir.c | 6 | ||||
| -rw-r--r-- | sysdeps/unix/dirstream.h | 7 | ||||
| -rw-r--r-- | sysdeps/unix/opendir.c | 26 | ||||
| -rw-r--r-- | sysdeps/unix/readdir.c | 4 | ||||
| -rw-r--r-- | sysdeps/unix/seekdir.c | 6 | ||||
| -rw-r--r-- | sysdeps/unix/telldir.c | 4 | ||||
| -rw-r--r-- | time/mktime.c | 5 |
24 files changed, 248 insertions, 137 deletions
@@ -1,3 +1,47 @@ +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. + Fri Feb 16 11:01:59 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> * time/tzset.c: Limit hours to 23, not 12. From jaffer. @@ -1,6 +1,6 @@ # Make the TAGS files. -# Copyright (C) 1992, 1994, 1995 Free Software Foundation, Inc. +# Copyright (C) 1992, 1994, 1995, 1996 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -98,7 +98,7 @@ ifdef subdir ifdef tags_sources $(ETAGS) -o $@ $^ else -# No sources. Create a dummy file. +# No sources. Create a dummy file. touch $@ endif # tags_sources else # parent @@ -114,3 +114,37 @@ $(subdirs:%=%/TAGS): $(MAKE) -C $(@D) no_deps=t $(@F) endif # subdir + +XGETTEXT = xgettext +MSGJOIN = msgjoin + +P = $(..)po + +ifdef subdir +domain = $(subdir) +else +domain = libc-top +endif + +define extract +@rm -f $@.new +$(XGETTEXT) --keyword=_ --keyword=N_ --sort-output -d - \ + > $@.new /dev/null $^ +mv -f $@.new $@ +endef + +$P/$(domain).pot: $(tags_sources); $(extract) + +$P/siglist.pot: $(..)sysdeps/generic/signame.c; $(extract) +$P/errlist.pot: $(..)sysdeps/mach/hurd/errlist.c; $(extract) + +ifndef subdir +$P/SYS_libc.pot: $P/libc-top.pot $(subdirs:%=$P/%.pot) + @rm -f $@.new + $(MSGJOIN) $^ > $@.new + mv -f $@.new $@ + +$(subdirs:%=$P/%.pot): $P/%.pot: FORCE + $(MAKE) -C $* no_deps=t ../$@ +FORCE: +endif @@ -621,6 +621,10 @@ check: tests TAGS: distinfo $(..)MakeTAGS $(MAKE) $(addprefix -f ,$^) $@ +$(..)po/%.pot: distinfo $(..)MakeTAGS + $(MAKE) $(addprefix -f ,$^) $@ + + .PHONY: echo-headers echo-headers: @echo $(headers) diff --git a/dirent/dirent.h b/dirent/dirent.h index 5b99437301..8a6548601f 100644 --- a/dirent/dirent.h +++ b/dirent/dirent.h @@ -29,25 +29,8 @@ __BEGIN_DECLS #include <gnu/types.h> - -/* Directory entry structure. - - This structure is laid out identically to the `struct direct' that - represents directory entries in the GNU Hurd and in BSD 4.4 (and - incidentally, on disk in the Berkeley fast file system). The `readdir' - implementations for GNU and BSD know this; you must change them if you - change this structure. */ - -struct dirent - { - __ino_t d_fileno; /* File serial number. */ - unsigned short int d_reclen; /* Length of the whole `struct dirent'. */ - unsigned char d_type; /* File type, possibly unknown. */ - unsigned char d_namlen; /* Length of the file name. */ - - /* Only this member is in the POSIX standard. */ - char d_name[1]; /* File name (actually longer). */ - }; +/* This file defines `struct dirent'. */ +#include <direntry.h> #if defined(__USE_BSD) || defined(__USE_MISC) #define d_ino d_fileno /* Backward compatibility. */ diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c index 6ee1a94128..3be90caa69 100644 --- a/elf/dl-runtime.c +++ b/elf/dl-runtime.c @@ -37,7 +37,11 @@ Cambridge, MA 02139, USA. */ in the trampoline code will be a local PC-relative call. Tell the compiler not to worry that the function appears not to be called. */ -static Elf32_Addr fixup (struct link_map *l, Elf32_Word reloc_offset) +static Elf32_Addr fixup ( +#ifdef ELF_MACHINE_RUNTIME_FIXUP_ARGS + ELF_MACHINE_RUNTIME_FIXUP_ARGS, +#endif + struct link_map *l, Elf32_Word reloc_offset) __attribute__ ((unused)); /* This function is called through a special trampoline from the PLT the diff --git a/intl/Makefile b/intl/Makefile index adc4d01e61..0354b427b3 100644 --- a/intl/Makefile +++ b/intl/Makefile @@ -31,9 +31,9 @@ CPPFLAGS += -D'GNULOCALEDIR="$(localedir)"' \ ifdef gettext-srcdir -%:: $(gettext-srcdir)/intl/%.glibc; $(copysrc) -%:: $(gettext-srcdir)/intl/%.c; $(copysrc) -%:: $(gettext-srcdir)/intl/%.h; $(copysrc) +%.h:: $(gettext-srcdir)/intl/%.glibc; $(copysrc) +%.c:: $(gettext-srcdir)/intl/%.c; $(copysrc) +%.h:: $(gettext-srcdir)/intl/%.h; $(copysrc) define copysrc cp -f $< $@.new diff --git a/intl/dcgettext.c b/intl/dcgettext.c index 09e0443494..7562f69ab4 100644 --- a/intl/dcgettext.c +++ b/intl/dcgettext.c @@ -1,5 +1,5 @@ -/* dcgettext.c -- implemenatation of the dcgettext(3) function - Copyright (C) 1995 Software Foundation, Inc. +/* dcgettext.c -- implementation of the dcgettext(3) function + Copyright (C) 1995 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -24,7 +24,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifdef __GNUC__ # define alloca __builtin_alloca #else -# ifdef HAVE_ALLOCA_H || defined _LIBC +# if defined HAVE_ALLOCA_H || defined _LIBC # include <alloca.h> # else # ifdef _AIX @@ -151,10 +151,11 @@ const char _nl_default_dirname[] = GNULOCALEDIR; struct binding *_nl_domain_bindings; /* Prototypes for local functions. */ -static char *find_msg __P ((struct loaded_domain *domain, const char *msgid)); -static const char *category_to_name __P((int category)); -static const char *guess_category_value __P((int category, - const char *categoryname)); +static char *find_msg PARAMS ((struct loaded_domain *domain, + const char *msgid)); +static const char *category_to_name PARAMS ((int category)); +static const char *guess_category_value PARAMS ((int category, + const char *categoryname)); /* Names for the libintl functions are a problem. They must not clash @@ -182,6 +183,7 @@ DCGETTEXT (domainname, msgid, category) char *dirname, *xdomainname; char *single_locale; char *retval; + int saved_errno = errno; /* If no real MSGID is given return NULL. */ if (msgid == NULL) @@ -233,9 +235,12 @@ DCGETTEXT (domainname, msgid, category) } if (ret == NULL) - /* We cannot get the current working directory. Don't signal an - error but simply return the default string. */ - return (char *) msgid; + { + /* We cannot get the current working directory. Don't signal an + error but simply return the default string. */ + errno = saved_errno; + return (char *) msgid; + } /* We don't want libintl.a to depend on any other library. So we avoid the non-standard function stpcpy. In GNU C Library @@ -302,7 +307,10 @@ DCGETTEXT (domainname, msgid, category) domain. Return the MSGID. */ if (strcmp (single_locale, "C") == 0 || strcmp (single_locale, "POSIX") == 0) - return (char *) msgid; + { + errno = saved_errno; + return (char *) msgid; + } /* Find structure describing the message catalog matching the @@ -317,7 +325,7 @@ DCGETTEXT (domainname, msgid, category) { int cnt; - for (cnt = 0; domain->successor[cnt] != NULL; --cnt) + for (cnt = 0; domain->successor[cnt] != NULL; ++cnt) { retval = find_msg (domain->successor[cnt], msgid); @@ -327,7 +335,10 @@ DCGETTEXT (domainname, msgid, category) } if (retval != NULL) - return retval; + { + errno = saved_errno; + return retval; + } } } /* NOTREACHED */ @@ -375,8 +386,8 @@ find_msg (domain, msgid) while (1) { - if (idx >= W (domain->must_swap, domain->hash_size) - incr) - idx -= W (domain->must_swap, domain->hash_size) - incr; + if (idx >= domain->hash_size - incr) + idx -= domain->hash_size - incr; else idx += incr; diff --git a/intl/finddomain.c b/intl/finddomain.c index 007a87e075..07c5f44799 100644 --- a/intl/finddomain.c +++ b/intl/finddomain.c @@ -1,5 +1,5 @@ /* finddomain.c -- handle list of needed message catalogs - Copyright (C) 1995 Software Foundation, Inc. + Copyright (C) 1995 Free Software Foundation, Inc. Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. This program is free software; you can redistribute it and/or modify @@ -83,21 +83,21 @@ void free (); static struct loaded_domain *_nl_loaded_domains; /* Prototypes for local functions. */ -static struct loaded_domain *make_entry_rec __P ((const char *dirname, - int mask, - const char *language, - const char *territory, - const char *codeset, - const char *modifier, - const char *special, - const char *sponsor, - const char *revision, - const char *domainname, - int do_allocate)); +static struct loaded_domain *make_entry_rec PARAMS ((const char *dirname, + int mask, + const char *language, + const char *territory, + const char *codeset, + const char *modifier, + const char *special, + const char *sponsor, + const char *revision, + const char *domainname, + int do_allocate)); /* Substitution for systems lacking this function in their C library. */ #if !_LIBC && !HAVE_STPCPY -static char *stpcpy __P ((char *dest, const char *src)); +static char *stpcpy PARAMS ((char *dest, const char *src)); #endif diff --git a/intl/gettextP.h b/intl/gettextP.h index 12031c605b..7c74f6c9ab 100644 --- a/intl/gettextP.h +++ b/intl/gettextP.h @@ -1,5 +1,5 @@ /* gettextP.h -- header describing internals of gettext library - Copyright (C) 1995 Software Foundation, Inc. + Copyright (C) 1995 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -20,11 +20,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* @@ end of prolog @@ */ -#ifndef __P +#ifndef PARAMS # if __STDC__ -# define __P(args) args +# define PARAMS(args) args # else -# define __P(args) () +# define PARAMS(args) () # endif #endif @@ -32,6 +32,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ # define W(flag, data) ((flag) ? SWAP (data) : (data)) #endif + +static nls_uint32 SWAP PARAMS ((nls_uint32 i)); + static inline nls_uint32 SWAP (i) nls_uint32 i; @@ -64,12 +67,12 @@ struct binding char *dirname; }; -struct loaded_domain *_nl_find_domain __P ((const char *__dirname, - char *__locale, - const char *__domainname)); -void _nl_load_domain __P ((struct loaded_domain *__domain)); +struct loaded_domain *_nl_find_domain PARAMS ((const char *__dirname, + char *__locale, + const char *__domainname)); +void _nl_load_domain PARAMS ((struct loaded_domain *__domain)); -const char *_nl_expand_alias __P ((const char *__name)); +const char *_nl_expand_alias PARAMS ((const char *__name)); /* @@ begin of epilog @@ */ diff --git a/intl/hash-string.h b/intl/hash-string.h index e846b507ac..ef1f448d86 100644 --- a/intl/hash-string.h +++ b/intl/hash-string.h @@ -1,5 +1,5 @@ /* hash-string - Implements a string hashing function. - Copyright (C) 1995 Software Foundation, Inc. + Copyright (C) 1995 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -21,22 +21,28 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* @@ end of prolog @@ */ -#ifndef BITSPERBYTE -# define BITSPERBYTE 8 +#ifndef PARAMS +# if __STDC__ +# define PARAMS(Args) Args +# else +# define PARAMS(Args) () +# endif #endif -#ifndef LONGBITS -# define LONGBITS (sizeof (long) * BITSPERBYTE) -#endif /* LONGBITS */ +/* We assume to have `unsigned long int' value with at least 32 bits. */ +#define HASHWORDBITS 32 + /* Defines the so called `hashpjw' function by P.J. Weinberger [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools, - 1986, 1987 Bell Telephone Laboratories, Inc.] */ + 1986, 1987 Bell Telephone Laboratories, Inc.] */ +static unsigned long hash_string PARAMS ((const char *__str_param)); + static inline unsigned long hash_string (str_param) const char *str_param; { - unsigned long hval, g; + unsigned long int hval, g; const char *str = str_param; /* Compute the hash value for the given string. */ @@ -45,10 +51,10 @@ hash_string (str_param) { hval <<= 4; hval += (unsigned long) *str++; - g = hval & ((unsigned long) 0xf << (LONGBITS - 4)); + g = hval & ((unsigned long) 0xf << (HASHWORDBITS - 4)); if (g != 0) { - hval ^= g >> (LONGBITS - 8); + hval ^= g >> (HASHWORDBITS - 8); hval ^= g; } } diff --git a/intl/libintl.h b/intl/libintl.h index f9a150d3df..8e5b8f9e69 100644 --- a/intl/libintl.h +++ b/intl/libintl.h @@ -37,34 +37,36 @@ __BEGIN_DECLS /* Look up MSGID in the current default message catalog for the current LC_MESSAGES locale. If not found, returns MSGID itself (the default text). */ -extern char *gettext __P ((const char *__msgid)); -extern char *__gettext __P ((const char *__msgid)); +extern char *gettext __P ((__const char *__msgid)); +extern char *__gettext __P ((__const char *__msgid)); /* Look up MSGID in the DOMAINNAME message catalog for the current LC_MESSAGES locale. */ -extern char *dgettext __P ((const char *__domainname, const char *__msgid)); -extern char *__dgettext __P ((const char *__domainname, const char *__msgid)); +extern char *dgettext __P ((__const char *__domainname, + __const char *__msgid)); +extern char *__dgettext __P ((__const char *__domainname, + __const char *__msgid)); /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY locale. */ -extern char *dcgettext __P ((const char *__domainname, const char *__msgid, - int __category)); -extern char *__dcgettext __P ((const char *__domainname, const char *__msgid, - int __category)); +extern char *dcgettext __P ((__const char *__domainname, + __const char *__msgid, int __category)); +extern char *__dcgettext __P ((__const char *__domainname, + __const char *__msgid, int __category)); /* Set the current default message catalog to DOMAINNAME. If DOMAINNAME is null, return the current default. If DOMAINNAME is "", reset to the default of "messages". */ -extern char *textdomain __P ((const char *__domainname)); -extern char *__textdomain __P ((const char *__domainname)); +extern char *textdomain __P ((__const char *__domainname)); +extern char *__textdomain __P ((__const char *__domainname)); /* Specify that the DOMAINNAME message catalog will be found in DIRNAME rather than in the system locale data base. */ -extern char *bindtextdomain __P ((const char *__domainname, |
