1999-02-02  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/reboot.c: Make sure first parameter is
	correctly passed to the kernel even on 64bit platforms.
	Patch by Bruce Elliott <bde@nwlink.com>.

	* localedata/locales/it_CH: New file.
	Contributed by Giacomo Amabile Catenazzi <gcatenaz@g26.ethz.ch>.
This commit is contained in:
Ulrich Drepper 1999-02-02 09:26:53 +00:00
parent 5b3ce86c1c
commit b1418d8f39
8 changed files with 184 additions and 60 deletions

View File

@ -1,3 +1,12 @@
1999-02-02 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/reboot.c: Make sure first parameter is
correctly passed to the kernel even on 64bit platforms.
Patch by Bruce Elliott <bde@nwlink.com>.
* localedata/locales/it_CH: New file.
Contributed by Giacomo Amabile Catenazzi <gcatenaz@g26.ethz.ch>.
1999-01-31 Ulrich Drepper <drepper@cygnus.com>
* math/libm-test.c (fdim_test): Fix typo in message.

42
FAQ
View File

@ -39,7 +39,7 @@ please let me know.
1.14. Why do I get messages about missing thread functions when I use
librt? I don't even use threads.
1.15. What's the problem with configure --enable-omitfp?
1.16. I get failures during `make check'. What shall I do?
1.16. I get failures during `make check'. What should I do?
1.17. What is symbol versioning good for? Do I need it?
2. Installation and configuration issues
@ -213,7 +213,7 @@ EGCS and with GCC 2.8.1. See question 2.8 for details.
1.3. When I try to compile glibc I get only error messages.
What's wrong?
{UD} You definitely need GNU make to translate GNU libc. No other make
{UD} You definitely need GNU make to build GNU libc. No other make
program has the needed functionality.
We recommend version GNU make version 3.75 or 3.77. Versions before 3.75
@ -317,7 +317,7 @@ when using the library do not need to match. The GNU C library runs without
problems on kernels that are older than the kernel headers used. The other
way round (compiling the GNU C library with old kernel headers and running
on a recent kernel) does not necessarily work. For example you can't use
new kernel features when using old kernel headers for compiling the GNU C
new kernel features if you used old kernel headers to compile the GNU C
library.
{ZW} Even if you are using a 2.0 kernel on your machine, we recommend you
@ -438,19 +438,19 @@ with a library that was build this way, we advise you to rebuild the library
without --enable-omitfp. If the problem vanishes consider tracking the
problem down and report it as compiler failure.
Since a library build with --enable-omitfp is undebuggable on most systems,
debuggable libraries are also built - you can use it by appending "_g" to
Since a library built with --enable-omitfp is undebuggable on most systems,
debuggable libraries are also built - you can use them by appending "_g" to
the library names.
The compilation of these extra libraries and the compiler optimizations slow
down the build process and need more disk space.
1.16. I get failures during `make check'. What shall I do?
1.16. I get failures during `make check'. What should I do?
{AJ} The testsuite should compile and run cleanly on your system, every
failure should be looked into. Depending on the failure I wouldn't advise
installing the library at all.
{AJ} The testsuite should compile and run cleanly on your system; every
failure should be looked into. Depending on the failures, you probably
should not install the library at all.
You should consider using the `glibcbug' script to report the failure,
providing as much detail as possible. If you run a test directly, please
@ -460,13 +460,15 @@ command line which failed and run the test from the subdirectory for this
test in the sources.
There are some failures which are not directly related to the GNU libc:
- Some compiler produce buggy code. The egcs 1.1 release should be ok. gcc
2.8.1 might cause some failures, gcc 2.7.2.x is so buggy, that explicit
checks have been used so that you can't build with it.
- Some compilers produce buggy code. No compiler gets single precision
complex numbers correct on Alpha. Otherwise, the egcs 1.1 release should be
ok; gcc 2.8.1 might cause some failures; gcc 2.7.2.x is so buggy that
explicit checks have been used so that you can't build with it.
- The kernel might have bugs. For example on Linux/Alpha 2.0.34 the
floating point handling has quite a number of bugs and therefore most of
the test cases in the math subdirectory will fail. Linux 2.2 has
fixes for the floating point support on Alpha.
fixes for the floating point support on Alpha. The Linux/SPARC kernel has
also some bugs in the FPU emulation code (as of Linux 2.2.0).
1.17. What is symbol versioning good for? Do I need it?
@ -476,15 +478,15 @@ changes. One version of an interface might have been introduced in a
previous version of the GNU C library but the interface or the semantics of
the function has been changed in the meantime. For binary compatibility
with the old library, a newer library needs to still have the old interface
for old programs. On the other hand new programs should use the new
for old programs. On the other hand, new programs should use the new
interface. Symbol versioning is the solution for this problem. The GNU
libc version 2.1 uses by default symbol versioning if the binutils support
it.
libc version 2.1 uses symbol versioning by default if the installed binutils
supports it.
We don't advise to build without symbol versioning since you lose binary
compatibility if you do - for ever! The binary compatibility you lose is
not only against the previous version of the GNU libc (version 2.0) but also
against future versions.
We don't advise building without symbol versioning, since you lose binary
compatibility - forever! The binary compatibility you lose is not only
against the previous version of the GNU libc (version 2.0) but also against
all future versions.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40
FAQ.in
View File

@ -69,7 +69,7 @@ EGCS and with GCC 2.8.1. See ?exception for details.
?? When I try to compile glibc I get only error messages.
What's wrong?
{UD} You definitely need GNU make to translate GNU libc. No other make
{UD} You definitely need GNU make to build GNU libc. No other make
program has the needed functionality.
We recommend version GNU make version 3.75 or 3.77. Versions before 3.75
@ -168,7 +168,7 @@ when using the library do not need to match. The GNU C library runs without
problems on kernels that are older than the kernel headers used. The other
way round (compiling the GNU C library with old kernel headers and running
on a recent kernel) does not necessarily work. For example you can't use
new kernel features when using old kernel headers for compiling the GNU C
new kernel features if you used old kernel headers to compile the GNU C
library.
{ZW} Even if you are using a 2.0 kernel on your machine, we recommend you
@ -282,18 +282,18 @@ with a library that was build this way, we advise you to rebuild the library
without --enable-omitfp. If the problem vanishes consider tracking the
problem down and report it as compiler failure.
Since a library build with --enable-omitfp is undebuggable on most systems,
debuggable libraries are also built - you can use it by appending "_g" to
Since a library built with --enable-omitfp is undebuggable on most systems,
debuggable libraries are also built - you can use them by appending "_g" to
the library names.
The compilation of these extra libraries and the compiler optimizations slow
down the build process and need more disk space.
?? I get failures during `make check'. What shall I do?
?? I get failures during `make check'. What should I do?
{AJ} The testsuite should compile and run cleanly on your system, every
failure should be looked into. Depending on the failure I wouldn't advise
installing the library at all.
{AJ} The testsuite should compile and run cleanly on your system; every
failure should be looked into. Depending on the failures, you probably
should not install the library at all.
You should consider using the `glibcbug' script to report the failure,
providing as much detail as possible. If you run a test directly, please
@ -303,13 +303,15 @@ command line which failed and run the test from the subdirectory for this
test in the sources.
There are some failures which are not directly related to the GNU libc:
- Some compiler produce buggy code. The egcs 1.1 release should be ok. gcc
2.8.1 might cause some failures, gcc 2.7.2.x is so buggy, that explicit
checks have been used so that you can't build with it.
- Some compilers produce buggy code. No compiler gets single precision
complex numbers correct on Alpha. Otherwise, the egcs 1.1 release should be
ok; gcc 2.8.1 might cause some failures; gcc 2.7.2.x is so buggy that
explicit checks have been used so that you can't build with it.
- The kernel might have bugs. For example on Linux/Alpha 2.0.34 the
floating point handling has quite a number of bugs and therefore most of
the test cases in the math subdirectory will fail. Linux 2.2 has
fixes for the floating point support on Alpha.
fixes for the floating point support on Alpha. The Linux/SPARC kernel has
also some bugs in the FPU emulation code (as of Linux 2.2.0).
?? What is symbol versioning good for? Do I need it?
@ -318,15 +320,15 @@ changes. One version of an interface might have been introduced in a
previous version of the GNU C library but the interface or the semantics of
the function has been changed in the meantime. For binary compatibility
with the old library, a newer library needs to still have the old interface
for old programs. On the other hand new programs should use the new
for old programs. On the other hand, new programs should use the new
interface. Symbol versioning is the solution for this problem. The GNU
libc version 2.1 uses by default symbol versioning if the binutils support
it.
libc version 2.1 uses symbol versioning by default if the installed binutils
supports it.
We don't advise to build without symbol versioning since you lose binary
compatibility if you do - for ever! The binary compatibility you lose is
not only against the previous version of the GNU libc (version 2.0) but also
against future versions.
We don't advise building without symbol versioning, since you lose binary
compatibility - forever! The binary compatibility you lose is not only
against the previous version of the GNU libc (version 2.0) but also against
all future versions.
? Installation and configuration issues

