Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Update.
1997-11-26 04:28  Ulrich Drepper  <drepper@cygnus.com>

	* eld/dl-profile.c (_dl_start_profile): Avoid FP calculation when
	computing s_scale.  Patch by a sun <asun@zoology.washington.edu>.

	* iconv/gconv_close.c: Correct freeing of descriptor data.
	* iconv/gconv_simple.c: Return correct error values for illegal or
	incomplete characters.

	* Makefile (iconvdata/%): Special goal to simplify iconvdata
	development.
	* iconvdata/Makefile: New file.
	* iconvdata/configure: Likewise.
	* iconvdata/extra-module.mk: Likewise.
	* iconvdata/gconv-modules: Likewise.
	* iconvdata/iso6937.c: Likewise.
	* iconvdata/iso8859-1.c: Likewise.
	* iconvdata/iso8859-10.c: Likewise.
	* iconvdata/iso8859-10.h: Likewise.
	* iconvdata/iso8859-2.c: Likewise.
	* iconvdata/iso8859-2.h: Likewise.
	* iconvdata/iso8859-3.c: Likewise.
	* iconvdata/iso8859-3.h: Likewise.
	* iconvdata/iso8859-4.c: Likewise.
	* iconvdata/iso8859-4.h: Likewise.
	* iconvdata/iso8859-5.c: Likewise.
	* iconvdata/iso8859-5.h: Likewise.
	* iconvdata/iso8859-6.c: Likewise.
	* iconvdata/iso8859-6.h: Likewise.
	* iconvdata/iso8859-7.c: Likewise.
	* iconvdata/iso8859-7.h: Likewise.
	* iconvdata/iso8859-8.c: Likewise.
	* iconvdata/iso8859-8.h: Likewise.
	* iconvdata/iso8859-9.c: Likewise.
	* iconvdata/iso8859-9.h: Likewise.
	* iconvdata/iso8859-generic.c: Likewise.
	* iconvdata/t61.c: Likewise.

	* string/Makefile (routines): Add strcasestr.
	* string/string.h: Add prototype for strcasestr.
	* sysdeps/generic/strcasestr.c: New file.
	* wcsmbs/mbrtowc.c: Simplify special case a bit.
	* wcsmbs/wcrtomb.c: Likewise.
	* wcsmbs/mbsnrtowcs.c: Correctly handle incomplete characters.
	* wcsmbs/wcsnrtombs.c: Likewise.
	* wcsmbs/mbsrtowcs.c: Make sure SRC argument is correct when
	partial character is read.
	* wcsmbs/wcsrtombs.c: Likewise.
	* wcsmbs/wmemrtombs.c: Likewise.
	* wcsmbs/wmemrtowcs.c: Likewise.

	* io/ftw.h: Include <sys/stat.h> instead of <bits/stat.h>.
	* login/pty.h: Include <sys/ioctl.h> instead og <bits/ioctl-types.h>.
	* sysdeps/i386/__longjmp.S: Define _SETJMP_H.
	* sysdeps/i386/elf/setjmp.S: Likewise.
	* sysdeps/unix/sysv/linux/kernel_termios.h: Do include
	<bits/termios.h>.

	* sysdeps/posix/mk-stdiolim.c: Output file with comment.
	* sysdeps/unix/sysv/linux/stdio_lim.h.in: Add comment.

	* sysdeps/unix/sysv/linux/sys/mman.h: Pretty print.
	* sysvipc/sys/ipc.h: Likewise.
	* sysvipc/sys/msg.h: Likewise.
	* sysvipc/sys/sem.h: Likewise.
	* sysvipc/sys/shm.h: Likewise.

	* sysdeps/alpha/bits/endian.h: Issue error message if the header is
	used directly.
	* sysdeps/alpha/bits/setjmp.h: Likewise.
	* sysdeps/alpha/fpu/bits/fenv.h: Likewise.
	* sysdeps/arm/bits/endian.h: Likewise.
	* sysdeps/arm/bits/setjmp.h: Likewise.
	* sysdeps/generic/bits/byteswap.h: Likewise.
	* sysdeps/generic/bits/confname.h: Likewise.
	* sysdeps/generic/bits/dirent.h: Likewise.
	* sysdeps/generic/bits/dlfcn.h: Likewise.
	* sysdeps/generic/bits/endian.h: Likewise.
	* sysdeps/generic/bits/fenv.h: Likewise.
	* sysdeps/generic/bits/huge_val.h: Likewise.
	* sysdeps/generic/bits/in.h: Likewise.
	* sysdeps/generic/bits/ioctl-types.h: Likewise.
	* sysdeps/generic/bits/ioctls.h: Likewise.
	* sysdeps/generic/bits/ipc.h: Likewise.
	* sysdeps/generic/bits/msq.h: Likewise.
	* sysdeps/generic/bits/poll.h: Likewise.
	* sysdeps/generic/bits/resource.h: Likewise.
	* sysdeps/generic/bits/sched.h: Likewise.
	* sysdeps/generic/bits/sem.h: Likewise.
	* sysdeps/generic/bits/setjmp.h: Likewise.
	* sysdeps/generic/bits/shm.h: Likewise.
	* sysdeps/generic/bits/sigaction.h: Likewise.
	* sysdeps/generic/bits/sigcontext.h: Likewise.
	* sysdeps/generic/bits/socket.h: Likewise.
	* sysdeps/generic/bits/stat.h: Likewise.
	* sysdeps/generic/bits/statfs.h: Likewise.
	* sysdeps/generic/bits/stdio_lim.h: Likewise.
	* sysdeps/generic/bits/termios.h: Likewise.
	* sysdeps/generic/bits/time.h: Likewise.
	* sysdeps/generic/bits/uio.h: Likewise.
	* sysdeps/generic/bits/utmp.h: Likewise.
	* sysdeps/generic/bits/utmpx.h: Likewise.
	* sysdeps/generic/bits/utsname.h: Likewise.
	* sysdeps/generic/bits/waitflags.h: Likewise.
	* sysdeps/generic/bits/waitstatus.h: Likewise.
	* sysdeps/gnu/bits/utmp.h: Likewise.
	* sysdeps/gnu/bits/utmpx.h: Likewise.
	* sysdeps/i386/bits/byteswap.h: Likewise.
	* sysdeps/i386/bits/endian.h: Likewise.
	* sysdeps/i386/bits/huge_val.h: Likewise.
	* sysdeps/i386/bits/setjmp.h: Likewise.
	* sysdeps/i386/fpu/bits/fenv.h: Likewise.
	* sysdeps/ieee754/bits/huge_val.h: Likewise.
	* sysdeps/m68k/bits/byteswap.h: Likewise.
	* sysdeps/m68k/bits/endian.h: Likewise.
	* sysdeps/m68k/bits/setjmp.h: Likewise.
	* sysdeps/m68k/fpu/bits/fenv.h: Likewise.
	* sysdeps/mach/hurd/alpha/bits/sigcontext.h: Likewise.
	* sysdeps/mach/hurd/bits/ioctls.h: Likewise.
	* sysdeps/mach/hurd/bits/stat.h: Likewise.
	* sysdeps/mach/hurd/hppa/bits/sigcontext.h: Likewise.
	* sysdeps/mach/hurd/i386/bits/sigcontext.h: Likewise.
	* sysdeps/mach/hurd/mips/bits/sigcontext.h: Likewise.
	* sysdeps/mips/bits/dlfcn.h: Likewise.
	* sysdeps/mips/bits/endian.h: Likewise.
	* sysdeps/mips/bits/setjmp.h: Likewise.
	* sysdeps/mips/dec/bits/endian.h: Likewise.
	* sysdeps/mips/mips64/bits/setjmp.h: Likewise.
	* sysdeps/mips/mipsel/bits/endian.h: Likewise.
	* sysdeps/mips/p40/bits/endian.h: Likewise.
	* sysdeps/powerpc/bits/endian.h: Likewise.
	* sysdeps/powerpc/bits/fenv.h: Likewise.
	* sysdeps/powerpc/bits/setjmp.h: Likewise.
	* sysdeps/sparc/sparc32/bits/endian.h: Likewise.
	* sysdeps/sparc/sparc32/bits/setjmp.h: Likewise.
	* sysdeps/sparc/sparc32/fpu/bits/fenv.h: Likewise.
	* sysdeps/sparc/sparc64/bits/endian.h: Likewise.
	* sysdeps/sparc/sparc64/fpu/bits/fenv.h: Likewise.
	* sysdeps/unix/bsd/bits/dirent.h: Likewise.
	* sysdeps/unix/bsd/bits/stat.h: Likewise.
	* sysdeps/unix/bsd/bits/waitflags.h: Likewise.
	* sysdeps/unix/bsd/bsd4.4/bits/dirent.h: Likewise.
	* sysdeps/unix/bsd/osf/alpha/bits/stat.h: Likewise.
	* sysdeps/unix/bsd/osf/bits/sigaction.h: Likewise.
	* sysdeps/unix/bsd/sun/m68k/bits/sigcontext.h: Likewise.
	* sysdeps/unix/bsd/sun/sparc/bits/sigcontext.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/bits/resource.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/bits/termios.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/bits/utsname.h: Likewise.
	* sysdeps/unix/bsd/ultrix4/bits/utsname.h: Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/bits/sigcontext.h: Likewise.
	* sysdeps/unix/common/bits/dirent.h: Likewise.
	* sysdeps/unix/sysv/bits/dirent.h: Likewise.
	* sysdeps/unix/sysv/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/bits/utmp.h: Likewise.
	* sysdeps/unix/sysv/bits/utsname.h: Likewise.
	* sysdeps/unix/sysv/irix4/bits/confname.h: Likewise.
	* sysdeps/unix/sysv/irix4/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/ioctls.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/ipc.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/sigaction.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/time.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/dirent.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/in.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/ioctl-types.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/ioctls.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/ipc.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/msq.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/poll.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/resource.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/sem.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/sigaction.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/sigcontext.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/statfs.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/time.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/uio.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/utsname.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/waitflags.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/m68k/bits/poll.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/endian.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/ipc.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/poll.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/socket.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/statfs.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/time.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/ioctl-types.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/ioctls.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/poll.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/bits/setjmp.h: Likewise.
	* sysdeps/unix/sysv/minix/bits/sigaction.h: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/bits/confname.h: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/bits/sigaction.h: Likewise.
	* sysdeps/unix/sysv/sysv4/bits/sigaction.h: Likewise.
	* sysdeps/unix/sysv/sysv4/bits/utsname.h: Likewise.
	* sysdeps/unix/sysv/sysv4/bits/waitflags.h: Likewise.
	* sysdeps/unix/sysv/sysv4/i386/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/sparc/bits/sigcontext.h: Likewise.
	* sysdeps/vax/bits/huge_val.h: Likewise.
	* sysdeps/vax/bits/setjmp.h: Likewise.
	* sysdeps/wordsize-32/bits/elfclass.h: Likewise.
	* sysdeps/wordsize-64/bits/elfclass.h: Likewise.

