* locale/libintl.h: Rewritten by Ulrich Drepper for use with GNU

gettext code.

	* sysdeps/unix/sysv/linux/sys/param.h: New file.
	* sysdeps/unix/sysv/linux/Subdirs: File removed.

	* libc-symbols.h (_LIBC): Define to 1, not just empty.
This commit is contained in:
Roland McGrath 1995-09-27 02:50:10 +00:00
parent 11c981a96d
commit c709e372e8
7 changed files with 247 additions and 129 deletions

View File

@ -1,5 +1,13 @@
Tue Sep 26 16:50:17 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* locale/libintl.h: Rewritten by Ulrich Drepper for use with GNU
gettext code.
* sysdeps/unix/sysv/linux/sys/param.h: New file.
* sysdeps/unix/sysv/linux/Subdirs: File removed.
* libc-symbols.h (_LIBC): Define to 1, not just empty.
* gmon: New directory of profiling code, incorporated from
4.4BSD-Lite and modified.
* sysdeps/i386/machine-gmon.h: New file.

23
NEWS
View File

@ -107,6 +107,29 @@ Version 1.10
functions for maintaining the login-record files (primarily of use to
system programs such as `login'), and convenient functions for
allocating and initializing a pseudo-terminal (pty) device.
* Ulrich Drepper has contributed new support for System V style
shared memory and IPC on systems that support it.
* Ulrich Drepper has contributed several miscellaneous new functions found
in System V: The `hsearch' family of functions provide an effective
implementation of hash tables; `a64l' and `l64a' provide a very simple
binary to ASCII mapping; `drand48' and friends provide a 48-bit random
number generator.
* Ulrich Drepper has contributed new reentrant counterparts for the
`random' and `hsearch' families of functions; `random_r', `hsearch_r', etc.
* Ulrich Drepper has contributed new, highly-optimized versions of several
string functions for the i486/Pentium family of processors.
* Ulrich Drepper has updated the Linux-specific code, based largely
on work done in Hongjiu Lu's version of GNU libc for Linux.
The GNU library now supports Linux versions 1.3.29 and later,
using the ELF object file format (i[345]86-*-linux).
* Ulrich Drepper has contributed a new set of message catalog functions to
support multiple languages, for use with his new package GNU gettext.
Version 1.09

View File

@ -45,7 +45,7 @@ Cambridge, MA 02139, USA. */
Some library code that is shared with other packages also
tests this symbol to see if it is being compiled as part
of the C library. */
#define _LIBC
#define _LIBC 1
/* The symbols in all the user (non-_) macros are C symbols. Predefined
should be HAVE_WEAK_SYMBOLS and/or HAVE_ELF and/or HAVE_GNU_LD.

View File

@ -1,6 +1,8 @@
/* libintl.h -- Message catalogs for internationalization.
/* libgettext.h -- Message catalogs for internationalization.
Copyright (C) 1995 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper.
This file is derived from the file libgettext.h in the GNU gettext package.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
@ -14,64 +16,94 @@ Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If
not, write to the Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA. */
not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef _LIBINTL_H
#define _LIBINTL_H 1
#define _LIBINTL_H 1
#include <features.h>
#include <locale.h>
#define __need_NULL
#include <stddef.h>
/* We define an additional symbol to signal that we use the GNU
implementation of gettext. */
#define __USE_GNU_GETTEXT 1
__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));
/* 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));
/* 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));
/* 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));
/* 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,
const char *__dirname));
extern char *__bindtextdomain __P ((const char *__domainname,
const char *__dirname));
#if 1 /* XXX stub for the moment */
#define gettext(msgid) (msgid)
#define textdomain(domain) (void)(domain)
#else
#define gettext(msgid) __gettext (msgid)
#define __gettext(msgid) __dgettext (NULL, (msgid))
/* Optimized version of the function above. */
#if defined __OPTIMIZED
/* These must be a macro. Inlined functions are useless because the
`__builtin_constant_p' predicate in dcgettext would always return
false. */
#define dgettext(domainname, msgid) __dgettext (domainname, msgid)
#define __dgettext(domainname, msgid) \
__dcgettext (NULL, (msgid), LC_MESSAGES)
# define gettext (msgid) dgettext (NULL, msgid)
#ifdef __GNUC__
#define __dcgettext(domainname, msgid, category) \
# define dgettext (domainname, msgid) \
dcgettext (domainname, msgid, LC_MESSAGES)
# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
# define dcgettext(domainname, msgid, category) \
(__extension__ \
({ \
static char *__translation__; \
if (! __translation__) \
__translation__ = (__dcgettext) ((domainname), (msgid), (category)); \
__translation__; \
char *result; \
if (__builtin_constant_p (msgid)) \
{ \
extern int _nl_msg_cat_cntr; \
static char *__translation__; \
static int __catalog_counter__; \
if (! __translation__ || __catalog_counter__ != _nl_msg_cat_cntr) \
{ \
__translation__ = \
__dcgettext ((domainname), (msgid), (category)); \
__catalog_counter__ = _nl_msg_cat_cntr; \
} \
result = __translation__; \
} \
else \
result = __dcgettext ((domainname), (msgid), (category)); \
result; \
}))
#endif
#endif
# endif
#endif /* Optimizing. */
#endif /* libintl.h */
__END_DECLS
#endif /* libintl.h */