View File

@ -80,7 +80,7 @@ locale_special (const char *name, int show_category_name,
if (ch != EOF)
putchar (ch);
else
fputs ("<???\>", stdout);
fputs ("<??\?>", stdout);
}
putchar ('"');

74
localedata/locales/it_CH Normal file
View File

@ -0,0 +1,74 @@
comment_char %
escape_char /
repertoiremap mnemonic.ds
%
% Italian Language Locale for Switzerland
% Language: it
% Territory: CH
% Revision: ........
% Date: 1999-01-21
% Users: general
% Repertoiremap: mnemonic.ds
% Charset: ISO-8859-1
% Distribution and use is free, also
% for commercial purposes.
LC_CTYPE
copy "en_DK"
END LC_CTYPE
LC_COLLATE
copy "en_DK"
END LC_COLLATE
LC_MESSAGES
yesexpr "<'/>><<(><s><S><j><J><o><O><y><Y><)/>><.><*>"
noexpr "<'/>><<(><n><N><)/>><.><*>"
END LC_MESSAGES
LC_MONETARY
copy "de_CH"
END LC_MONETARY
LC_NUMERIC
decimal_point "<,>"
thousands_sep "<apostrophe>"
grouping 3;3
END LC_NUMERIC
LC_TIME
abday "<d><o><m>";"<l><u><n>";/
"<m><a><r>";"<m><e><r>";/
"<g><i><o>";"<v><e><n>";/
"<s><a><b>"
day "<d><o><m><e><n><i><c><a>";/
"<l><u><n><e><d><i!>";/
"<m><a><r><t><e><d><i!>";/
"<m><e><r><c><o><l><e><d><i!>";/
"<g><i><o><v><e><d><i!>";/
"<v><e><n><e><r><d><i!>";/
"<s><a><b><a><t><o>"
abmon "<g><e><n>";"<f><e><b>";/
"<m><a><r>";"<a><p><r>";/
"<m><a><g>";"<g><i><u>";/
"<l><u><g>";"<a><g><o>";/
"<s><e><t>";"<o><t><t>";/
"<n><o><v>";"<d><i><c>"
mon "<g><e><n><n><a><i><o>";/
"<f><e><b><b><r><a><i><o>";/
"<m><a><r><z><o>";/
"<a><p><r><i><l><e>";/
"<m><a><g><g><i><o>";/
"<g><i><u><g><n><o>";/
"<l><u><g><l><i><o>";/
"<a><g><o><s><t><o>";/
"<s><e><t><t><e><m><b><r><e>";/
"<o><t><t><o><b><r><e>";/
"<n><o><v><e><m><b><r><e>";/
"<d><i><c><e><m><b><r><e>"
d_t_fmt "<%><a><SP><%><d><SP><%><b><SP><%><Y><SP><%><T><SP><%><Z>"
d_fmt "<%><d><.><SP><%><m><.><SP><%><y>"
t_fmt "<%><T>"
am_pm "";""
t_fmt_ampm ""
END LC_TIME