1997-11-25  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* libio/stdio.h: Correct comment of sys_nerr/sys_errlist

1997-11-25  Paul Eggert  <eggert@shade.twinsun.com>

	* strftime.c (strftime):
	No longer any need to undef or declare if emacs is defined.
	(my_strftime): When checking a -1 returned by mktime, don't blow up
	if localtime_r returns NULL.

1997-11-24  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* README.template: Fix spelling.

1997-11-25  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* configure.in: Enhance --enable-add-ons description a wee bit.

1997-11-24  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* glibcbug.in: Add more information of build environment and flags.

1997-11-23  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/posix/getcwd.c: Recognize EOF from readdir and translate
	it into ENOENT.
  • Loading branch information
Ulrich Drepper committed Nov 26, 1997
1 parent e34b0f2 commit f4017d2
Show file tree
Hide file tree
Showing 248 changed files with 8,922 additions and 1,429 deletions.
253 changes: 253 additions & 0 deletions ChangeLog
@@ -1,3 +1,256 @@
1997-11-26 04:28 Ulrich Drepper <drepper@cygnus.com>

* eld/dl-profile.c (_dl_start_profile): Avoid FP calculation when
computing s_scale. Patch by a sun <asun@zoology.washington.edu>.

* iconv/gconv_close.c: Correct freeing of descriptor data.
* iconv/gconv_simple.c: Return correct error values for illegal or
incomplete characters.

