===============README PLEASE========================================
There are two new functions, setdomainname () and getdomainname ().
You need the new uname () in the kernel 0.99 pl9 + ALPHA diff or
0.99 pl 10 to use it. Linus will make them soon. If you use an older
kernel, as long as you don't compile any source codes which use
uname (), gethostname (), setdomainname () and getdomainname (), you
will be fine. The new uname () is located at a different address, see
<sys/syscall.h>. Old binaries which use uname () and gethostname ()
should work as before. Please be careful when you compile the Linux
C library yourself. I don's suggest you compile it yourself if
you don't have the kernel 0.99 pl 10 source installed and you
have no clue what you are doing. Please read ChangeLog and
./libc-linux/include for details.

The reason I do that is gcc 2.4.0 needs the Linux C library 4.4.
====================================================================

This is the release of the Linux C library 4.4. You have to
install the source code of 0.99 pl5 to use it since there are some
changes in kernel. You have to use 0.99 pl9 + ALPHA diff or 0.99 pl 10
kernel to use new [f]pathconf () since it uses f_namelen in struct
statfs as well as domainname support. You also need gcc 2.3.3 or above
to use it.


NOTE: I have put patch-2.0.12g8.diff.z, which uses the new pathconf ()
      in pub/linux/packages/GCC/patches. I am sure you will love it.
      It chooses the extension `#'/`~' or `.rej'/`.orig' at the run
      time depending on the filesystem on which the new file will be
      created.

You can get this package under pub/linux/packages/GCC from
tsx-11.mit.edu. The file names are inc-4.4.tar.z, libc-4.4.tar.z,
libc-4.3.3-4.4.tar.z, inc-4.3.3-4.4.tar.z, image-4.4.tar.z and
extra-4.4.tar.z. Also binutils.tar.z and binutils-1.9l.tar.z.

WARNING: PLEASE READ THEM. Read ChangeLog for details of the bug fixes
	 and changes.
 0)	Since some C++ header files are changed in the Linux C library
	4.4, please install libg++ 2.3 first and install libc 4.4 until
	libg++ 2.4 is released.
 1)	There is a change in ./libc-linux/sysdeps/linux/i386/__load.c.
	Please read the ChangeLog. Please check it out
 2)	All the stuff previously in /usr/etc/inet or /etc/inet must be
	in /etc now.
 3)	cfmakeraw () in ./libc-linux/posix/cfmakeraw.c is changed. If
	you have problem with any communication applications, like
	kermit and uucp, or something using cfmakeraw (), with the
	new libc.a, please check it out first.
 4)	getopt_long () is changed. I undefined GETOPT_COMPAT in
	./libc-linux/posix/getopt.c so that `+' cannot be used to
	introduce a long-named option, like `--' because this is not
	POSIX.2 compliant. As far as I know only those in
	binutils.tar.z use `+' instead of `--'. Please get new
	binutils.tar.z too. The source code, binutils-1.9l.tar.z, is in
	pub/linux/packages/GCC/src.
 5)	get the latest tools-2.x.tar.z from pub/linux/packages/GCC/src
	to fix the `+' bug.
 6)	in /libc-linux/misc/syslog.c, NUL is used as a message
	delimiter. syslogd has to be changed to separate each message
	from each other.
 7)	Please make sure there are no statfs.S statfs.S uname.S in
	src/libc-linux/sysdeps/linux. Please do

	cd src/libc-linux/sysdeps/linux
	rm fstatfs.S statfs.S uname.S

	since there are new fstatfs.c, statfs.c and uname.c.
 8)	This is an old one for libc 4.3.3. I included it here for you.
	If you have problems with df and mount after installing this
	release, please do:
	1. Get Rick Sladkey's mount 0.99.6. It is in mount-0.99.6.tar.Z
	   and utile-1.4.src.tar.z from sunsite or tsx-11.
	2. Remove any
		rdev > /dev/mtab
	from /etc/rc.
	3. List / partition in /etc/fstab.
	4. Add "mount -av" in /etc/rc or somewhere like that.
	5. Always provide a fs name in /etc/fstab.

	After rebooting, you will be fine.
 9)	The libg++ 2.3 doesn't compile out of box with gcc 2.4.0. I
	hope the libg++ 2.4 will be out soon.


This release is compressed with gzip 1.0.3.

The file list:

1. inc-4.4.tar.z

  The C/C++ header files for 4.4.

  cd /usr
  gzip -dc inc-4.4.tar.z | tar xvvof -

  The header files in inc-4.4.tar.z are not complete. You have to
  install the kernel source for the rest of the header files. Please
  get the version mentioned at the beginning of this release note.
  Suppose you install the kernel source at "/foo/bar/src",
  you should do as root

  mkdir -p /usr/include
  cd /usr/include
  ln -s /foo/bar/src/linux/include/asm .
  ln -s /foo/bar/src/linux/include/linux .

2. libc-4.4.tar.z

  Source code for 4.4.

  cd src
  gzip -dc libc-4.4.tar.z | tar xvvof -

3. libc-4.3.3-4.4.tar.z

  Change of the source code from 4.3.3 to 4.4. 

  cd src
  gzip -dc libc-4.3.3-4.4.tar.z | tar xvvof -

  Please do

  cd src/libc-linux/sysdeps/linux
  rm fstatfs.S statfs.S uname.S

  since there are new fstatfs.c, statfs.c and uname.c.

4. inc-4.3.3-4.4.tar.z

  Change of the header files from 4.3.3 to 4.4.

  cd /usr
  gzip -dc inc-4.3.3-4.4.tar.z | tar xvvof -

5. image-4.4.tar.z

  The static/stub libraries, shared image and crt0.o. To install
  it, as root do

  cd /tmp
  rm -rf ./lib ./usr
  gzip -dc image-4.4.tar.z | tar xvvof -
  cp -av ./lib ./usr /
  cd /lib
  ln -sf libc.so.4.4 libc.so.4
  ln -sf libm.so.4.4 libm.so.4

  If you have an early version of libc.so.4.4 installed, you may have
  to play with it, like

  cd /lib
  cp libc.so.4.4 /tmp/libc.so.4.4.old
  ln -sf /tmp/libc.so.4.4.old libc.so.4
  mv libc.so.4.4 old.libc.so.4.4

  before you unpack image-4.4.tar.z.

6. extra-4.4.tar.z

  libmcheck.a, libg.a, libc_p.a, libgmon.a and gcrt0.o. To install

  cd /
  gzip -dc extra-4.4.tar.z | tar xvvof -

7. ChangeLog

  Change log for the Linux C library.

Please fix the file permissions after you install it.


H.J.
hlu@eecs.wsu.edu
05/21/93