View File

@ -732,6 +732,98 @@ by other people.
The @code{getopt} function and related code were written by
Richard Stallman, @w{David J. MacKenzie}, and @w{Roland McGrath}.
@item
The merge sort function @code{qsort} was written by Michael J. Haertel.
@item
The quick sort function used as a fallback by @code{qsort} was written
by Douglas C. Schmidt.
@item
The memory allocation functions @code{malloc}, @code{realloc} and
@code{free} and related code were written by Michael J. Haertel.
@comment tege's name has an umlaut.
@tex
\xdef\SETtege{Torbj\"orn Granlund}
@end tex
@ifinfo
@set tege Torbjorn Granlund
@end ifinfo
@item
Fast implementations of many of the string functions (@code{memcpy},
@code{strlen}, etc.) were written by @value{tege}.
@item
The @file{tar.h} header file was written by David J. MacKenzie.
@item
The port to the MIPS DECStation running Ultrix 4
(@code{mips-dec-ultrix4})
was contributed by Brendan Kehoe and Ian Lance Taylor.
@item
The DES encryption function @code{crypt} and related functions were
contributed by Michael Glad.
@item
The @code{ftw} function was contributed by Ian Lance Taylor.
@item
The startup code to support SunOS shared libraries was contributed by
Tom Quinn.
@item
The @code{mktime} function was contributed by Noel Cragg.
@item
The port to the Sequent Symmetry running Dynix version 3
(@code{i386-sequent-bsd}) was contributed by Jason Merrill.
@item
The timezone support code is derived from the public-domain timezone
package by Arthur David Olson and his many contributors.
@item
The port to the DEC Alpha running OSF/1 (@code{alpha-dec-osf1}) was
contributed by Brendan Kehoe, using some code written by Roland McGrath.
@item
The port to SGI machines running Irix 4 (@code{mips-sgi-irix4}) was
contributed by Tom Quinn.
@item
The port of the Mach and Hurd code to the MIPS architecture
(@code{mips-@var{anything}-gnu}) was contributed by Kazumoto Kojima.
@item
The floating-point printing function used by @code{printf} and friends
and the floating-point reading function used by @code{scanf},
@code{strtod} and friends were written by Ulrich Drepper. The
multi-precision integer functions used in those functions are taken from
GNU MP, which was contributed by @value{tege}.
@item
The internationalization support in the library (@file{locale.h},
@file{langinfo.h}, etc.) was written by Ulrich Drepper and Roland
McGrath. Ulrich Drepper adapted the support code for message catalogs
(@file{libintl.h}, etc.) from the GNU @code{gettext} package, which he
also wrote.
@item
The port to Linux i386/ELF (@code{i386-@var{anything}-linux}) was
contributed by Ulrich Drepper, based in large part on work done in
Hongjiu Lu's Linux version of the GNU C Library.
@item
Stephen R. van den Berg contributed a highly-optimized @code{strstr} function.
@item
Ulrich Drepper contributed the @code{hsearch} and @code{drand48}
families of functions; reentrant @samp{@dots{}@code{_r}} versions of the
@code{random} family; System V shared memory and IPC support code; and
several highly-optimized string functions for i@var{x}86 processors.
@item
Most of the math functions are taken from 4.4 BSD; they have been
modified only slightly to work with the GNU C library. The
@ -795,94 +887,7 @@ changes to fit into the GNU C library and to fit the ANSI C standard,
but the functional code is Berkeley's.@refill
@item
The merge sort function @code{qsort} was written by Michael J. Haertel.
@item
The quick sort function used as a fallback by @code{qsort} was written
by Douglas C. Schmidt.
@item
The memory allocation functions @code{malloc}, @code{realloc} and
@code{free} and related code were written by Michael J. Haertel.
@comment tege's name has an umlaut.
@tex
\xdef\SETtege{Torbj\"orn Granlund}
@end tex
@ifinfo
@set tege Torbjorn Granlund
@end ifinfo
@item
Fast implementations of many of the string functions (@code{memcpy},
@code{strlen}, etc.) were written by @value{tege}.
@item
Some of the support code for Mach is taken from Mach 3.0 by CMU,
and is under the following copyright terms:
@quotation
@display
Mach Operating System
Copyright @copyright{} 1991,1990,1989 Carnegie Mellon University
All Rights Reserved.
@end display
Permission to use, copy, modify and distribute this software and its
documentation is hereby granted, provided that both the copyright
notice and this permission notice appear in all copies of the
software, derivative works or modified versions, and any portions
thereof, and that both notices appear in supporting documentation.
@sc{carnegie mellon allows free use of this software in its ``as is''
condition. carnegie mellon disclaims any liability of any kind for
any damages whatsoever resulting from the use of this software.}
Carnegie Mellon requests users of this software to return to
@display
Software Distribution Coordinator
School of Computer Science
Carnegie Mellon University
Pittsburgh PA 15213-3890
@end display
@noindent
or @samp{Software.Distribution@@CS.CMU.EDU} any improvements or
extensions that they make and grant Carnegie Mellon the rights to
redistribute these changes.
@end quotation
@item
The @file{tar.h} header file was written by David J. MacKenzie.
@item
The port to the MIPS DECStation running Ultrix 4
(@code{mips-dec-ultrix4})
was contributed by Brendan Kehoe and Ian Lance Taylor.
@item
The DES encryption function @code{crypt} and related functions were
contributed by Michael Glad.
@item
The @code{ftw} function was contributed by Ian Lance Taylor.
@item
The code to support SunOS shared libraries was contributed by Tom Quinn.
@item
The @code{mktime} function was contributed by Noel Cragg.
@item
The port to the Sequent Symmetry running Dynix version 3
(@code{i386-sequent-bsd}) was contributed by Jason Merrill.
@item
The timezone support code is derived from the public-domain timezone
package by Arthur David Olson.
@item
The Internet resolver code is taken directly from BIND 4.9.1, which is
The Internet resolver code is taken directly from BIND 4.9.3, which is
under both the Berkeley copyright above and also:
@quotation
@ -905,16 +910,6 @@ negligence or other tortious action, arising out of or in connection
with the use or performance of this software.}
@end quotation
@item
The port to the DEC Alpha running OSF/1 (@code{alpha-dec-osf1}) was
contributed by Brendan Kehoe, using some code written by Roland McGrath.
@item
The floating-point printing function used by @code{printf} and friends
was written by Roland McGrath and @value{tege}. The multi-precision
integer functions used in that function are taken from GNU MP, which was
contributed by @value{tege}.
@item
The code to support Sun RPC is taken verbatim from Sun's
@w{@sc{rpcsrc-4.0}} distribution, and is covered by this copyright:
@ -955,12 +950,41 @@ Mountain View, California 94043
@end quotation
@item
The port to SGI machines running Irix 4 (@code{mips-sgi-irix4}) was
contributed by Tom Quinn.
Some of the support code for Mach is taken from Mach 3.0 by CMU,
and is under the following copyright terms:
@quotation
@display
Mach Operating System
Copyright @copyright{} 1991,1990,1989 Carnegie Mellon University
All Rights Reserved.
@end display
Permission to use, copy, modify and distribute this software and its
documentation is hereby granted, provided that both the copyright
notice and this permission notice appear in all copies of the
software, derivative works or modified versions, and any portions
thereof, and that both notices appear in supporting documentation.
@sc{carnegie mellon allows free use of this software in its ``as is''
condition. carnegie mellon disclaims any liability of any kind for
any damages whatsoever resulting from the use of this software.}
Carnegie Mellon requests users of this software to return to
@display
Software Distribution Coordinator
School of Computer Science
Carnegie Mellon University
Pittsburgh PA 15213-3890
@end display
@noindent
or @samp{Software.Distribution@@CS.CMU.EDU} any improvements or
extensions that they make and grant Carnegie Mellon the rights to
redistribute these changes.
@end quotation
@item
The port of the Mach and Hurd code to the MIPS architecture
(@code{mips-@var{anything}-gnu}) was contributed by Kazumoto Kojima.
@end itemize
@c @bye

View File

@ -1 +0,0 @@
sysvipc

View File

@ -0,0 +1,32 @@
#ifndef _SYS_PARAM_H
#define _SYS_PARAM_H
#include <limits.h>
#include <linux/limits.h>
#include <linux/param.h>
#include <sys/types.h>
/* Don't change it. H.J. */
#ifdef OLD_LINUX
#undef MAXHOSTNAMELEN
#define MAXHOSTNAMELEN 8 /* max length of hostname */
#endif
#ifndef howmany
#define howmany(x, y) (((x)+((y)-1))/(y))
#endif
#ifndef roundup
#define roundup(x, y) ((((x)+((y)-1))/(y))*(y))
#endif
#define MAXPATHLEN PATH_MAX
#define NOFILE OPEN_MAX
/* Following the information of some of the kernel people I here assume
* that block size (i.e. the value of stat.st_blocks) for all filesystem
* is 512 bytes. If not tell me or HJ. -- Uli */
#define DEV_BSIZE 512
#endif