* Makefile (iconvdata/%): Special goal to simplify iconvdata
development.
* iconvdata/Makefile: New file.
* iconvdata/configure: Likewise.
* iconvdata/extra-module.mk: Likewise.
* iconvdata/gconv-modules: Likewise.
* iconvdata/iso6937.c: Likewise.
* iconvdata/iso8859-1.c: Likewise.
* iconvdata/iso8859-10.c: Likewise.
* iconvdata/iso8859-10.h: Likewise.
* iconvdata/iso8859-2.c: Likewise.
* iconvdata/iso8859-2.h: Likewise.
* iconvdata/iso8859-3.c: Likewise.
* iconvdata/iso8859-3.h: Likewise.
* iconvdata/iso8859-4.c: Likewise.
* iconvdata/iso8859-4.h: Likewise.
* iconvdata/iso8859-5.c: Likewise.
* iconvdata/iso8859-5.h: Likewise.
* iconvdata/iso8859-6.c: Likewise.
* iconvdata/iso8859-6.h: Likewise.
* iconvdata/iso8859-7.c: Likewise.
* iconvdata/iso8859-7.h: Likewise.
* iconvdata/iso8859-8.c: Likewise.
* iconvdata/iso8859-8.h: Likewise.
* iconvdata/iso8859-9.c: Likewise.
* iconvdata/iso8859-9.h: Likewise.
* iconvdata/iso8859-generic.c: Likewise.
* iconvdata/t61.c: Likewise.