View File

@ -48,10 +48,9 @@ GNU Make, and possibly others. @xref{Tools for Compilation}, below.
@cindex configuring
@cindex compiling
GNU Libc cannot be compiled in the source directory. You must create a
separate directory for the object files. This directory should be
outside the source tree. For example, if you have unpacked the glibc
sources in @file{/src/gnu/glibc-2.1.0}, create a directory
GNU Libc can be compiled in the source directory but we'd advise to
build in a separate build directory. For example, if you have unpacked
the glibc sources in @file{/src/gnu/glibc-2.1.0}, create a directory
@file{/src/gnu/glibc-build} to put the object files in.
From your object directory, run the shell script @file{configure} found

View File

@ -3,7 +3,7 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
\def\texinfoversion{1999-01-24}%
\def\texinfoversion{1999-01-29}%
%
% Copyright (C) 1985, 86, 88, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99
% Free Software Foundation, Inc.
@ -2477,6 +2477,8 @@ width0pt\relax} \fi
\let\value = \expandablevalue
%
\unsepspaces
% Turn off macro expansion
\turnoffmacros
}
% If an index command is used in an @example environment, any spaces
@ -4502,8 +4504,11 @@ width0pt\relax} \fi
\newwrite\macscribble
\def\scanmacro#1{%
\begingroup \newlinechar`\^^M
% Undo catcode changes of \startcontents and \doprintindex
\catcode`\@=0 \catcode`\\=12 \escapechar=`\@
\toks0={#1}%
\immediate\openout\macscribble=\jobname.tmp
\immediate\write\macscribble{#1}%
\immediate\write\macscribble{\the\toks0}%
\immediate\closeout\macscribble
\let\xeatspaces\eatspaces
\input \jobname.tmp
@ -4512,12 +4517,16 @@ width0pt\relax} \fi
\else
\def\scanmacro#1{%
\begingroup \newlinechar`\^^M
% Undo catcode changes of \startcontents and \doprintindex
\catcode`\@=0 \catcode`\\=12 \escapechar=`\@
\let\xeatspaces\eatspaces\scantokens{#1}\endgroup}
\fi
\newcount\paramno % Count of parameters
\newtoks\macname % Macro name
\newif\ifrecursive % Is it recursive?
\def\macrolist{} % List of all defined macros in the form
% \do\macro1\do\macro2...
% Utility routines.
% Thisdoes \let #1 = #2, except with \csnames.
@ -4600,10 +4609,17 @@ width0pt\relax} \fi
\else
\expandafter\parsemargdef \argl;%
\fi
\expandafter\ifx \csname macsave.\the\macname\endcsname \relax
\cslet{macsave.\the\macname}{\the\macname}%
\else
\if1\csname ismacro.\the\macname\endcsname
\message{Warning: redefining \the\macname}%
\else
\expandafter\ifx\csname \the\macname\endcsname \relax
\else \errmessage{The name \the\macname\space is reserved}\fi
\global\cslet{macsave.\the\macname}{\the\macname}%
\global\expandafter\let\csname ismacro.\the\macname\endcsname=1%
% Add the macroname to \macrolist
\toks0 = \expandafter{\macrolist\do}%
\xdef\macrolist{\the\toks0
\expandafter\noexpand\csname\the\macname\endcsname}%
\fi
\begingroup \macrobodyctxt
\ifrecursive \expandafter\parsermacbody
@ -4612,11 +4628,27 @@ width0pt\relax} \fi
\def\unmacro{\parsearg\unmacroxxx}
\def\unmacroxxx#1{%
\expandafter\ifx \csname macsave.\the\macname\endcsname \relax
\errmessage{Macro \the\macname\ not defined.}%
\if1\csname ismacro.#1\endcsname
\global\cslet{#1}{macsave.#1}%
\global\expandafter\let \csname ismacro.#1\endcsname=0%
% Remove the macro name from \macrolist
\begingroup
\edef\tempa{\expandafter\noexpand\csname#1\endcsname}
\def\do##1{%
\def\tempb{##1}%
\ifx\tempa\tempb
% remove this
\else
\cslet{#1}{macsave.#1}%
\expandafter\let \csname macsave.\the\macname\endcsname \undefined
\toks0 = \expandafter{\newmacrolist\do}%
\edef\newmacrolist{\the\toks0\expandafter\noexpand\tempa}%
\fi}
\def\newmacrolist{}%
% Execute macro list to define \newmacrolist
\macrolist
\global\let\macrolist\newmacrolist
\endgroup
\else
\errmessage{Macro #1 not defined}%
\fi
}
@ -4675,7 +4707,8 @@ width0pt\relax} \fi
\or % 1
\expandafter\xdef\csname\the\macname\endcsname{%
\bgroup\noexpand\macroargctxt
\noexpand\braceorline\csname\the\macname xxx\endcsname}%
\noexpand\braceorline
\expandafter\noexpand\csname\the\macname xxx\endcsname}%
\expandafter\xdef\csname\the\macname xxx\endcsname##1{%
\egroup\noexpand\scanmacro{\temp}}%
\else % many
@ -4683,7 +4716,7 @@ width0pt\relax} \fi
\bgroup\noexpand\macroargctxt
\noexpand\csname\the\macname xx\endcsname}
\expandafter\xdef\csname\the\macname xx\endcsname##1{%
\csname\the\macname xxx\endcsname ##1,}%
\expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}%
\expandafter\expandafter
\expandafter\xdef
\expandafter\expandafter
@ -4699,7 +4732,8 @@ width0pt\relax} \fi
\or % 1
\expandafter\xdef\csname\the\macname\endcsname{%
\bgroup\noexpand\macroargctxt
\noexpand\braceorline\csname\the\macname xxx\endcsname}%
\noexpand\braceorline
\expandafter\noexpand\csname\the\macname xxx\endcsname}%
\expandafter\xdef\csname\the\macname xxx\endcsname##1{%
\egroup
\noexpand\norecurse{\the\macname}%
@ -4707,9 +4741,9 @@ width0pt\relax} \fi
\else % many
\expandafter\xdef\csname\the\macname\endcsname{%
\bgroup\noexpand\macroargctxt
\noexpand\csname\the\macname xx\endcsname}
\expandafter\noexpand\csname\the\macname xx\endcsname}
\expandafter\xdef\csname\the\macname xx\endcsname##1{%
\csname\the\macname xxx\endcsname ##1,}%
\expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}%
\expandafter\expandafter
\expandafter\xdef
\expandafter\expandafter
@ -4733,6 +4767,10 @@ width0pt\relax} \fi
\expandafter\parsearg
\fi \next}
% We mant to disable all macros during \shipout so that they are not
% expanded by \write.
\def\turnoffmacros{\begingroup \def\do##1{\let\noexpand##1=\relax}%
\edef\next{\macrolist}\expandafter\endgroup\next}
\message{cross references,}
\newwrite\auxfile

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
/* Copyright (C) 1996, 1997, 1998, 1999 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
@ -28,5 +28,5 @@ extern int __syscall_reboot (int magic, int magic_too, int flag);
int
reboot (int howto)
{
return INLINE_SYSCALL (reboot, 3, 0xfee1dead, 672274793, howto);
return INLINE_SYSCALL (reboot, 3, (int) 0xfee1dead, 672274793, howto);
}