1997-12-28 15:08  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/powerpc/__longjmp.S: Define _SETJMP_H before including
	<bits/setjmp.h>.
	* sysdeps/powerpc/setjmp.S: Likewise.
	Patches by Matt McLean <keys@keys.got.net>.

	* Make-dist (sysdep_dirs): Ignore bits dirs while searching.

	* Makefile: Undo last patch.
	(distribute): Add test-installation.pl.

	* configure.in: Correct handling of --enable-add-ons without parameter.
	Correct address of WWW pages.

	* libc.map: Add _nl_domain_bindings.

	* db2/mutex/tsl_parisc.s: New file.

	* iconvdata/Makefile (distribute): Add jis0201.c, jis0208.c, jis0212.c,
	and extra-module.mk.

	* localedata/Makefile (distribute): New.  Add all the files.

	* stdlib/Makefile (headers): Add inttypes.h.
	(routines): Add strtoimax, strtoumax, wcstoimax, and wcstoumax.
	* sysdeps/generic/inttypes.h: New file.
	* sysdeps/generic/strtoimax.c: New file.
	* sysdeps/generic/strtoumax.c: New file.
	* sysdeps/generic/wcstoimax.c: New file.
	* sysdeps/generic/wcstoumax.c: New file.
	* sysdeps/wordsize-32/Dist: Removed.
	* sysdeps/wordsize-32/Makefile: Removed.
	* sysdeps/wordsize-64/Dist: Removed.
	* sysdeps/wordsize-64/Makefile: Removed.
	* sysdeps/generic/bits/environments.h: New file.

	* include/limits.h: Define MB_LEN_MAX in any case to 6.  The gcc
	header is still not correct.

	* io/fcntl.h [__USE_FILE_OFFSET64]: We have to use the __*64 types.
	* posix/unistd.h: Likewise.
	* sysdeps/generic/sys/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/mman.h: Likewise.

	* manual/arith.texi: Change definition of mul macro.
	* manual/math.texi: Likewise.

	* misc/Makefile (routines): Add mmap64.
	* sysdeps/generic/mmap64.c: New file.
	* sysdeps/unix/sysv/linux/alpha/mmap64.c: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/mmap64.c: New file.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Add __mmap64 and mmap64
	aliases to mmap.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.

	* sysdeps/generic/setrlimit64.c: Don't mark as stub.

	* nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r): Pretty print.

	* nis(rpcsvc/nis_tags.h: Prevent warning by unknown pragma.

	* sysdeps/posix/mk-stdiolim.c: Generate correct file which defines
	FOPEN_MAX also when included by limits.h.
	* sysdeps/unix/sysv/linux/stdio_lim.h.in: Likewise.

	* sysdeps/unix/sysv/linux/Dist: Add oldsiglist.c, netax25/ax25.h,
	and netrom/netrom.h.
	* sysdeps/unix/sysv/linux/Makefile [$(subdir)=stdio-common]: Add
	oldsiglist to sysdep_routines, not aux.
	[$(subdir)=inet] (sysdep_headers): Add netax25/ax25.h, netrom/netrom.h.

	* sysdeps/unix/sysv/linux/bits/socket.h: Remove SOL_AX25, SOL_ATALK,
	and SOL_NETROM definition.

	* sysdeps/unix/sysv/linux/i386/Dist: Add s_pwrite64.S and s_pread64.S.

	* sysdeps/unix/sysv/linux/net/route.h: Pretty print.
	* sysdeps/unix/sysv/linux/netatalk/at.h: Pretty print.

1997-12-25  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/alpha/net/route.h: New file.

	* sysdeps/unix/sysv/linux/alpha/kernel_sigaction.h: Replace
	sa_handler with k_sa_handler.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Add __getrlimit as
	strong alias.
	Reported by a sun.

	* sysdeps/unix/sysv/linux/sigsuspend.c: Don't define
	__libc_have_rt_sigs here.
	* sysdeps/unix/sysv/linux/sigaction.c: Do it instead here.
	* sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
	* sysdeps/unix/sysv/linux/sigpending.c: Correct comment.
	* sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.

1997-12-11 07:51  Geoff Keating  <geoffk@ozemail.com.au>

	* sysdeps/powerpc/atomicity.h: New file.
	* sysdeps/mach/powerpc/machine-lock.h: New file.

	* Rules: Use -fpic to build anything that might end up in a users'
	shared library.

	* sysdeps/powerpc/s_fdim.c: New file.
	* sysdeps/powerpc/s_fdimf.c: New file.
	* sysdeps/powerpc/s_fmax.S: New file.
	* sysdeps/powerpc/s_fmaxf.S: New file.
	* sysdeps/powerpc/s_fmin.S: New file.
	* sysdeps/powerpc/s_fminf.S: New file.
	* sysdeps/powerpc/s_llrint.c: Now is for double.
	* sysdeps/powerpc/s_llrintf.c: New file.
	* sysdeps/powerpc/s_llround.c: Now is for double.
	* sysdeps/powerpc/s_llroundf.c: New file.
	* sysdeps/powerpc/s_lrint.c: Now is for double.
	* sysdeps/powerpc/s_lrintf.S: New file.
	* sysdeps/powerpc/s_lround.c: Now is for double.
	* sysdeps/powerpc/s_lroundf.c: New file.
	* sysdeps/powerpc/bits/mathinlines.h: Add inline versions of lrint,
	lrintf, fdim, fdimf.

	* sysdeps/unix/sysv/linux/powerpc/kernel_termios.h: Don't use bits/
	file directly, use its parent.

	* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c: Re-instate '++'
	(for the third time).

1997-12-20 13:50  Richard Henderson  <rth@cygnus.com>

	* posix/sched.h: timespec is in <time.h>.

	* sysdeps/unix/sysv/linux/sys/kd.h: Don't redefine _LINUX_TYPES_H.
This commit is contained in:
Ulrich Drepper 1997-12-28 16:01:53 +00:00
parent 9756dfe161
commit b9b49b44fd
81 changed files with 1438 additions and 218 deletions

134
ChangeLog
View File

@ -1,3 +1,137 @@
1997-12-28 15:08 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/powerpc/__longjmp.S: Define _SETJMP_H before including
<bits/setjmp.h>.
* sysdeps/powerpc/setjmp.S: Likewise.
Patches by Matt McLean <keys@keys.got.net>.
* Make-dist (sysdep_dirs): Ignore bits dirs while searching.
* Makefile: Undo last patch.
(distribute): Add test-installation.pl.
* configure.in: Correct handling of --enable-add-ons without parameter.
Correct address of WWW pages.
* libc.map: Add _nl_domain_bindings.
* db2/mutex/tsl_parisc.s: New file.
* iconvdata/Makefile (distribute): Add jis0201.c, jis0208.c, jis0212.c,
and extra-module.mk.
* localedata/Makefile (distribute): New. Add all the files.
* stdlib/Makefile (headers): Add inttypes.h.
(routines): Add strtoimax, strtoumax, wcstoimax, and wcstoumax.
* sysdeps/generic/inttypes.h: New file.
* sysdeps/generic/strtoimax.c: New file.
* sysdeps/generic/strtoumax.c: New file.
* sysdeps/generic/wcstoimax.c: New file.
* sysdeps/generic/wcstoumax.c: New file.
* sysdeps/wordsize-32/Dist: Removed.
* sysdeps/wordsize-32/Makefile: Removed.
* sysdeps/wordsize-64/Dist: Removed.
* sysdeps/wordsize-64/Makefile: Removed.
* sysdeps/generic/bits/environments.h: New file.
* include/limits.h: Define MB_LEN_MAX in any case to 6. The gcc
header is still not correct.
* io/fcntl.h [__USE_FILE_OFFSET64]: We have to use the __*64 types.
* posix/unistd.h: Likewise.
* sysdeps/generic/sys/mman.h: Likewise.
* sysdeps/unix/sysv/linux/sys/mman.h: Likewise.
* manual/arith.texi: Change definition of mul macro.
* manual/math.texi: Likewise.
* misc/Makefile (routines): Add mmap64.
* sysdeps/generic/mmap64.c: New file.
* sysdeps/unix/sysv/linux/alpha/mmap64.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/mmap64.c: New file.
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Add __mmap64 and mmap64
aliases to mmap.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
* sysdeps/generic/setrlimit64.c: Don't mark as stub.
* nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r): Pretty print.
* nis(rpcsvc/nis_tags.h: Prevent warning by unknown pragma.
* sysdeps/posix/mk-stdiolim.c: Generate correct file which defines
FOPEN_MAX also when included by limits.h.
* sysdeps/unix/sysv/linux/stdio_lim.h.in: Likewise.
* sysdeps/unix/sysv/linux/Dist: Add oldsiglist.c, netax25/ax25.h,
and netrom/netrom.h.
* sysdeps/unix/sysv/linux/Makefile [$(subdir)=stdio-common]: Add
oldsiglist to sysdep_routines, not aux.
[$(subdir)=inet] (sysdep_headers): Add netax25/ax25.h, netrom/netrom.h.
* sysdeps/unix/sysv/linux/bits/socket.h: Remove SOL_AX25, SOL_ATALK,
and SOL_NETROM definition.
* sysdeps/unix/sysv/linux/i386/Dist: Add s_pwrite64.S and s_pread64.S.
* sysdeps/unix/sysv/linux/net/route.h: Pretty print.
* sysdeps/unix/sysv/linux/netatalk/at.h: Pretty print.
1997-12-25 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/alpha/net/route.h: New file.
* sysdeps/unix/sysv/linux/alpha/kernel_sigaction.h: Replace
sa_handler with k_sa_handler.
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Add __getrlimit as
strong alias.
Reported by a sun.
* sysdeps/unix/sysv/linux/sigsuspend.c: Don't define
__libc_have_rt_sigs here.
* sysdeps/unix/sysv/linux/sigaction.c: Do it instead here.
* sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
* sysdeps/unix/sysv/linux/sigpending.c: Correct comment.
* sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
1997-12-11 07:51 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/atomicity.h: New file.
* sysdeps/mach/powerpc/machine-lock.h: New file.
* Rules: Use -fpic to build anything that might end up in a users'
shared library.
* sysdeps/powerpc/s_fdim.c: New file.
* sysdeps/powerpc/s_fdimf.c: New file.
* sysdeps/powerpc/s_fmax.S: New file.
* sysdeps/powerpc/s_fmaxf.S: New file.
* sysdeps/powerpc/s_fmin.S: New file.
* sysdeps/powerpc/s_fminf.S: New file.
* sysdeps/powerpc/s_llrint.c: Now is for double.
* sysdeps/powerpc/s_llrintf.c: New file.
* sysdeps/powerpc/s_llround.c: Now is for double.
* sysdeps/powerpc/s_llroundf.c: New file.
* sysdeps/powerpc/s_lrint.c: Now is for double.
* sysdeps/powerpc/s_lrintf.S: New file.
* sysdeps/powerpc/s_lround.c: Now is for double.
* sysdeps/powerpc/s_lroundf.c: New file.
* sysdeps/powerpc/bits/mathinlines.h: Add inline versions of lrint,
lrintf, fdim, fdimf.
* sysdeps/unix/sysv/linux/powerpc/kernel_termios.h: Don't use bits/
file directly, use its parent.
* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c: Re-instate '++'
(for the third time).
1997-12-20 13:50 Richard Henderson <rth@cygnus.com>
* posix/sched.h: timespec is in <time.h>.
* sysdeps/unix/sysv/linux/sys/kd.h: Don't redefine _LINUX_TYPES_H.
1997-12-22 18:10 Ulrich Drepper <drepper@cygnus.com>
* configure.in: Stop with error if --disable-static is used when

4
FAQ.in
View File

@ -42,7 +42,7 @@ few people have expressed interest.
If you have a system not listed above (or in the `README' file) and
you are really interested in porting it, contact
<bug-glibc@prep.ai.mit.edu>
<bug-glibc@gnu.org>
?? What compiler do I need to build GNU libc?
@ -103,7 +103,7 @@ has not been ported to them.
You should not need these tools unless you change the source files.
* Some scripts need perl5 - but at the moment those scripts are not
vital for building and installing GNU libc (some data files will not
vital for building and installing GNU libc (some data files will not
be created).
* When compiling for Linux, the header files of the Linux kernel must

View File

@ -34,7 +34,7 @@ foo:=$(shell echo 'foobar=$(filter %.c %.S %.s %.h,$(distribute))'>&2)
ifndef sysdep_dirs
# Find all sysdep directories.
export sysdep_dirs := $(shell find $(..)sysdeps -type d \
export sysdep_dirs := $(shell find $(..)sysdeps -type d ! -name bits \
! -name CVS ! -name RCS -print)
else
# Defined by the parent.

View File

@ -188,19 +188,20 @@ $(version.c-objects): $(objpfx)version-info.h
subdir-stubs := $(foreach dir,$(subdirs),$(common-objpfx)stub-$(dir))
$(common-objpfx)stub-%: subdir_install
# Since stubs.h is never needed when building the library, we simplify the
# hairy installation process by producing it in place only as the last part
# of the top-level `make install'.
$(inst_includedir)/gnu/stubs.h: $(subdir-stubs)
# of the top-level `make install'. It depends on subdir_install, which
# iterates over all the subdirs; subdir_install in each subdir depends on
# the subdir's stubs file. Having more direct dependencies would result in
# extra iterations over the list for subdirs and many recursive makes.
$(inst_includedir)/gnu/stubs.h: subdir_install
$(make-target-directory)
@rm -f $(objpfx)stubs.h
(echo '/* This file is automatically generated.';\
echo ' It defines a symbol `__stub_FUNCTION'\'' for each function';\
echo ' in the C library which is a stub, meaning it will fail';\
echo ' every time called, usually setting errno to ENOSYS. */';\
sort $^) > $(objpfx)stubs.h
sort $(subdir-stubs)) > $(objpfx)stubs.h
if test -r $@ && cmp -s $(objpfx)stubs.h $@; \
then echo 'stubs.h unchanged'; \
else $(INSTALL_DATA) $(objpfx)stubs.h $@; fi
@ -315,7 +316,7 @@ distribute := README INSTALL FAQ NOTES NEWS PROJECTS BUGS \
autolock.sh rellns-sh munch-tmpl.c munch.awk interp.c \
sysdep.h set-hooks.h libc-symbols.h version.h shlib-versions \
rpm/Makefile rpm/template rpm/rpmrc glibcbug.in abi-tags \
stub-tag.h
stub-tag.h test-installation.pl
distribute := $(strip $(distribute))
generated := $(generated) stubs.h version-info.h

View File

@ -86,7 +86,6 @@ contact <bug-glibc@prep.ai.mit.edu>
[13] Several more or less small functions have to be written:
+ tcgetid() and waitid() from XPG4.2
+ grantpt(), ptsname(), unlockpt() from XPG4.2
More information is available on request.
@ -97,6 +96,8 @@ contact <bug-glibc@prep.ai.mit.edu>
This is needed in several places in the GNU libc and I already have
rather concrete plans but so far no possibility to start this.
*** The library is available, no it remains to be used in the streams.
[15] Cleaning up the header files. Ideally, each header style should
follow the "good examples". Each variable and function should have

6
README
View File

@ -1,4 +1,4 @@
This directory contains the version 2.0.90 test release of the GNU C Library.
This directory contains the version 2.0.91 test release of the GNU C Library.
Many bugs have been fixed since the last release.
Some bugs surely remain.
@ -47,7 +47,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.90.tar.gz'. You can just unpack the crypt
called `glibc-crypt-2.0.91.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
@ -80,7 +80,7 @@ in the GNU C library, explaining how you can tell the library what
facilities you want it to make available.
We prefer to get bug reports sent using the `glibcbug' shell script which
is install together with the rest of the GNU libc to <bugs@gnu.org>.
is installed together with the rest of the GNU libc to <bugs@gnu.org>.
Simply run this shell script and fill in the information. Nevertheless
you can still send bug reports to <bug-glibc@prep.ai.mit.edu> as normal
electronic mails.

View File

@ -40,7 +40,7 @@ Since no one has volunteered to test and fix the above configurations,
these are not supported at the moment. It's expected that these don't
work anymore. Porting the library is not hard. If you are interested
in doing a port, please contact the glibc maintainers by sending
electronic mail to <bug-glibc@prep.ai.mit.edu>.
electronic mail to <bug-glibc@gnu.org>.
The GNU C library now includes Michael Glad's Ultra Fast Crypt, which
provides the Unix `crypt' function, plus some other entry points.
@ -82,8 +82,8 @@ facilities you want it to make available.
We prefer to get bug reports sent using the `glibcbug' shell script which
is installed together with the rest of the GNU libc to <bugs@gnu.org>.
Simply run this shell script and fill in the information. Nevertheless
you can still send bug reports to <bug-glibc@prep.ai.mit.edu> as normal
electronic mails.
you can still send bug reports to <bug-glibc@gnu.irg> as normal electronic
mails.
The GNU C Library is free software. See the file COPYING.LIB for copying
conditions.

6
Rules
View File

@ -171,6 +171,12 @@ ifdef static-only-routines
$(static-only-routines:%=$(objpfx)%.os): %.os: $(common-objpfx)empty.os
rm -f $@
ln $< $@
# Must build the routines as PIC, though, because they can end up in (users')
# shared objects. We don't want to use CFLAGS-os because users may, for
# example, make that processor-specific.
$(static-only-routines:%=$(objpfx)%.o): $(objpfx)%.o: %.c $(before-compile)
$(compile.c) $(pic-ccflag) $(OUTPUT_OPTION)
endif
ifdef shared-only-routines

35
bits/environments.h Normal file
View File

@ -0,0 +1,35 @@
/* Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef _UNISTD_H
# error "Never include this file directly. Use <unistd.h> instead"
#endif
/* This header should define the following symbols under the described
situations. A value `1' means that the model is always supported,
`-1' means it is never supported. Undefined means it cannot be
statically decided.
_XBS5_ILP32_OFF32 32bit int, long, pointers, and off_t type
_XBS5_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type
_XBS5_LP64_OFF32 64bit long and pointers and 32bit off_t type
_XBS5_LPBIG_OFFBIG 64bit long and pointers and large off_t type
*/
#endif /* environments.h */

152
configure vendored
View File

@ -694,8 +694,12 @@ fi
if test "${enable_add_ons+set}" = set; then
enableval="$enable_add_ons"
case "$enableval" in
yes) add_ons=`echo $srcdir/*/configure | \
sed -e "s!$srcdir/!!g" -e 's!/configure!!g'`;;
yes) if test "$srcdir" = "."; then
add_ons=`echo */configure | sed -e 's!/configure!!g'`
else
add_ons=`echo $srcdir/*/configure | \
sed -e "s!^$srcdir/!!g" -e 's!/configure!!g'`
fi;;
*) add_ons=`echo "$enableval" | sed 's/,/ /g'`;;
esac
else
@ -758,7 +762,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
echo "configure:762: checking host system type" >&5
echo "configure:766: checking host system type" >&5
host_alias=$host
case "$host_alias" in
@ -809,7 +813,7 @@ if test -z "$enable_hacker_mode"; then
echo "*** So far nobody cared to port it and if there is no volunteer it"
echo "*** might never happen. So, if you have interest to see glibc on"
echo "*** this platform visit"
echo "*** http://www.gnu.ai.mit.edu/software/libc/porting.html"
echo "*** http://www.gnu.org/software/libc/porting.html"
echo "*** and join the group of porters"
exit 1
;;
@ -877,7 +881,7 @@ fi
# This can take a while to compute.
sysdep_dir=$srcdir/sysdeps
echo $ac_n "checking sysdep dirs""... $ac_c" 1>&6
echo "configure:881: checking sysdep dirs" >&5
echo "configure:885: checking sysdep dirs" >&5
# Make sco3.2v4 become sco3.2.4 and sunos4.1.1_U1 become sunos4.1.1.U1.
os="`echo $os | sed 's/\([0-9A-Z]\)[v_]\([0-9A-Z]\)/\1.\2/g'`"
@ -1078,7 +1082,7 @@ echo "$ac_t""sysdeps/generic" 1>&6
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
echo "configure:1082: checking for a BSD compatible install" >&5
echo "configure:1086: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@ -1132,7 +1136,7 @@ if test "$INSTALL" = "${srcdir}/install-sh -c"; then
INSTALL='\$(..)./install-sh -c'
fi
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
echo "configure:1136: checking whether ln -s works" >&5
echo "configure:1140: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1157,7 +1161,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1161: checking for $ac_word" >&5
echo "configure:1165: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_MSGFMT'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1189,7 +1193,7 @@ test -n "$MSGFMT" || MSGFMT=":"
# Extract the first word of "makeinfo", so it can be a program name with args.
set dummy makeinfo; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1193: checking for $ac_word" >&5
echo "configure:1197: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_MAKEINFO'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1229,7 +1233,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1233: checking for $ac_word" >&5
echo "configure:1237: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1258,7 +1262,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1262: checking for $ac_word" >&5
echo "configure:1266: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1306,7 +1310,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
echo "configure:1310: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
echo "configure:1314: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@ -1316,11 +1320,11 @@ ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
#line 1320 "configure"
#line 1324 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
if { (eval echo configure:1324: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
if { (eval echo configure:1328: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@ -1343,13 +1347,13 @@ else
cross_linkable=yes
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
echo "configure:1347: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "configure:1351: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
echo "configure:1353: checking whether we are using GNU C" >&5
echo "configure:1357: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1358,7 +1362,7 @@ else
yes;
#endif
EOF
if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1362: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1366: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@ -1375,7 +1379,7 @@ if test $ac_cv_prog_gcc = yes; then
yes;
#endif
EOF
if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1379: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1383: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
if test -z "$CFLAGS"; then
CFLAGS="-g -O2"
fi
@ -1387,7 +1391,7 @@ else
fi
echo $ac_n "checking build system type""... $ac_c" 1>&6
echo "configure:1391: checking build system type" >&5
echo "configure:1395: checking build system type" >&5
build_alias=$build
case "$build_alias" in
@ -1410,7 +1414,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1414: checking for $ac_word" >&5
echo "configure:1418: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_BUILD_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1441,7 +1445,7 @@ done
fi
echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
echo "configure:1445: checking how to run the C preprocessor" >&5
echo "configure:1449: checking how to run the C preprocessor" >&5
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
@ -1456,13 +1460,13 @@ else
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp.
cat > conftest.$ac_ext <<EOF
#line 1460 "configure"
#line 1464 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:1466: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:1470: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
:
@ -1473,13 +1477,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -E -traditional-cpp"
cat > conftest.$ac_ext <<EOF
#line 1477 "configure"
#line 1481 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:1483: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:1487: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
:
@ -1512,7 +1516,7 @@ LD=`$CC -print-file-name=ld`
# Determine whether we are using GNU binutils.
echo $ac_n "checking whether $AS is GNU as""... $ac_c" 1>&6
echo "configure:1516: checking whether $AS is GNU as" >&5
echo "configure:1520: checking whether $AS is GNU as" >&5
if eval "test \"`echo '$''{'libc_cv_prog_as_gnu'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1530,7 +1534,7 @@ rm -f a.out
gnu_as=$libc_cv_prog_as_gnu
echo $ac_n "checking whether $LD is GNU ld""... $ac_c" 1>&6
echo "configure:1534: checking whether $LD is GNU ld" >&5
echo "configure:1538: checking whether $LD is GNU ld" >&5
if eval "test \"`echo '$''{'libc_cv_prog_ld_gnu'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1554,7 +1558,7 @@ fi
# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
set dummy ${ac_tool_prefix}ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1558: checking for $ac_word" >&5
echo "configure:1562: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1585,7 +1589,7 @@ fi
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1589: checking for $ac_word" >&5
echo "configure:1593: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1616,7 +1620,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1620: checking for $ac_word" >&5
echo "configure:1624: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1651,7 +1655,7 @@ fi
# Extract the first word of "bash", so it can be a program name with args.
set dummy bash; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1655: checking for $ac_word" >&5
echo "configure:1659: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_BASH'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1693,7 +1697,7 @@ if test "$BASH" = no; then
# Extract the first word of "ksh", so it can be a program name with args.
set dummy ksh; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1697: checking for $ac_word" >&5
echo "configure:1701: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_KSH'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1739,7 +1743,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1743: checking for $ac_word" >&5
echo "configure:1747: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1774,7 +1778,7 @@ test -n "$PERL" || PERL="no"
echo $ac_n "checking for signed size_t type""... $ac_c" 1>&6
echo "configure:1778: checking for signed size_t type" >&5
echo "configure:1782: checking for signed size_t type" >&5
if eval "test \"`echo '$''{'libc_cv_signed_size_t'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1798,12 +1802,12 @@ EOF
fi
echo $ac_n "checking for libc-friendly stddef.h""... $ac_c" 1>&6
echo "configure:1802: checking for libc-friendly stddef.h" >&5
echo "configure:1806: checking for libc-friendly stddef.h" >&5
if eval "test \"`echo '$''{'libc_cv_friendly_stddef'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 1807 "configure"
#line 1811 "configure"
#include "confdefs.h"
#define __need_size_t
#define __need_wchar_t
@ -1818,7 +1822,7 @@ size_t size; wchar_t wchar;
if (&size == NULL || &wchar == NULL) abort ();
; return 0; }
EOF
if { (eval echo configure:1822: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:1826: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
libc_cv_friendly_stddef=yes
else
@ -1837,7 +1841,7 @@ override stddef.h = # The installed <stddef.h> seems to be libc-friendly."
fi
echo $ac_n "checking whether we need to use -P to assemble .S files""... $ac_c" 1>&6
echo "configure:1841: checking whether we need to use -P to assemble .S files" >&5
echo "configure:1845: checking whether we need to use -P to assemble .S files" >&5
if eval "test \"`echo '$''{'libc_cv_need_minus_P'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1868,7 +1872,7 @@ if test $ac_cv_prog_gcc = yes; then
# We must check this even if -pipe is not given here, because the user
# might do `make CFLAGS=-pipe'.
echo $ac_n "checking for gcc 2.7.x -pipe bug""... $ac_c" 1>&6
echo "configure:1872: checking for gcc 2.7.x -pipe bug" >&5
echo "configure:1876: checking for gcc 2.7.x -pipe bug" >&5
if eval "test \"`echo '$''{'libc_cv_gcc_pipe_bug'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1897,7 +1901,7 @@ else
fi
echo $ac_n "checking for assembler global-symbol directive""... $ac_c" 1>&6
echo "configure:1901: checking for assembler global-symbol directive" >&5
echo "configure:1905: checking for assembler global-symbol directive" >&5
if eval "test \"`echo '$''{'libc_cv_asm_global_directive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1927,7 +1931,7 @@ EOF
fi
echo $ac_n "checking for .set assembler directive""... $ac_c" 1>&6
echo "configure:1931: checking for .set assembler directive" >&5
echo "configure:1935: checking for .set assembler directive" >&5
if eval "test \"`echo '$''{'libc_cv_asm_set_directive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1961,7 +1965,7 @@ EOF
fi
echo $ac_n "checking for .symver assembler directive""... $ac_c" 1>&6
echo "configure:1965: checking for .symver assembler directive" >&5
echo "configure:1969: checking for .symver assembler directive" >&5
if eval "test \"`echo '$''{'libc_cv_asm_symver_directive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1980,7 +1984,7 @@ fi
echo "$ac_t""$libc_cv_asm_symver_directive" 1>&6
echo $ac_n "checking for ld --version-script""... $ac_c" 1>&6
echo "configure:1984: checking for ld --version-script" >&5
echo "configure:1988: checking for ld --version-script" >&5
if eval "test \"`echo '$''{'libc_cv_ld_version_script_option'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -2003,7 +2007,7 @@ EOF
if { ac_try='${CC-cc} $CFLAGS -shared -o conftest.so conftest.o
-nostartfiles -nostdlib
-Wl,--version-script,conftest.map
1>&5'; { (eval echo configure:2007: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; };
1>&5'; { (eval echo configure:2011: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; };
then
libc_cv_ld_version_script_option=yes
else
@ -2041,7 +2045,7 @@ if test $VERSIONING = no; then
fi
if test $elf = yes; then
echo $ac_n "checking for .previous assembler directive""... $ac_c" 1>&6
echo "configure:2045: checking for .previous assembler directive" >&5
echo "configure:2049: checking for .previous assembler directive" >&5
if eval "test \"`echo '$''{'libc_cv_asm_previous_directive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -2049,7 +2053,7 @@ else
.section foo_section
.previous
EOF
if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:2053: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:2057: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
libc_cv_asm_previous_directive=yes
else
libc_cv_asm_previous_directive=no
@ -2065,7 +2069,7 @@ EOF
else
echo $ac_n "checking for .popsection assembler directive""... $ac_c" 1>&6
echo "configure:2069: checking for .popsection assembler directive" >&5
echo "configure:2073: checking for .popsection assembler directive" >&5
if eval "test \"`echo '$''{'libc_cv_asm_popsection_directive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -2073,7 +2077,7 @@ else
.pushsection foo_section
.popsection
EOF
if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:2077: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:2081: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
libc_cv_asm_popsection_directive=yes
else
libc_cv_asm_popsection_directive=no
@ -2093,12 +2097,12 @@ fi
if test $elf != yes; then
echo $ac_n "checking for .init and .fini sections""... $ac_c" 1>&6
echo "configure:2097: checking for .init and .fini sections" >&5
echo "configure:2101: checking for .init and .fini sections" >&5
if eval "test \"`echo '$''{'libc_cv_have_initfini'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 2102 "configure"
#line 2106 "configure"
#include "confdefs.h"
int main() {
@ -2107,7 +2111,7 @@ asm (".section .init");
asm (".text");
; return 0; }
EOF
if { (eval echo configure:2111: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:2115: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
libc_cv_have_initfini=yes
else
@ -2135,19 +2139,19 @@ if test $elf = yes; then
else
if test $ac_cv_prog_cc_works = yes; then
echo $ac_n "checking for _ prefix on C symbol names""... $ac_c" 1>&6
echo "configure:2139: checking for _ prefix on C symbol names" >&5
echo "configure:2143: checking for _ prefix on C symbol names" >&5
if eval "test \"`echo '$''{'libc_cv_asm_underscores'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 2144 "configure"
#line 2148 "configure"
#include "confdefs.h"
asm ("_glibc_foobar:");
int main() {
glibc_foobar ();
; return 0; }
EOF
if { (eval echo configure:2151: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
if { (eval echo configure:2155: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
libc_cv_asm_underscores=yes
else
@ -2162,17 +2166,17 @@ fi
echo "$ac_t""$libc_cv_asm_underscores" 1>&6
else
echo $ac_n "checking for _ prefix on C symbol names""... $ac_c" 1>&6
echo "configure:2166: checking for _ prefix on C symbol names" >&5
echo "configure:2170: checking for _ prefix on C symbol names" >&5
if eval "test \"`echo '$''{'libc_cv_asm_underscores'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 2171 "configure"
#line 2175 "configure"
#include "confdefs.h"
void underscore_test(void) {
return; }
EOF
if { (eval echo configure:2176: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:2180: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if grep _underscore_test conftest* >/dev/null; then
rm -f conftest*
libc_cv_asm_underscores=yes
@ -2205,7 +2209,7 @@ if test $elf = yes; then
libc_cv_asm_weakext_directive=no
else
echo $ac_n "checking for assembler .weak directive""... $ac_c" 1>&6
echo "configure:2209: checking for assembler .weak directive" >&5
echo "configure:2213: checking for assembler .weak directive" >&5
if eval "test \"`echo '$''{'libc_cv_asm_weak_directive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -2228,7 +2232,7 @@ echo "$ac_t""$libc_cv_asm_weak_directive" 1>&6
if test $libc_cv_asm_weak_directive = no; then
echo $ac_n "checking for assembler .weakext directive""... $ac_c" 1>&6
echo "configure:2232: checking for assembler .weakext directive" >&5
echo "configure:2236: checking for assembler .weakext directive" >&5
if eval "test \"`echo '$''{'libc_cv_asm_weakext_directive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -2265,7 +2269,7 @@ EOF
fi
echo $ac_n "checking for ld --no-whole-archive""... $ac_c" 1>&6
echo "configure:2269: checking for ld --no-whole-archive" >&5
echo "configure:2273: checking for ld --no-whole-archive" >&5
if eval "test \"`echo '$''{'libc_cv_ld_no_whole_archive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -2276,7 +2280,7 @@ __throw () {}
EOF
if { ac_try='${CC-cc} $CFLAGS
-nostdlib -nostartfiles -Wl,--no-whole-archive
-o conftest conftest.c 1>&5'; { (eval echo configure:2280: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
-o conftest conftest.c 1>&5'; { (eval echo configure:2284: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
libc_cv_ld_no_whole_archive=yes
else
libc_cv_ld_no_whole_archive=no
@ -2287,7 +2291,7 @@ fi
echo "$ac_t""$libc_cv_ld_no_whole_archive" 1>&6
echo $ac_n "checking for gcc -fno-exceptions""... $ac_c" 1>&6
echo "configure:2291: checking for gcc -fno-exceptions" >&5
echo "configure:2295: checking for gcc -fno-exceptions" >&5
if eval "test \"`echo '$''{'libc_cv_gcc_no_exceptions'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -2298,7 +2302,7 @@ __throw () {}
EOF
if { ac_try='${CC-cc} $CFLAGS
-nostdlib -nostartfiles -fno-exceptions
-o conftest conftest.c 1>&5'; { (eval echo configure:2302: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
-o conftest conftest.c 1>&5'; { (eval echo configure:2306: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
libc_cv_gcc_no_exceptions=yes
else
libc_cv_gcc_no_exceptions=no
@ -2310,14 +2314,14 @@ echo "$ac_t""$libc_cv_gcc_no_exceptions" 1>&6
if test "$base_machine" = alpha ; then
echo $ac_n "checking for function ..ng prefix""... $ac_c" 1>&6
echo "configure:2314: checking for function ..ng prefix" >&5
echo "configure:2318: checking for function ..ng prefix" >&5
if eval "test \"`echo '$''{'libc_cv_gcc_alpha_ng_prefix'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.c <<\EOF
foo () { }
EOF
if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "\$foo..ng" > /dev/null'; { (eval echo configure:2321: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; };
if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "\$foo..ng" > /dev/null'; { (eval echo configure:2325: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; };
then
libc_cv_gcc_alpha_ng_prefix=yes
else
@ -2341,12 +2345,12 @@ fi
fi
echo $ac_n "checking for DWARF2 unwind info support""... $ac_c" 1>&6
echo "configure:2345: checking for DWARF2 unwind info support" >&5
echo "configure:2349: checking for DWARF2 unwind info support" >&5
if eval "test \"`echo '$''{'libc_cv_gcc_dwarf2_unwind_info'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.c <<EOF
#line 2350 "configure"
#line 2354 "configure"
static char __EH_FRAME_BEGIN__;
_start ()
{
@ -2373,7 +2377,7 @@ __bzero () {}
EOF
if { ac_try='${CC-cc} $CFLAGS -DCHECK__register_frame_info
-nostdlib -nostartfiles
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:2377: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:2381: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
libc_cv_gcc_dwarf2_unwind_info=static
else
libc_cv_gcc_dwarf2_unwind_info=no
@ -2381,7 +2385,7 @@ fi
if test $libc_cv_gcc_dwarf2_unwind_info = no; then
if { ac_try='${CC-cc} $CFLAGS -DCHECK__register_frame
-nostdlib -nostartfiles
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:2385: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:2389: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
libc_cv_gcc_dwarf2_unwind_info=yes
else
libc_cv_gcc_dwarf2_unwind_info=no
@ -2452,7 +2456,7 @@ if test "$uname" = "sysdeps/generic"; then
fi
echo $ac_n "checking OS release for uname""... $ac_c" 1>&6
echo "configure:2456: checking OS release for uname" >&5
echo "configure:2460: checking OS release for uname" >&5
if eval "test \"`echo '$''{'libc_cv_uname_release'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -2474,7 +2478,7 @@ echo "$ac_t""$libc_cv_uname_release" 1>&6
uname_release="$libc_cv_uname_release"
echo $ac_n "checking OS version for uname""... $ac_c" 1>&6
echo "configure:2478: checking OS version for uname" >&5
echo "configure:2482: checking OS version for uname" >&5
if eval "test \"`echo '$''{'libc_cv_uname_version'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -2496,7 +2500,7 @@ else
fi
echo $ac_n "checking stdio selection""... $ac_c" 1>&6
echo "configure:2500: checking stdio selection" >&5
echo "configure:2504: checking stdio selection" >&5
case $stdio in
libio) cat >> confdefs.h <<\EOF
@ -2508,7 +2512,7 @@ esac
echo "$ac_t""$stdio" 1>&6
echo $ac_n "checking ldap selection""... $ac_c" 1>&6
echo "configure:2512: checking ldap selection" >&5
echo "configure:2516: checking ldap selection" >&5
case $add_ons in
*ldap*)
@ -2570,7 +2574,7 @@ if test $static = no && test $shared = yes; then
fi
echo $ac_n "checking whether -fPIC is default""... $ac_c" 1>&6
echo "configure:2574: checking whether -fPIC is default" >&5
echo "configure:2578: checking whether -fPIC is default" >&5
if eval "test \"`echo '$''{'pic_default'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else

View File

@ -84,8 +84,12 @@ AC_ARG_ENABLE(add-ons, dnl
[ --enable-add-ons[=DIR1,DIR2]... configure and build add-ons in DIR1,DIR2,...
search for add-ons if no parameter given],
[case "$enableval" in
yes) add_ons=`echo $srcdir/*/configure | \
sed -e "s!$srcdir/!!g" -e 's!/configure!!g'`;;
yes) if test "$srcdir" = "."; then
add_ons=`echo */configure | sed -e 's!/configure!!g'`
else
add_ons=`echo $srcdir/*/configure | \
sed -e "s!^$srcdir/!!g" -e 's!/configure!!g'`
fi;;
*) add_ons=`echo "$enableval" | sed 's/,/ /g'`;;
esac],
[add_ons=])
@ -144,7 +148,7 @@ if test -z "$enable_hacker_mode"; then
echo "*** So far nobody cared to port it and if there is no volunteer it"
echo "*** might never happen. So, if you have interest to see glibc on"
echo "*** this platform visit"
echo "*** http://www.gnu.ai.mit.edu/software/libc/porting.html"
echo "*** http://www.gnu.org/software/libc/porting.html"
echo "*** and join the group of porters"
exit 1
;;

65
db2/mutex/tsl_parisc.s Normal file
View File

@ -0,0 +1,65 @@
/*
* Copyright (c) 1996-1997 The University of Utah and the Computer Systems
* Laboratory at the University of Utah (CSL). All rights reserved.
*
* Permission to use, copy, modify and distribute this software is hereby
* granted provided that (1) source code retains these copyright, permission,
* and disclaimer notices, and (2) redistributions including binaries
* reproduce the notices in supporting documentation, and (3) all advertising
* materials mentioning features or use of this software display the following
* acknowledgement: ``This product includes software developed by the Computer
* Systems Laboratory at the University of Utah.''
*
* THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS
* IS" CONDITION. THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF
* ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
*
* CSL requests users of this software to return to csl-dist@cs.utah.edu any
* improvements that they make and grant CSL redistribution rights.
*
* @(#)tsl_parisc.s 8.4 (Sleepycat) 1/18/97
*/
/*
* Spin locks for the PA-RISC. Based on Bob Wheeler's Mach implementation.
*/
.SPACE $TEXT$
.SUBSPA $CODE$
/*
* int tsl_set(tsl_t *tsl)
*
* Try to acquire a lock, return 1 if successful, 0 if not.
*/
.EXPORT tsl_set,ENTRY
tsl_set
.PROC
.CALLINFO FRAME=0,NO_CALLS
.ENTRY
ldo 15(%r26),%r26
depi 0,31,4,%r26
ldcws 0(%r26),%r28
subi,= 0,%r28,%r0
ldi 1,%r28
bv,n 0(%r2)
.EXIT
.PROCEND
/*
* void tsl_unset(tsl_t *tsl)
*
* Release a lock.
*/
.EXPORT tsl_unset,ENTRY
tsl_unset
.PROC
.CALLINFO FRAME=0,NO_CALLS
.ENTRY
ldo 15(%r26),%r26
ldi -1,%r19
depi 0,31,4,%r26
bv 0(%r2)
stw %r19,0(%r26)
.EXIT
.PROCEND

View File

@ -55,13 +55,14 @@ EBCDIC-AT-DE-A-routines := ebcdic-at-de-a
EBCDIC-CA-FR-routines := ebcdic-ca-fr
libJIS-routines := jis0201 jis0208 jis0212
distribute := 8bit-generic.c 8bit-gap.c gap.pl gaptab.pl \
iso8859-1.c iso8859-2.c iso8859-3.c iso8859-4.c iso8859-5.c \
iso8859-6.c iso8859-7.c iso8859-8.c iso8859-9.c iso8859-10.c\
t61.c iso6937.c sjis.c jis0201.h jis0208.h jis0212.h \
koi-8.c koi8-r.c koi8-r.h hp-roman8.c latin-greek.c \
latin-greek.h latin-greek-1.c latin-greek-1.h ebcdic-at-de.c\
ebcdic-at-de-a.c ebcdic-ca-fr.c
distribute := 8bit-generic.c 8bit-gap.c gap.pl gaptab.pl gconv-modules \
iso8859-1.c iso8859-2.c iso8859-3.c iso8859-4.c iso8859-5.c \
iso8859-6.c iso8859-7.c iso8859-8.c iso8859-9.c iso8859-10.c \
t61.c iso6937.c sjis.c jis0201.h jis0208.h jis0212.h \
koi-8.c koi8-r.c koi8-r.h hp-roman8.c latin-greek.c \
latin-greek.h latin-greek-1.c latin-greek-1.h ebcdic-at-de.c \
ebcdic-at-de-a.c ebcdic-ca-fr.c jis0201.c jis0208.c jis0212.c \
extra-module.mk
# We build the transformation modules only when we build shared libs.
ifeq (yes,$(build-shared))

View File

@ -39,6 +39,12 @@
#endif
/* Maximum length of any multibyte character in any locale.
We define this value here since the gcc header does not define
the correct value. */
#define MB_LEN_MAX 6
#if __GNUC__ >= 2
/* Get the compiler's limits.h, which defines all the ANSI constants. */
@ -63,9 +69,6 @@
/* Number of bits in a `char'. */
# define CHAR_BIT 8
/* Maximum length of any multibyte character in any locale. */
# define MB_LEN_MAX 6
/* Minimum and maximum values a `signed char' can hold. */
# define SCHAR_MIN (-128)
# define SCHAR_MAX 127

View File

@ -99,7 +99,7 @@ extern int creat64 __P ((__const char *__file, __mode_t __mode));
# ifndef __USE_FILE_OFFSET64
extern int lockf __P ((int __fd, int __cmd, __off_t __len));
# else
extern int lockf __P ((int __fd, int __cmd, __off_t __len))
extern int lockf __P ((int __fd, int __cmd, __off64_t __len))
__asm__ ("lockf64");
# endif
# ifdef __USE_LARGEFILE64

View File

@ -6,7 +6,7 @@ GLIBC_2.0 {
_nl_msg_cat_cntr; __environ; _environ; _res;
___brk_addr; __curbrk; _nl_current_LC_CTYPE; _libc_intl_domainname;
_sys_errlist; _sys_siglist; __progname; _nl_default_dirname;
__timezone; __daylight; __tzname;
_nl_domain_bindings; __timezone; __daylight; __tzname;
_nl_current_LC_COLLATE; __collate_element_hash;
__collate_element_strings; __collate_symbol_classes;
__collate_symbol_hash; __collate_symbol_strings;

View File

@ -2,17 +2,23 @@
@ifclear cdot
@ifhtml
@set cdot ·
@macro mul
·
@end macro
@end ifhtml
@iftex
@set cdot @cdot
@set cdot ·
@macro mul
@cdot
@end macro
@end iftex
@ifclear cdot
@set cdot x
@end ifclear
@macro mul
@value{cdot}
x
@end macro
@end ifclear
@end ifclear
@node Arithmetic, Date and Time, Mathematics, Top
@chapter Low-Level Arithmetic Functions
@ -211,6 +217,13 @@ This function returns @code{-1} if @var{x} represents negative infinity,
This function returns a nonzero value if @var{x} is a ``not a number''
value, and zero otherwise. (You can just as well use @code{@var{x} !=
@var{x}} to get the same result).
However, @code{isnan} will not raise an invalid exception if @var{x} is
a signalling NaN, while @code{@var{x} != @var{x}} will. This makes
@code{isnan} much slower than the alternative; in code where performance
matters and signalling NaNs are unimportant, it's usually better to use
@code{@var{x} != @var{x}}, even though this is harder to understand.
@end deftypefun
@comment math.h

View File

@ -2,17 +2,23 @@
@ifclear cdot
@ifhtml
@set cdot ·
@macro mul
·
@end macro
@end ifhtml
@iftex
@set cdot @cdot
@set cdot ·
@macro mul
@cdot
@end macro
@end iftex
@ifclear cdot
@set cdot x
@end ifclear
@macro mul
@value{cdot}
x
@end macro
@end ifclear
@end ifclear
@iftex
@set infty @infty
@end iftex

View File

@ -52,7 +52,7 @@ routines := brk sbrk sstk ioctl \
chflags fchflags \
insremque getttyent getusershell getpass ttyslot \
syslog syscall daemon \
mmap munmap mprotect msync madvise \
mmap munmap mprotect msync madvise mmap64 \
efgcvt efgcvt_r qefgcvt qefgcvt_r \
hsearch hsearch_r tsearch lsearch \
err error ustat \

View File

@ -199,7 +199,8 @@ internal_nis_gethostent_r (struct hostent *host, char *buffer,
++p;
free (result);
if ((parse_res = parse_line (p, host, data, buflen, errnop)) == -1)
parse_res = parse_line (p, host, data, buflen, errnop);
if (parse_res == -1)
{
free (outkey);
*h_errnop = NETDB_INTERNAL;

View File

@ -12,7 +12,9 @@
#ifndef _RPCSVC_NIS_TAGS_H
#define _RPCSVC_NIS_TAGS_H
#if 0
#pragma ident "@(#)nis_tags.h 1.16 96/10/25 SMI"
#endif
/* from file: zns_tags.h 1.7 Copyright (c) 1990 Sun Microsystems */
#ifdef __cplusplus

View File

@ -1,5 +1,5 @@
/* Definitions for POSIX 1003.1b-1993 (aka POSIX.4) scheduling interface.
Copyright (C) 1996 Free Software Foundation, Inc.
Copyright (C) 1996, 1997 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
@ -24,7 +24,9 @@
/* Get type definitions. */
#include <bits/types.h>
#include <sys/time.h> /* for struct timespec */
#define __need_timespec
#include <time.h>
/* Get system specific constant and data structure definitions. */
#include <bits/sched.h>

View File

@ -273,7 +273,7 @@ extern __off_t __lseek __P ((int __fd, __off_t __offset, int __whence));
#ifndef __USE_FILE_OFFSET64
extern __off_t lseek __P ((int __fd, __off_t __offset, int __whence));
#else
extern __off_t lseek __P ((int __fd, __off_t __offset, int __whence))
extern __off_t lseek __P ((int __fd, __off64_t __offset, int __whence))
__asm__ ("lseek64");
#endif
#ifdef __USE_LARGEFILE64
@ -304,7 +304,7 @@ extern ssize_t pread __P ((int __fd, __ptr_t __buf, size_t __nbytes,
__off_t __offset));
# else
extern ssize_t pread __P ((int __fd, __ptr_t __buf, size_t __nbytes,
__off_t __offset)) __asm__ ("pread64");
__off64_t __offset)) __asm__ ("pread64");
# endif
extern ssize_t __pread64 __P ((int __fd, __ptr_t __buf, size_t __nbytes,
__off64_t __offset));
@ -322,7 +322,7 @@ extern ssize_t pwrite __P ((int __fd, __const __ptr_t __buf, size_t __n,
__off_t __offset));
# else
extern ssize_t pwrite __P ((int __fd, __const __ptr_t __buf, size_t __n,
__off_t __offset)) __asm__ ("pwrite64");
__off64_t __offset)) __asm__ ("pwrite64");
# endif
extern ssize_t __pwrite64 __P ((int __fd, __const __ptr_t __buf, size_t __n,
__off64_t __offset));
@ -878,7 +878,7 @@ extern int getpagesize __P ((void));
#ifndef __USE_FILE_OFFSET64
extern int truncate __P ((__const char *__file, __off_t __length));
#else
extern int truncate __P ((__const char *__file, __off_t __length))
extern int truncate __P ((__const char *__file, __off64_t __length))
__asm__ ("truncate64");
#endif
#ifdef __USE_LARGEFILE64
@ -889,7 +889,7 @@ extern int truncate64 __P ((__const char *__file, __off64_t __length));
#ifndef __USE_FILE_OFFSET64
extern int ftruncate __P ((int __fd, __off_t __length));
#else
extern int ftruncate __P ((int __fd, __off_t __length))
extern int ftruncate __P ((int __fd, __off64_t __length))
__asm__ ("ftruncate64");
#endif
#ifdef __USE_LARGEFILE64
@ -957,7 +957,7 @@ extern long int syscall __P ((long int __sysno, ...));
# ifndef __USE_FILE_OFFSET64
extern int lockf __P ((int __fd, int __cmd, __off_t __len));
# else
extern int lockf __P ((int __fd, int __cmd, __off_t __len))
extern int lockf __P ((int __fd, int __cmd, __off64_t __len))
__asm__ ("lockf64");
# endif
# ifdef __USE_LARGEFILE64

View File

@ -21,7 +21,8 @@
#
subdir := stdlib
headers := stdlib.h alloca.h monetary.h fmtmsg.h ucontext.h sys/ucontext.h
headers := stdlib.h alloca.h monetary.h fmtmsg.h ucontext.h sys/ucontext.h \
inttypes.h
routines := \
atof atoi atol atoll \
@ -44,7 +45,8 @@ routines := \
strtof_l strtod_l strtold_l \
system canonicalize \
a64l l64a \
rpmatch strfmon strfmon_l getsubopt xpg_basename fmtmsg
rpmatch strfmon strfmon_l getsubopt xpg_basename fmtmsg \
strtoimax strtoumax wcstoimax wcstoumax
distribute := exit.h grouping.h abort-instr.h
tests := tst-strtol tst-strtod testmb testrand testsort testdiv \

View File

@ -0,0 +1,35 @@
/* Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef _UNISTD_H
# error "Never include this file directly. Use <unistd.h> instead"
#endif
/* This header should define the following symbols under the described
situations. A value `1' means that the model is always supported,
`-1' means it is never supported. Undefined means it cannot be
statically decided.
_XBS5_ILP32_OFF32 32bit int, long, pointers, and off_t type
_XBS5_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type
_XBS5_LP64_OFF32 64bit long and pointers and 32bit off_t type
_XBS5_LPBIG_OFFBIG 64bit long and pointers and large off_t type
*/
#endif /* environments.h */

View File

@ -0,0 +1 @@
#error "This file must be written based on the data typs sizes of the target"

48
sysdeps/generic/mmap64.c Normal file
View File

@ -0,0 +1,48 @@
/* Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <errno.h>
#include <sys/mman.h>
#include <sys/types.h>
/* Map addresses starting near ADDR and extending for LEN bytes. From
OFFSET into the file FD describes according to PROT and FLAGS. If ADDR
is nonzero, it is the desired mapping address. If the MAP_FIXED bit is
set in FLAGS, the mapping will be at ADDR exactly (which must be
page-aligned); otherwise the system chooses a convenient nearby address.
The return value is the actual mapping address chosen or MAP_FAILED
for errors (in which case `errno' is set). A successful `mmap' call
deallocates any previous mapping for the affected region. */
__ptr_t
__mmap64 (__ptr_t addr, size_t len, int prot, int flags, int fd,
__off64_t offset)
{
off_t small_offset = (off_t) offset;
if (small_offset != offset)
{
/* We cannot do this since the offset is too large. */
__set_errno (EOVERFLOW);
return MAP_FAILED;
}
return __mmap (addr, len, prot, flags, fd, small_offset);
}
weak_alias (__mmap64, mmap64)

View File

@ -43,4 +43,3 @@ setrlimit64 (resource, rlimits)
}
stub_warning (setrlimit64)
#include <stub-tag.h>

View File

@ -0,0 +1 @@
#error "The correct implementation must be chosen based on the `intmax_t' type"

View File

@ -0,0 +1 @@
#error "The correct implementation must be chosen based on the `uintmax_t' type"

View File

@ -100,6 +100,8 @@ extern __ptr_t mmap __P ((__ptr_t __addr, size_t __len, int __prot,
__asm__ ("mmap64");
#endif
#ifdef __USE_LARGEFILE64
extern __ptr_t __mmap64 __P ((__ptr_t __addr, size_t __len, int __prot,
int __flags, int __fd, __off64_t __offset));
extern __ptr_t mmap64 __P ((__ptr_t __addr, size_t __len, int __prot,
int __flags, int __fd, __off64_t __offset));
#endif

View File

@ -0,0 +1 @@
#error "The correct implementation must be chosen based on the `intmax_t' type"

View File

@ -0,0 +1 @@
#error "The correct implementation must be chosen based on the `uintmax_t' type"

View File

@ -0,0 +1,75 @@
/* Machine-specific definition for spin locks. PowerPC version.
Copyright (C) 1994, 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef _MACHINE_LOCK_H
#define _MACHINE_LOCK_H
/* The type of a spin lock variable. */
typedef __volatile long int __spin_lock_t;
/* Value to initialize `__spin_lock_t' variables to. */
#define __SPIN_LOCK_INITIALIZER 0L
#ifndef _EXTERN_INLINE
#define _EXTERN_INLINE extern __inline
#endif
/* Unlock LOCK. */
_EXTERN_INLINE void
__spin_unlock (__spin_lock_t *__lock)
{
__asm__ __volatile__ ("sync ; stwcx. %1,0,%0"
: : "r" (__lock), "r" (0) : "cr0");
}
/* Try to lock LOCK; return nonzero if we locked it, zero if another has. */
_EXTERN_INLINE int
__spin_try_lock (register __spin_lock_t *__lock)
{
long int __rtn;
__asm__ __volatile__ ("\
0: lwarx %0,0,%1
stwcx. %2,0,%1
bne- 0b
" : "=&r"(__rtn) : "r"(__lock), "r"(1) : "cr0");
return ~__rtn;
}
/* Return nonzero if LOCK is locked. */
_EXTERN_INLINE int
__spin_lock_locked (__spin_lock_t *__lock)
{
long int __rtn;
__asm__ __volatile__ ("\
0: lwarx %0,0,%1
stwcx. %0,0,%1
bne- 0b
" : "=&r"(__rtn) : "r"(__lock) : "cr0");
return __rtn;
}
#endif /* machine-lock.h */

View File

@ -49,7 +49,7 @@ main()
/* These values correspond to the code in sysdeps/posix/tempname.c.
Change the values here if you change that code. */
puts ("#ifndef __need_FOPEN_MAX");
puts ("#ifdef _STDIO_H");
printf ("# define L_tmpnam %u\n", sizeof ("/usr/tmp/") + 9);
printf ("# define TMP_MAX %u\n", 62 * 62 * 62);
@ -74,6 +74,8 @@ main()
#endif
);
puts ("# undef __need_FOPEN_MAX");
puts ("# define __need_FOPEN_MAX 1");
puts ("#endif\n");
/* POSIX does not require that OPEN_MAX and PATH_MAX be defined, so

View File

@ -19,6 +19,7 @@
#include <sysdep.h>
#define _ASM
#define _SETJMP_H
#include <bits/setjmp.h>
ENTRY (__longjmp)

View File

@ -0,0 +1,99 @@
/* Low-level functions for atomic operations. PowerPC version.
Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef _ATOMICITY_H
#define _ATOMICITY_H 1
#include <inttypes.h>
static inline int
__attribute__ ((unused))
exchange_and_add (volatile uint32_t *mem, int val)
{
int tmp, result;
__asm__ __volatile__ ("\
0: lwarx %0,0,%2
add %1,%3,%0
stwcx. %1,0,%2
bne- 0b
" : "=&r"(result), "=&r"(tmp) : "r" (mem), "r"(val) : "cr0");
return result;
}
static inline void
__attribute__ ((unused))
atomic_add (volatile uint32_t *mem, int val)
{
int tmp;
__asm__ __volatile__("\
0: lwarx %0,0,%1
add %0,%2,%0
stwcx. %0,0,%1
bne- 0b
" : "=&r"(tmp) : "r" (mem), "r"(val) : "cr0");
}
static inline int
__attribute__ ((unused))
compare_and_swap (volatile long int *p, long int oldval, long int newval)
{
int result;
__asm__ __volatile__ ("\
0: lwarx %0,0,%1
xor. %0,%0,%2
cntlzw %0,%0
bne- 1f
stwcx. %3,0,%1
bne- 0b
1: srwi %0,%0,5
" : "=&r"(result) : "r"(p), "r"(oldval), "r"(newval) : "cr0");
return result;
}
static inline long int
__attribute__ ((unused))
always_swap (volatile long int *p, long int newval)
{
long int result;
__asm__ __volatile__ ("\
0: lwarx %0,0,%1
stwcx. %2,0,%1
bne- 0b
" : "=&r"(result) : "r"(p), "r"(newval) : "cr0");
return result;
}
static inline int
__attribute__ ((unused))
test_and_set (volatile long int *p, long int oldval, long int newval)
{
int result;
__asm__ __volatile__ ("\
0: lwarx %0,0,%1
xor. %0,%0,%2
cntlzw %0,%0
bne- 1f
stwcx. %3,0,%1
bne- 0b
1: srwi %0,%0,5
" : "=&r"(result) : "r"(p), "r"(oldval), "r"(newval) : "cr0");
return result;
}
#endif /* atomicity.h */

View File

@ -18,28 +18,14 @@
Boston, MA 02111-1307, USA. */
#ifdef __GNUC__
#if !defined __NO_MATH_INLINES && defined __OPTIMIZE__
#ifdef __cplusplus
# define __MATH_INLINE __inline
#else
# define __MATH_INLINE extern __inline
#endif
__MATH_INLINE double __sgn1 (double __x);
__MATH_INLINE double
__sgn1 (double __x)
{
return __x >= 0.0 ? 1.0 : -1.0;
}
#endif /* !__NO_MATH_INLINES && __OPTIMIZE__ */
#if __USE_ISOC9X && !defined _SOFT_FLOAT
# define __unordered_cmp(x, y) \
(__extension__ \
({ __typeof__(x) __x = (x); __typeof__(y) __y = (y); \
unsigned __r; \
__asm__("fcmpu 7,%1,%2 ; mfcr %0" : "=r" (__r) : "f" (__x), "f"(__y)); \
__asm__("fcmpu 7,%1,%2 ; mfcr %0" : "=r" (__r) : "f" (__x), "f"(__y) \
: "cr7"); \
__r; }))
# define isgreater(x, y) (__unordered_cmp (x, y) >> 2 & 1)
@ -50,4 +36,53 @@ __sgn1 (double __x)
# define isunordered(x, y) (__unordered_cmp (x, y) & 1)
#endif /* __USE_ISOC9X && !_SOFT_FLOAT */
#if !defined __NO_MATH_INLINES && defined __OPTIMIZE__
#ifdef __cplusplus
# define __MATH_INLINE __inline
#else
# define __MATH_INLINE extern __inline
#endif /* __cplusplus */
#ifdef __USE_ISOC9X
__MATH_INLINE long int lrint (double __x);
__MATH_INLINE long int
lrint (double __x)
{
union {
double __d;
long int __ll[2];
} __u;
asm ("fctiw %0,%1" : "=f"(__u.__d) : "f"(__x));
return __u.__ll[1];
}
__MATH_INLINE long int lrintf (float __x);
__MATH_INLINE long int
lrintf (float __x)
{
union {
double __d;
long int __ll[2];
} __u;
asm ("fctiw %0,%1" : "=f"(__u.__d) : "f"(__x));
return __u.__ll[1];
}
__MATH_INLINE double fdim (double __x, double __y);
__MATH_INLINE double
fdim (double __x, double __y)
{
return __x < __y ? 0 : __x - __y;
}
__MATH_INLINE float fdimf (float __x, float __y);
__MATH_INLINE float
fdimf (float __x, float __y)
{
return __x < __y ? 0 : __x - __y;
}
#endif /* __USE_ISOC9X */
#endif /* !__NO_MATH_INLINES && __OPTIMIZE__ */
#endif /* __GNUC__ */

31
sysdeps/powerpc/s_fdim.c Normal file
View File

@ -0,0 +1,31 @@
/* Return positive difference between arguments.
Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <math.h>
double
__fdim (double x, double y)
{
return x < y ? 0 : x - y;
}
weak_alias (__fdim, fdim)
#ifdef NO_LONG_DOUBLE
strong_alias (__fdim, __fdiml)
weak_alias (__fdim, fdiml)
#endif

27
sysdeps/powerpc/s_fdimf.c Normal file
View File

@ -0,0 +1,27 @@
/* Return positive difference between arguments.
Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <math.h>
float
__fdimf (float x, float y)
{
return x < y ? 0 : x - y;
}
weak_alias (__fdimf, fdimf)

43
sysdeps/powerpc/s_fmax.S Normal file
View File

@ -0,0 +1,43 @@
/* Floating-point maximum. PowerPC version.
Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <sysdep.h>
ENTRY(__fmax)
/* double [f1] fmax (double [f1] x, double [f2] y); */
fcmpu %cr0,%f1,%f2
blt %cr0,0f /* if x < y, neither x nor y can be NaN... */
bnulr+ %cr0
/* x and y are unordered, so one of x or y must be a NaN... */
fcmpu %cr1,%f2,%f2
bunlr %cr1
0: fmr %f1,%f2
blr
END(__fmax)
weak_alias(__fmax,fmax)
/* It turns out that it's safe to use this code even for single-precision. */
strong_alias(__fmax,__fmaxf)
weak_alias(__fmax,fmaxf)
#ifdef NO_LONG_DOUBLE
weak_alias(__fmax,__fmaxl)
weak_alias(__fmax,fmaxl)
#endif

View File

@ -0,0 +1 @@
/* __fmaxf is in s_fmax.c */

43
sysdeps/powerpc/s_fmin.S Normal file
View File

@ -0,0 +1,43 @@
/* Floating-point minimum. PowerPC version.
Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <sysdep.h>
ENTRY(__fmin)
/* double [f1] fmin (double [f1] x, double [f2] y); */
fcmpu %cr0,%f1,%f2
bgt %cr0,0f /* if x > y, neither x nor y can be NaN... */
bnulr+ %cr0
/* x and y are unordered, so one of x or y must be a NaN... */
fcmpu %cr1,%f2,%f2
bunlr %cr1
0: fmr %f1,%f2
blr
END(__fmin)
weak_alias(__fmin,fmin)
/* It turns out that it's safe to use this code even for single-precision. */
strong_alias(__fmin,__fminf)
weak_alias(__fmin,fminf)
#ifdef NO_LONG_DOUBLE
weak_alias(__fmin,__fminl)
weak_alias(__fmin,fminl)
#endif

View File

@ -0,0 +1 @@
/* __fminf is in s_fmin.c */

View File

@ -1,5 +1,4 @@
/* Round a long long floating point value to an integer in the current
rounding mode.
/* Round a double value to a long long in the current rounding mode.
Copyright (C) 1997 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@ -21,8 +20,12 @@
#include "math.h"
long long int
__llrint (long double x)
__llrint (double x)
{
return (long long int) __rintl (x);
return (long long int) __rint (x);
}
weak_alias (__llrint, llrint)
#ifdef NO_LONG_DOUBLE
strong_alias (__llrint, __llrintl)
weak_alias (__llrint, llrintl)
#endif

View File

@ -0,0 +1,27 @@
/* Round a float value to a long long in the current rounding mode.
Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include "math.h"
long long int
__llrintf (float x)
{
return (long long int) __rintf (x);
}
weak_alias (__llrintf, llrintf)

View File

@ -1,4 +1,4 @@
/* Round long double value to long int.
/* Round double value to long long int.
Copyright (C) 1997 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@ -26,12 +26,12 @@
clipping to MAX_LLONG or MIN_LLONG. */
long long int
__llround (long double x)
__llround (double x)
{
long double xrf;
double xrf;
long long int xr;
xr = (long long int) x;
xrf = (long double) xr;
xrf = (double) xr;
if (x >= 0.0)
if (x - xrf >= 0.5 && x - xrf < 1.0 && x+1 > 0)
return x+1;
@ -44,3 +44,7 @@ __llround (long double x)
return x;
}
weak_alias (__llround, llround)
#ifdef NO_LONG_DOUBLE
strong_alias (__llround, __llroundl)
weak_alias (__llround, llroundl)
#endif

View File

@ -0,0 +1,46 @@
/* Round float value to long long int.
Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <math.h>
/* I think that what this routine is supposed to do is round a value
to the nearest integer, with values exactly on the boundary rounded
away from zero. */
/* This routine relies on (long long)x, when x is out of range of a long long,
clipping to MAX_LLONG or MIN_LLONG. */
long long int
__llroundf (float x)
{
float xrf;
long long int xr;
xr = (long long int) x;
xrf = (float) xr;
if (x >= 0.0)
if (x - xrf >= 0.5 && x - xrf < 1.0 && x+1 > 0)
return x+1;
else
return x;
else
if (xrf - x >= 0.5 && xrf - x < 1.0 && x-1 < 0)
return x-1;
else
return x;
}
weak_alias (__llroundf, llroundf)

View File

@ -19,26 +19,28 @@
#include "math.h"
#ifdef NO_LONG_DOUBLE
long int
__lrint (long double x)
{
return (long int) __rintl(x);
}
#else
long int
__lrint (long double x)
__lrint (double x)
{
union {
double d;
long int ll[2];
} u;
asm ("fctiw %0,%1" : "=f"(u.d) : "f"(x));
return d.ll[1];
return u.ll[1];
}
#endif
weak_alias (__lrint, lrint)
/* This code will also work for a 'float' argument. */
asm ("\
.globl __lrintf
.globl lrintf
.weak lrintf
.set __lrintf,__lrint
.set lrintf,__lrint
");
#ifdef NO_LONG_DOUBLE
strong_alias (__lrint, __lrintl)
weak_alias (__lrint, lrintl)
#endif

View File

@ -0,0 +1 @@
/* __lrintf is in s_lrint.c */

View File

@ -1,4 +1,4 @@
/* Round long double value to long int.
/* Round double value to long int.
Copyright (C) 1997 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@ -26,12 +26,12 @@
clipping to MAX_LONG or MIN_LONG. */
long int
__lround (long double x)
__lround (double x)
{
long double xrf;
double xrf;
long int xr;
xr = (long int) x;
xrf = (long double) xr;
xrf = (double) xr;
if (x >= 0.0)
if (x - xrf >= 0.5 && x - xrf < 1.0 && x+1 > 0)
return x+1;
@ -44,3 +44,7 @@ __lround (long double x)
return x;
}
weak_alias (__lround, lround)
#ifdef NO_LONG_DOUBLE
strong_alias (__lround, __lroundl)
weak_alias (__lround, lroundl)
#endif

View File

@ -0,0 +1,46 @@
/* Round float value to long int.
Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <math.h>
/* I think that what this routine is supposed to do is round a value
to the nearest integer, with values exactly on the boundary rounded
away from zero. */
/* This routine relies on (long int)x, when x is out of range of a long int,
clipping to MAX_LONG or MIN_LONG. */
long int
__lroundf (float x)
{
float xrf;
long int xr;
xr = (long int) x;
xrf = (float) xr;
if (x >= 0.0)
if (x - xrf >= 0.5 && x - xrf < 1.0 && x+1 > 0)
return x+1;
else
return x;
else
if (xrf - x >= 0.5 && xrf - x < 1.0 && x-1 < 0)
return x-1;
else
return x;
}
weak_alias (__lroundf, lroundf)

View File

@ -19,6 +19,7 @@
#include <sysdep.h>
#define _ASM
#define _SETJMP_H
#include <bits/setjmp.h>
ENTRY (__sigsetjmp)

View File

@ -5,6 +5,7 @@ kernel_sigaction.h
kernel_stat.h
kernel_termios.h
llseek.c
oldsiglist.c
s_pread64.c
s_pwrite64.c
siglist.h
@ -21,6 +22,7 @@ net/ppp-comp.h
net/ppp_defs.h
net/route.h
netatalk/at.h
netax25/ax25.h
netinet/if_fddi.h
netinet/if_tr.h
netinet/igmp.h
@ -30,6 +32,7 @@ netinet/ip_icmp.h
netinet/tcp.h
netinet/udp.h
netipx/ipx.h
netrom/netrom.h
nfs/nfs.h
rt_sigaction.c
rt_sigpending.c

View File

@ -69,7 +69,7 @@ ifeq ($(subdir),stdio-common)
inhibit-siglist := yes
ifeq ($(versioning),yes)
aux += oldsiglist
sysdep_routines += oldsiglist
endif
shared-only-routines += oldsiglist
@ -79,7 +79,7 @@ ifeq ($(subdir),inet)
sysdep_headers += netinet/in_systm.h netinet/udp.h \
netinet/if_fddi.h netinet/if_tr.h netinet/igmp.h \
netinet/ip_fw.h netinet/ip_icmp.h netipx/ipx.h \
sys/socketvar.h
sys/socketvar.h netax25/ax25.h netrom/netrom.h
endif
ifeq ($(subdir),posix)

View File

@ -1,7 +1,7 @@
/* This is the sigaction struction from the Linux 2.1.20 kernel. */
struct old_kernel_sigaction {
__sighandler_t sa_handler;
__sighandler_t k_sa_handler;
unsigned long sa_mask;
unsigned int sa_flags;
};

View File

@ -0,0 +1 @@
/* mmap64 is the same as mmap. */

View File

@ -0,0 +1,140 @@
/* Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* Based on the 4.4BSD and Linux version of this file. */
#ifndef _NET_ROUTE_H
#define _NET_ROUTE_H 1
#include <features.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
/* This structure gets passed by the SIOCADDRT and SIOCDELRT calls. */
struct rtentry
{
unsigned long int rt_pad1;
struct sockaddr rt_dst; /* Target address. */
struct sockaddr rt_gateway; /* Gateway addr (RTF_GATEWAY). */
struct sockaddr rt_genmask; /* Target network mask (IP). */
unsigned short int rt_flags;
short int rt_pad2;
unsigned long int rt_pad3;
unsigned char rt_tos;
unsigned char rt_class;
short int rt_pad4[3];
short int rt_metric; /* +1 for binary compatibility! */
char *rt_dev; /* Forcing the device at add. */
unsigned long int rt_mtu; /* Per route MTU/Window. */
unsigned long int rt_window; /* Window clamping. */
unsigned short int rt_irtt; /* Initial RTT. */
};
/* Compatibility hack. */
#define rt_mss rt_mtu
struct in6_rtmsg
{
struct in6_addr rtmsg_dst;
struct in6_addr rtmsg_src;
struct in6_addr rtmsg_gateway;
u_int32_t rtmsg_type;
u_int16_t rtmsg_dst_len;
u_int16_t rtmsg_src_len;
u_int32_t rtmsg_metric;
unsigned long int rtmsg_info;
u_int32_t rtmsg_flags;
int rtmsg_ifindex;
};
#define RTF_UP 0x0001 /* Route usable. */
#define RTF_GATEWAY 0x0002 /* Destination is a gateway. */
#define RTF_HOST 0x0004 /* Host entry (net otherwise). */
#define RTF_REINSTATE 0x0008 /* Reinstate route after timeout. */
#define RTF_DYNAMIC 0x0010 /* Created dyn. (by redirect). */
#define RTF_MODIFIED 0x0020 /* Modified dyn. (by redirect). */
#define RTF_MTU 0x0040 /* Specific MTU for this route. */
#define RTF_MSS RTF_MTU /* Compatibility. */
#define RTF_WINDOW 0x0080 /* Per route window clamping. */
#define RTF_IRTT 0x0100 /* Initial round trip time. */
#define RTF_REJECT 0x0200 /* Reject route. */
#define RTF_STATIC 0x0400 /* Manually injected route. */
#define RTF_XRESOLVE 0x0800 /* External resolver. */
#define RTF_NOFORWARD 0x1000 /* Forwarding inhibited. */
#define RTF_THROW 0x2000 /* Go to next class. */
#define RTF_NOPMTUDISC 0x4000 /* Do not send packets with DF. */
/* for IPv6 */
#define RTF_DEFAULT 0x00010000 /* default - learned via ND */
#define RTF_ALLONLINK 0x00020000 /* fallback, no routers on link */
#define RTF_ADDRCONF 0x00040000 /* addrconf route - RA */
#define RTF_LINKRT 0x00100000 /* link specific - device match */
#define RTF_NONEXTHOP 0x00200000 /* route with no nexthop */
#define RTF_CACHE 0x01000000 /* cache entry */
#define RTF_FLOW 0x02000000 /* flow significant route */
#define RTF_POLICY 0x04000000 /* policy route */
#define RTCF_VALVE 0x00200000
#define RTCF_MASQ 0x00400000
#define RTCF_NAT 0x00800000
#define RTCF_DOREDIRECT 0x01000000
#define RTCF_LOG 0x02000000
#define RTCF_DIRECTSRC 0x04000000
#define RTF_LOCAL 0x80000000
#define RTF_INTERFACE 0x40000000
#define RTF_MULTICAST 0x20000000
#define RTF_BROADCAST 0x10000000
#define RTF_NAT 0x08000000
#define RTF_ADDRCLASSMASK 0xF8000000
#define RT_ADDRCLASS(flags) ((__u_int32_t) flags >> 23)
#define RT_TOS(tos) ((tos) & IPTOS_TOS_MASK)
#define RT_LOCALADDR(flags) ((flags & RTF_ADDRCLASSMASK) \
== (RTF_LOCAL|RTF_INTERFACE))
#define RT_CLASS_UNSPEC 0
#define RT_CLASS_DEFAULT 253
#define RT_CLASS_MAIN 254
#define RT_CLASS_LOCAL 255
#define RT_CLASS_MAX 255
#define RTMSG_ACK NLMSG_ACK
#define RTMSG_OVERRUN NLMSG_OVERRUN
#define RTMSG_NEWDEVICE 0x11
#define RTMSG_DELDEVICE 0x12
#define RTMSG_NEWROUTE 0x21
#define RTMSG_DELROUTE 0x22
#define RTMSG_NEWRULE 0x31
#define RTMSG_DELRULE 0x32
#define RTMSG_CONTROL 0x40
#define RTMSG_AR_FAILED 0x51 /* Address Resolution failed. */
#endif /* net/route.h */

View File

@ -19,13 +19,13 @@ osf_sigprocmask - osf_sigprocmask 2 __osf_sigprocmask
getpeername - getpeername 3 __getpeername getpeername
getpriority - getpriority 2 __getpriority getpriority
mmap - mmap 6 __mmap mmap
mmap - mmap 6 __mmap mmap __mmap64 mmap64
llseek EXTRA lseek 3 __llseek llseek lseek64
pread EXTRA pread 4 __pread pread __pread64 pread64
pwrite EXTRA pwrite 4 __pwrite pwrite __pwrite64 pwrite64
fstatfs - fstatfs 2 __fstatfs fstatfs fstatfs64
statfs - statfs 2 __statfs statfs statfs64
getrlimit - getrlimit 2 getrlimit getrlimit64
getrlimit - getrlimit 2 __getrlimit getrlimit getrlimit64
setrlimit - setrlimit 2 setrlimit setrlimit64
ftruncate - ftruncate 2 ftruncate ftruncate64
truncate - truncate 2 truncate truncate64

View File

@ -107,9 +107,6 @@ enum __socket_type
#define SOL_IPV6 41
#define SOL_ICMPV6 58
#define SOL_RAW 255
#define SOL_AX25 257
#define SOL_ATALK 258
#define SOL_NETROM 259
#define SOL_ROSE 260
#define SOL_DECNET 261
#define SOL_X25 262

View File

@ -1,4 +1,6 @@
bits/mman.h
clone.S
s_pwrite64.S
s_pread64.S
sys/perm.h
sys/vm86.h

View File

@ -32,8 +32,8 @@ extern int __syscall_rt_sigaction (int, const struct sigaction *,
struct sigaction *, size_t);
/* The variable is shared between all wrappers around signal handling
functions which have RT equivalents. It is defined in sigsuspend.c. */
extern int __libc_have_rt_sigs;
functions which have RT equivalents. */
int __libc_have_rt_sigs = -1;
/* If ACT is not NULL, change the action for SIG to *ACT.

View File

@ -19,10 +19,9 @@
/* Based on the 4.4BSD and Linux version of this file. */
#ifndef _NET_ROUTE_H
#define _NET_ROUTE_H 1
#include <features.h>
#include <features.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>

View File

@ -16,8 +16,8 @@
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef __NETATALK_ATALK_H
#define __NETATALK_ATALK_H 1
#ifndef _NETATALK_AT_H
#define _NETATALK_AT_H 1
#include <asm/types.h>
#include <sys/socket.h>
@ -25,4 +25,4 @@
#define SOL_ATALK 258 /* sockopt level for atalk */
#endif
#endif /* netatalk/at.h */

View File

@ -0,0 +1,147 @@
/* Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef _NETAX25_AX25_H
#define _NETAX25_AX25_H 1
#include <features.h>
#include <bits/sockaddr.h>
/* Setsockoptions(2) level. Thanks to BSD these must match IPPROTO_xxx. */
#define SOL_AX25 257
/* AX.25 flags: */
#define AX25_WINDOW 1
#define AX25_T1 2
#define AX25_T2 5
#define AX25_T3 4
#define AX25_N2 3
#define AX25_BACKOFF 6
#define AX25_EXTSEQ 7
#define AX25_IDLE 9
#define AX25_PACLEN 10
#define AX25_IPMAXQUEUE 11
#define AX25_KILL 99
/* AX.25 socket ioctls: */
#define SIOCAX25GETUID (SIOCPROTOPRIVATE)
#define SIOCAX25ADDUID (SIOCPROTOPRIVATE+1)
#define SIOCAX25DELUID (SIOCPROTOPRIVATE+2)
#define SIOCAX25NOUID (SIOCPROTOPRIVATE+3)
#define SIOCAX25BPQADDR (SIOCPROTOPRIVATE+4)
#define SIOCAX25GETPARMS (SIOCPROTOPRIVATE+5)
#define SIOCAX25SETPARMS (SIOCPROTOPRIVATE+6)
#define SIOCAX25OPTRT (SIOCPROTOPRIVATE+7)
#define SIOCAX25CTLCON (SIOCPROTOPRIVATE+8)
/* unknown: */
#define AX25_NOUID_DEFAULT 0
#define AX25_NOUID_BLOCK 1
#define AX25_SET_RT_IPMODE 2
/* Digipeating flags: */
#define AX25_DIGI_INBAND 0x01 /* Allow digipeating within port */
#define AX25_DIGI_XBAND 0x02 /* Allow digipeating across ports */
/* Maximim number of digipeaters: */
#define AX25_MAX_DIGIS 8
typedef struct
{
char ax25_call[7]; /* 6 call + SSID (shifted ascii) */
}
ax25_address;
struct sockaddr_ax25
{
sa_family_t sax25_family;
ax25_address sax25_call;
int sax25_ndigis;
};
/*
* The sockaddr struct with the digipeater adresses:
*/
struct full_sockaddr_ax25
{
struct sockaddr_ax25 fsa_ax25;
ax25_address fsa_digipeater[AX25_MAX_DIGIS];
};
#define sax25_uid sax25_ndigis
struct ax25_routes_struct
{
ax25_address port_addr;
ax25_address dest_addr;
unsigned char digi_count;
ax25_address digi_addr[AX25_MAX_DIGIS];
};
/* The AX.25 ioctl structure: */
struct ax25_ctl_struct
{
ax25_address port_addr;
ax25_address source_addr;
ax25_address dest_addr;
unsigned int cmd;
unsigned long arg;
};
/* AX.25 route structure: */
struct ax25_route_opt_struct
{
ax25_address port_addr;
ax25_address dest_addr;
int cmd;
int arg;
};
/* AX.25 BPQ stuff: */
struct ax25_bpqaddr_struct
{
char dev[16];
ax25_address addr;
};
/* Definitions for the AX.25 `values' fields: */
#define AX25_VALUES_IPDEFMODE 0 /* 'D'=DG 'V'=VC */
#define AX25_VALUES_AXDEFMODE 1 /* 8=Normal 128=Extended Seq Nos */
#define AX25_VALUES_NETROM 2 /* Allow NET/ROM - 0=No 1=Yes */
#define AX25_VALUES_TEXT 3 /* Allow PID=Text - 0=No 1=Yes */
#define AX25_VALUES_BACKOFF 4 /* 'E'=Exponential 'L'=Linear */
#define AX25_VALUES_CONMODE 5 /* Allow connected modes - 0=No 1=Yes */
#define AX25_VALUES_WINDOW 6 /* Default window size for standard AX.25 */
#define AX25_VALUES_EWINDOW 7 /* Default window size for extended AX.25 */
#define AX25_VALUES_T1 8 /* Default T1 timeout value */
#define AX25_VALUES_T2 9 /* Default T2 timeout value */
#define AX25_VALUES_T3 10 /* Default T3 timeout value */
#define AX25_VALUES_N2 11 /* Default N2 value */
#define AX25_VALUES_DIGI 12 /* Digipeat mode */
#define AX25_VALUES_IDLE 13 /* mode vc idle timer */
#define AX25_VALUES_PACLEN 14 /* AX.25 MTU */
#define AX25_VALUES_IPMAXQUEUE 15 /* Maximum number of buffers enqueued */
#define AX25_MAX_VALUES 20
struct ax25_parms_struct
{
ax25_address port_addr;
unsigned short values[AX25_MAX_VALUES];
};
#endif /* netax25/ax25.h */

View File

@ -0,0 +1,80 @@
/* Copyright (C) 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef _NETROM_NETROM_H
#define _NETROM_NETROM_H 1
#include <netax25/ax25.h>
/* Setsockoptions(2) level. Thanks to BSD these must match IPPROTO_xxx. */
#define SOL_NETROM 259
/* NetRom control values: */
#define NETROM_T1 1
#define NETROM_T2 2
#define NETROM_N2 3
#define NETROM_PACLEN 5
#define NETROM_KILL 99
/* Type of route: */
#define NETROM_NEIGH 0
#define NETROM_NODE 1
struct nr_route_struct
{
int type;
ax25_address callsign;
char device[16];
unsigned int quality;
char mnemonic[7];
ax25_address neighbour;
unsigned int obs_count;
};
/* NetRom socket ioctls: */
#define SIOCNRGETPARMS (SIOCPROTOPRIVATE+0)
#define SIOCNRSETPARMS (SIOCPROTOPRIVATE+1)
#define SIOCNRDECOBS (SIOCPROTOPRIVATE+2)
#define SIOCNRRTCTL (SIOCPROTOPRIVATE+3)
#define SIOCNRCTLCON (SIOCPROTOPRIVATE+4)
/* NetRom parameter structure: */
struct nr_parms_struct
{
unsigned int quality;
unsigned int obs_count;
unsigned int ttl;
unsigned int timeout;
unsigned int ack_delay;
unsigned int busy_delay;
unsigned int tries;
unsigned int window;
unsigned int paclen;
};
/* NetRom control structure: */
struct nr_ctl_struct
{
unsigned char index;
unsigned char id;
unsigned int cmd;
unsigned long arg;
};
#endif /* netrom/netrom.h */

View File

@ -29,12 +29,13 @@
(envp) = (argv) + (argc) + 1; \
for (_tmp = (void **) (envp); *_tmp; ++_tmp) \
continue; \
if (*_tmp == 0 && ((size_t)_tmp & 0xf) != 0) \
/* The following '++' is important! */ \
++_tmp; \
if (*_tmp == 0) \
{ \
size_t _test = (size_t)_tmp; \
_test = _test + 0xf & ~0xf; \
if (*(long *)_test == AT_PHDR) \
_tmp = (void **)_test; \
_tmp = (void **)_test; \
} \
(auxp) = (void *) _tmp; \
} while (0)

View File

@ -20,7 +20,7 @@
#define _KERNEL_TERMIOS_H 1
/* We need the definition of tcflag_t, cc_t, and speed_t. */
#include <bits/termios.h>
#include <termios.h>
#define __KERNEL_NCCS 19

View File

@ -30,8 +30,8 @@ extern int __syscall_rt_sigaction (int, const struct sigaction *,
struct sigaction *, size_t);
/* The variable is shared between all wrappers around signal handling
functions which have RT equivalents. It is defined in sigsuspend.c. */
extern int __libc_have_rt_sigs;
functions which have RT equivalents. */
int __libc_have_rt_sigs = -1;
/* If ACT is not NULL, change the action for SIG to *ACT.

View File

@ -25,7 +25,7 @@ extern int __syscall_rt_sigpending (sigset_t *, size_t);
/* The variable is shared between all wrappers around signal handling
functions which have RT equivalents. It is defined in sigsuspend.c. */
functions which have RT equivalents. It is defined in sigaction.c. */
extern int __libc_have_rt_sigs;

View File

@ -25,7 +25,7 @@ extern int __syscall_rt_sigprocmask (int, const sigset_t *, sigset_t *,
size_t);
/* The variable is shared between all wrappers around signal handling
functions which have RT equivalents. It is defined in sigsuspend.c. */
functions which have RT equivalents. It is defined in sigaction.c. */
extern int __libc_have_rt_sigs;

View File

@ -25,8 +25,8 @@ extern int __syscall_rt_sigsuspend (const sigset_t *, size_t);
/* The variable is shared between all wrappers around signal handling
functions which have RT equivalents. */
int __libc_have_rt_sigs = 1;
functions which have RT equivalents. It is defined in sigaction.c. */
extern int __libc_have_rt_sigs;
/* Change the set of blocked signals to SET,

View File

@ -0,0 +1 @@
/* mmap64 is the same as mmap. */

View File

@ -10,6 +10,7 @@ getrlimit - getrlimit 2 getrlimit getrlimit64
setrlimit - setrlimit 2 setrlimit setrlimit64
ftruncate - ftruncate 2 ftruncate ftruncate64
truncate - truncate 2 truncate truncate64
mmap - mmap 6 __mmap mmap __mmap64 mmap64
# Override select.S in parent directory:
select - select 5 __select select

View File

@ -21,7 +21,7 @@
# error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead."
#endif
#ifndef __need_FOPEN_MAX
#ifdef _STDIO_H
# define L_tmpnam 19
# define TMP_MAX 238328
@ -31,6 +31,9 @@
# endif
# define FILENAME_MAX DEFAULT_FILENAME_MAX
# undef __need_FOPEN_MAX
# define __need_FOPEN_MAX
#endif
#if defined __need_FOPEN_MAX && !defined __defined_FOPEN_MAX

View File

@ -20,7 +20,9 @@
#define _SYS_KD_H 1
/* Make sure the <linux/types.h> header is not loaded. */
#define _LINUX_TYPES_H 1
#ifndef _LINUX_TYPES_H
# define _LINUX_TYPES_H 1
#endif
#include <linux/kd.h>

View File

@ -42,18 +42,20 @@ __BEGIN_DECLS
deallocates any previous mapping for the affected region. */
extern __ptr_t __mmap __P ((__ptr_t __addr, size_t __len, int __prot,
int __flags, int __fd, __off_t __offset));
int __flags, int __fd, __off_t __offset));
#ifndef __USE_FILE_OFFSET64
extern __ptr_t mmap __P ((__ptr_t __addr, size_t __len, int __prot,
int __flags, int __fd, __off_t __offset));
int __flags, int __fd, __off_t __offset));
#else
extern __ptr_t mmap __P ((__ptr_t __addr, size_t __len, int __prot,
int __flags, int __fd, __off_t __offset))
int __flags, int __fd, __off64_t __offset))
__asm__ ("mmap64");
#endif
#ifdef __USE_LARGEFILE64
extern __ptr_t __mmap64 __P ((__ptr_t __addr, size_t __len, int __prot,
int __flags, int __fd, __off64_t __offset));
extern __ptr_t mmap64 __P ((__ptr_t __addr, size_t __len, int __prot,
int __flags, int __fd, __off64_t __offset));
int __flags, int __fd, __off64_t __offset));
#endif
/* Deallocate any mapping for the region starting at ADDR and extending LEN

View File

@ -1,5 +0,0 @@
inttypes.h
strtoimax.c
strtoumax.c
wcstoimax.c
wcstoumax.c

View File

@ -1,5 +0,0 @@
ifeq ($(subdir),stdlib)
sysdep_headers += inttypes.h
sysdep_routines += strtoimax strtoumax wcstoimax wcstoumax
endif

View File

@ -1,5 +0,0 @@
inttypes.h
strtoimax.c
strtoumax.c
wcstoimax.c
wcstoumax.c

View File

@ -1,5 +0,0 @@
ifeq ($(subdir),stdlib)
sysdep_headers += inttypes.h
sysdep_routines += strtoimax strtoumax wcstoimax wcstoumax
endif