* string/Makefile (routines): Add strcasestr.
* string/string.h: Add prototype for strcasestr.
* sysdeps/generic/strcasestr.c: New file.
* wcsmbs/mbrtowc.c: Simplify special case a bit.
* wcsmbs/wcrtomb.c: Likewise.
* wcsmbs/mbsnrtowcs.c: Correctly handle incomplete characters.
* wcsmbs/wcsnrtombs.c: Likewise.
* wcsmbs/mbsrtowcs.c: Make sure SRC argument is correct when
partial character is read.
* wcsmbs/wcsrtombs.c: Likewise.
* wcsmbs/wmemrtombs.c: Likewise.
* wcsmbs/wmemrtowcs.c: Likewise.

* io/ftw.h: Include <sys/stat.h> instead of <bits/stat.h>.
* login/pty.h: Include <sys/ioctl.h> instead og <bits/ioctl-types.h>.
* sysdeps/i386/__longjmp.S: Define _SETJMP_H.
* sysdeps/i386/elf/setjmp.S: Likewise.
* sysdeps/unix/sysv/linux/kernel_termios.h: Do include
<bits/termios.h>.

* sysdeps/posix/mk-stdiolim.c: Output file with comment.
* sysdeps/unix/sysv/linux/stdio_lim.h.in: Add comment.

* sysdeps/unix/sysv/linux/sys/mman.h: Pretty print.
* sysvipc/sys/ipc.h: Likewise.
* sysvipc/sys/msg.h: Likewise.
* sysvipc/sys/sem.h: Likewise.
* sysvipc/sys/shm.h: Likewise.

* sysdeps/alpha/bits/endian.h: Issue error message if the header is
used directly.
* sysdeps/alpha/bits/setjmp.h: Likewise.
* sysdeps/alpha/fpu/bits/fenv.h: Likewise.
* sysdeps/arm/bits/endian.h: Likewise.
* sysdeps/arm/bits/setjmp.h: Likewise.
* sysdeps/generic/bits/byteswap.h: Likewise.
* sysdeps/generic/bits/confname.h: Likewise.
* sysdeps/generic/bits/dirent.h: Likewise.
* sysdeps/generic/bits/dlfcn.h: Likewise.
* sysdeps/generic/bits/endian.h: Likewise.
* sysdeps/generic/bits/fenv.h: Likewise.
* sysdeps/generic/bits/huge_val.h: Likewise.
* sysdeps/generic/bits/in.h: Likewise.
* sysdeps/generic/bits/ioctl-types.h: Likewise.
* sysdeps/generic/bits/ioctls.h: Likewise.
* sysdeps/generic/bits/ipc.h: Likewise.
* sysdeps/generic/bits/msq.h: Likewise.
* sysdeps/generic/bits/poll.h: Likewise.
* sysdeps/generic/bits/resource.h: Likewise.
* sysdeps/generic/bits/sched.h: Likewise.
* sysdeps/generic/bits/sem.h: Likewise.
* sysdeps/generic/bits/setjmp.h: Likewise.
* sysdeps/generic/bits/shm.h: Likewise.
* sysdeps/generic/bits/sigaction.h: Likewise.
* sysdeps/generic/bits/sigcontext.h: Likewise.
* sysdeps/generic/bits/socket.h: Likewise.
* sysdeps/generic/bits/stat.h: Likewise.
* sysdeps/generic/bits/statfs.h: Likewise.
* sysdeps/generic/bits/stdio_lim.h: Likewise.
* sysdeps/generic/bits/termios.h: Likewise.
* sysdeps/generic/bits/time.h: Likewise.
* sysdeps/generic/bits/uio.h: Likewise.
* sysdeps/generic/bits/utmp.h: Likewise.
* sysdeps/generic/bits/utmpx.h: Likewise.
* sysdeps/generic/bits/utsname.h: Likewise.
* sysdeps/generic/bits/waitflags.h: Likewise.
* sysdeps/generic/bits/waitstatus.h: Likewise.
* sysdeps/gnu/bits/utmp.h: Likewise.
* sysdeps/gnu/bits/utmpx.h: Likewise.
* sysdeps/i386/bits/byteswap.h: Likewise.
* sysdeps/i386/bits/endian.h: Likewise.
* sysdeps/i386/bits/huge_val.h: Likewise.
* sysdeps/i386/bits/setjmp.h: Likewise.
* sysdeps/i386/fpu/bits/fenv.h: Likewise.
* sysdeps/ieee754/bits/huge_val.h: Likewise.
* sysdeps/m68k/bits/byteswap.h: Likewise.
* sysdeps/m68k/bits/endian.h: Likewise.
* sysdeps/m68k/bits/setjmp.h: Likewise.
* sysdeps/m68k/fpu/bits/fenv.h: Likewise.
* sysdeps/mach/hurd/alpha/bits/sigcontext.h: Likewise.
* sysdeps/mach/hurd/bits/ioctls.h: Likewise.
* sysdeps/mach/hurd/bits/stat.h: Likewise.
* sysdeps/mach/hurd/hppa/bits/sigcontext.h: Likewise.
* sysdeps/mach/hurd/i386/bits/sigcontext.h: Likewise.
* sysdeps/mach/hurd/mips/bits/sigcontext.h: Likewise.
* sysdeps/mips/bits/dlfcn.h: Likewise.
* sysdeps/mips/bits/endian.h: Likewise.
* sysdeps/mips/bits/setjmp.h: Likewise.
* sysdeps/mips/dec/bits/endian.h: Likewise.
* sysdeps/mips/mips64/bits/setjmp.h: Likewise.
* sysdeps/mips/mipsel/bits/endian.h: Likewise.
* sysdeps/mips/p40/bits/endian.h: Likewise.
* sysdeps/powerpc/bits/endian.h: Likewise.
* sysdeps/powerpc/bits/fenv.h: Likewise.
* sysdeps/powerpc/bits/setjmp.h: Likewise.
* sysdeps/sparc/sparc32/bits/endian.h: Likewise.
* sysdeps/sparc/sparc32/bits/setjmp.h: Likewise.
* sysdeps/sparc/sparc32/fpu/bits/fenv.h: Likewise.
* sysdeps/sparc/sparc64/bits/endian.h: Likewise.
* sysdeps/sparc/sparc64/fpu/bits/fenv.h: Likewise.
* sysdeps/unix/bsd/bits/dirent.h: Likewise.
* sysdeps/unix/bsd/bits/stat.h: Likewise.
* sysdeps/unix/bsd/bits/waitflags.h: Likewise.
* sysdeps/unix/bsd/bsd4.4/bits/dirent.h: Likewise.
* sysdeps/unix/bsd/osf/alpha/bits/stat.h: Likewise.
* sysdeps/unix/bsd/osf/bits/sigaction.h: Likewise.
* sysdeps/unix/bsd/sun/m68k/bits/sigcontext.h: Likewise.
* sysdeps/unix/bsd/sun/sparc/bits/sigcontext.h: Likewise.
* sysdeps/unix/bsd/sun/sunos4/bits/resource.h: Likewise.
* sysdeps/unix/bsd/sun/sunos4/bits/termios.h: Likewise.
* sysdeps/unix/bsd/sun/sunos4/bits/utsname.h: Likewise.
* sysdeps/unix/bsd/ultrix4/bits/utsname.h: Likewise.
* sysdeps/unix/bsd/ultrix4/mips/bits/sigcontext.h: Likewise.
* sysdeps/unix/common/bits/dirent.h: Likewise.
* sysdeps/unix/sysv/bits/dirent.h: Likewise.
* sysdeps/unix/sysv/bits/stat.h: Likewise.
* sysdeps/unix/sysv/bits/utmp.h: Likewise.
* sysdeps/unix/sysv/bits/utsname.h: Likewise.
* sysdeps/unix/sysv/irix4/bits/confname.h: Likewise.
* sysdeps/unix/sysv/irix4/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/ioctls.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/time.h: Likewise.
* sysdeps/unix/sysv/linux/bits/dirent.h: Likewise.
* sysdeps/unix/sysv/linux/bits/in.h: Likewise.
* sysdeps/unix/sysv/linux/bits/ioctl-types.h: Likewise.
* sysdeps/unix/sysv/linux/bits/ioctls.h: Likewise.
* sysdeps/unix/sysv/linux/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/bits/msq.h: Likewise.
* sysdeps/unix/sysv/linux/bits/poll.h: Likewise.
* sysdeps/unix/sysv/linux/bits/resource.h: Likewise.
* sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
* sysdeps/unix/sysv/linux/bits/sem.h: Likewise.
* sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
* sysdeps/unix/sysv/linux/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/linux/bits/sigcontext.h: Likewise.
* sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
* sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/bits/statfs.h: Likewise.
* sysdeps/unix/sysv/linux/bits/termios.h: Likewise.
* sysdeps/unix/sysv/linux/bits/time.h: Likewise.
* sysdeps/unix/sysv/linux/bits/uio.h: Likewise.
* sysdeps/unix/sysv/linux/bits/utsname.h: Likewise.
* sysdeps/unix/sysv/linux/bits/waitflags.h: Likewise.
* sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/m68k/bits/poll.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/endian.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/poll.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/socket.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/statfs.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/time.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/ioctl-types.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/ioctls.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/poll.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/bits/setjmp.h: Likewise.
* sysdeps/unix/sysv/minix/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/sco3.2.4/bits/confname.h: Likewise.
* sysdeps/unix/sysv/sco3.2.4/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/sysv4/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/sysv4/bits/utsname.h: Likewise.
* sysdeps/unix/sysv/sysv4/bits/waitflags.h: Likewise.
* sysdeps/unix/sysv/sysv4/i386/bits/stat.h: Likewise.
* sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h: Likewise.
* sysdeps/unix/sysv/sysv4/solaris2/sparc/bits/sigcontext.h: Likewise.
* sysdeps/vax/bits/huge_val.h: Likewise.
* sysdeps/vax/bits/setjmp.h: Likewise.
* sysdeps/wordsize-32/bits/elfclass.h: Likewise.
* sysdeps/wordsize-64/bits/elfclass.h: Likewise.

1997-11-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>

* libio/stdio.h: Correct comment of sys_nerr/sys_errlist

1997-11-25 Paul Eggert <eggert@shade.twinsun.com>

* strftime.c (strftime):
No longer any need to undef or declare if emacs is defined.
(my_strftime): When checking a -1 returned by mktime, don't blow up
if localtime_r returns NULL.

1997-11-24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>

* README.template: Fix spelling.

1997-11-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>

* configure.in: Enhance --enable-add-ons description a wee bit.

1997-11-24 Andreas Jaeger <aj@arthur.rhein-neckar.de>

* glibcbug.in: Add more information of build environment and flags.

1997-11-23 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>

* sysdeps/posix/getcwd.c: Recognize EOF from readdir and translate
it into ENOENT.

1997-11-24 03:01 Ulrich Drepper <drepper@cygnus.com>

* elf/dl-support.c: Call __libc_init_secure to make sure
Expand Down
78 changes: 72 additions & 6 deletions FAQ
Expand Up @@ -109,6 +109,10 @@ please let me know.
I get
XXX: Symbol `_sys_errlist' has different size in shared object, consider re-linking
Why? What to do?''

[Q31] ``What's the problem with configure --enable-omitfp?''

[Q32] ``Why don't signals interrupt system calls anymore?''

~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
[Q1] ``What systems does the GNU C Library run on?''
Expand Down Expand Up @@ -351,9 +355,8 @@ incompatibilities:
* the `signal' function's behaviour corresponds to the BSD semantic and
not the SysV semantic as it was in libc-5. The interface on all GNU
systems shall be the same and BSD is the semantic of choice. To use
the SysV behaviour simply use `sysv_signal'. The major difference is
that the SysV implementation sets the SA_ONESHOT flag and so the handler
gets removed after the first call.
the SysV behaviour simply use `sysv_signal', or define _XOPEN_SOURCE.
See question 32 for details.


~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Expand Down Expand Up @@ -533,21 +536,23 @@ In this file you have to change a few things:

- remove all expression `%{...:-lgmon}'; there is no libgmon in glibc

- fix a minor bug by changing %{pipe:-} to %|


Things are getting a bit more complicated if you have GNU libc
installed in some other place than /usr, i.e., if you do not want to
use it instead of the old libc. In this case the needed startup files
and libraries are not found in the regular places. So the specs file
must tell the compiler and linker exactly what to use. Here is for
example the gcc-2.7.2 specs file when GNU libc is installed at
must tell the compiler and linker exactly what to use. Here is what
the gcc-2.7.2 specs file should look like when GNU libc is installed at
/usr:

-----------------------------------------------------------------------
*asm:
%{V} %{v:%{!V:-V}} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*}

*asm_final:
%{pipe:-}
%|

*cpp:
%{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} %{!m386:-D__i486__} %{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}
Expand Down Expand Up @@ -804,6 +809,66 @@ be possible that such a symbol size change slipped in though it must not
happen. So in case of doubt report such a warning message as a problem.


~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
[Q31] ``What's the problem with configure --enable-omitfp?''

{AJ} When configuring with --enable-omitfp the libraries are build
without frame pointers. Some compilers produce in this situation buggy
code and therefore we don't advise using it at the moment.

If you use --enable-omitfp, you're on your own. If you encounter
problems with a library that was build this way, I'll advise you to
rebuild the library without --enable-omitfp. If the problem vanishes
consider tracking the problem down and report it as compiler failure.

Since a library build with --enable-omitfp is undebuggable, a
debuggable library is also build - you can recognize it by the suffix
"_g" to the library names.

The compilation of this extra libraries and the compiler optimizations
slow down the build process and need more disk space.


~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
[Q32] ``Why don't signals interrupt system calls anymore?''

[A32] {ZW} By default GNU libc uses the BSD semantics for signal(),
unlike Linux libc 5 which used System V semantics. This is partially
for compatibility with other systems and partially because the BSD
semantics tend to make programming with signals easier.

There are three differences:

* BSD-style signals that occur in the middle of a system call do not
affect the system call; System V signals cause the system call to
fail and set errno to EINTR.

* BSD signal handlers remain installed once triggered. System V signal
handlers work only once, so one must reinstall them each time.

* A BSD signal is blocked during the execution of its handler. In other
words, a handler for SIGCHLD (for example) does not need to worry about
being interrupted by another SIGCHLD. It may, however, be interrrupted
by other signals.

There is general consensus that for `casual' programming with signals, the
BSD semantics are preferable. You don't need to worry about system calls
returning EINTR, and you don't need to worry about the race conditions
associated with one-shot signal handlers.

If you are porting an old program that relies on the old semantics, you can
quickly fix the problem by changing signal() to sysv_signal() throughout.
Alternatively, define _XOPEN_SOURCE before including <signal.h>.

For new programs, the sigaction() function allows you to specify precisely
how you want your signals to behave. All three differences listed above are
individually switchable on a per-signal basis with this function.

If all you want is for one specific signal to cause system calls to fail
and return EINTR (for example, to implement a timeout) you can do this with
siginterrupt().


~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~

Answers were given by:
Expand All @@ -815,6 +880,7 @@ Answers were given by:
{EY} Eric Youngdale, <eric@andante.jic.com>
{PB} Phil Blundell, <Philip.Blundell@pobox.com>
{MK} Mark Kettenis, <kettenis@phys.uva.nl>
{ZW} Zack Weinberg, <zack@rabi.phys.columbia.edu>

Local Variables:
mode:text
Expand Down
3 changes: 3 additions & 0 deletions Makefile
Expand Up @@ -334,6 +334,9 @@ FORCE:
rpm/%: subdir_distinfo
$(MAKE) $(PARALLELMFLAGS) -C $(@D) subdirs='$(subdirs)' $(@F)

iconvdata/%:
$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)

# This is a special goal for people making binary distributions. Normally
# everybody uses the DES based crypt library but for the distribution we
# need the only-MD5 based one as well.
Expand Down

0 comments on commit f4017d2

Please sign in to comment.