head	1.4;
access;
symbols
	libc-5-4-46:1.4
	libc-5-4-45:1.4
	libc-5-4-44:1.4
	libc-5-4-43:1.4
	libc-5-4-42:1.3
	libc-5-4-41:1.3
	libc-5-4-40:1.3
	libc-5-4-39:1.3
	libc-5-4-38:1.3
	libc-5-4-37:1.3
	libc-5-4-36:1.3
	libc-5-4-35:1.3
	libc-5-4-34:1.3
	libc-5-4-33:1.3
	libc-5-4-32:1.3
	libc-5-4-31:1.3
	libc-5-4-30:1.3
	libc-5-4-29:1.3
	libc-5-4-28:1.3
	libc-5-4-27:1.3
	libc-5-4-26:1.3
	libc-5-4-25:1.3
	libc-5-4-24:1.3
	libc-5-4-23:1.3
	libc-5-4-22:1.3
	libc-5-4-21:1.3
	libc-5-4-20:1.3
	libc-5-4-19:1.3
	libc-5-4-18:1.3
	libc-5-4-17-public:1.3
	libc-5-4-17:1.3
	libc-5-4-16:1.3
	libc-5-4-15:1.3
	libc-5-4-14:1.3
	libc-5-4-13:1.2;
locks; strict;
comment	@# @;


1.4
date	98.01.12.02.53.22;	author hjl;	state Exp;
branches;
next	1.3;

1.3
date	96.12.01.19.43.24;	author hjl;	state Exp;
branches;
next	1.2;

1.2
date	96.11.19.16.06.03;	author hjl;	state Exp;
branches;
next	1.1;

1.1
date	96.11.17.10.14.11;	author hjl;	state Exp;
branches;
next	;


desc
@@


1.4
log
@Update for libc 5.4.43
@
text
@The GNU C library version 2 has been released to public. It is used for
Linux as the C library version 6. It can be found at

ftp://prep.ai.mit.edu/pub/gnu

and its mirror sites. It compiles right out of box for Linux and
suppors more architectures in addition to x86 and m68k. There are
new Linux packages which is based on glibc 2, aka libc 6. You
can get more information from

http://www.debian.org
http://www.redhat.com

I will continue to support libc 5, mainly for bug fixes, as long as
necessary. But glibc 2, aka, libc 6 is recommended. There will be
no new features in libc 5.

H.J. Lu
hjl@@gnu.org
01/11/98
@


1.3
log
@Update for libc 5.4.14.
@
text
@d1 2
a2 6
I am working on the Linux C library 6 based on the GNU C library 2.
As I expected, I have encountered many problems. I want to share
some ideas with the Linux/GNU C library developers from the viewpoint
of someone who has been maintaining a production C library for many
years now. I am open to any suggestions although I believe I am
right most of time. I have learned it the hard way :-(.
d4 1
a4 77
1. From the very beginning of the GNU C library development, it assumes
   that it is a replacement of an existing library. It has reflected
   in many aspects of the the GNU C library. Although it has improved
   A LOT, it still leaves many to be desired.

   a. With shared libraries and dynamic linker, it has become very
      tricky to install library binaries. We have to assume any
      existing shared libraries and dynamic linker may run forever
      until reboot which may be out of our control. Although libc.so
      installation is ok, the dynamic linker doesn't have a unique
      version number for each release. It will be a problem for binary
      releases. We may fix it by adding a minor version number for
      the dynamic linker and making a symbolic link for the major
      version number. We also need to provide a way to update the
      symbolic link for binary releases.

2. There are still many namespace pollutions in glibc. They should be
   fixed.

3. I still haven't figured out what Mcrt1.o is used for and why we
   need to install it.

For the Linux C library 6, I want the followings:

1. It should be able to be installed as a native library under Linux.
   It should be 100% compliant with the Linux filesystem standard.

2. It should be as close to 100% compatible at the source level
   with libc 5 as possible.

3. I'd also like to be able to generate consistent binary releases
   for Linux/x86 or any other architectures Linux supports. 

4. I want to add the missing ones which are in libc 5.

5. I want to get rid of <rpcsvc/rnusers.h> which doesn't exist under
   Solaris 2.5. <rpcsvc/rusers.h> in libc 5 covers both the old
   <rpcsvc/rnusers.h> and <rpcsvc/rusers.h> in Solaris 2.5. It also
   has one less bug. I want <rpcsvc/mount.x> in libc 5 which has a
   new version of mount protocol.

6. I want a different malloc as an option under Linux, which will
   be as good as the one from Doug Lea in libc 5 and also thread-safe.
   I will use the new thread safe malloc from Wolfram Gloger
   <Wolfram.Gloger@@dent.med.uni-muenchen.de>. I was told Wolfram's
   would be used in glibc 2 when it was ready. I am running the
   new malloc from Wolfram now. If it is not in glibc 2.0, I will
   release the Linux C library 6.0 with it.

Before I call glibc 2 as libc 6, I will try to build a complete Linux
system from source code myself with it. I am starting with a Debian
Linux system 1.1. I moved all libraries and header files related to
libc 5 under /usr/libc5. I left /lib alone. I tried to keep the same
relative directory structure in /usr/libc5. I added

/usr/libc5/lib
/usr/libc5/X11R6/lib/Xaw3d
/usr/libc5/local/lib
/usr/libc5/X11R6/lib
/usr/libc5/X11R5/lib
/usr/libc5/lib/mesa

to /etc/ld.so.conf so that all the existing binaries run just fine.
I am still not too sure how to deal the major version numbers for
different shared libraries. I added a 'g' to the major version numbers
in XFree86 3.2. I don't know how it will work out for other packages.

Then I installed the new libc. I make sure ld-linux.so.2 and libc.so.6
are in /lib. I changed /usr/lib/libc.so to reflect it.

I first compiled gcc, binutils and bin86 with the new libc. Using
them, I am building a whole Linux system from the source code. Until
I finish most of it, I won't call it libc 6. BTW, a Pentium Pro will
help me a lot achieve it :-). I hope I can afford a Pentium Pro and
a MB soon.

Thanks.
d6 11
d19 2
a20 2
hjl@@gnu.ai.mit.edu
11/27/96
@


1.2
log
@Update for libc 5.4.13.
@
text
@a23 9
   b. When you boot Linux, only the root partition is mounted. We have
      to put the dynamic linker, libc.so.6 or any other shared libraries
      used before all partitions are mounted have to be installed
      in /lib.

   c. How to install glibc under /usr for Linux is not properly treated.
      Also I am not sure if anyone has in touch with the Linux
      filesystem standard people for data file locations.

d41 1
a41 1
4. I want to add the missing ones which are in libc 5, like regexp.h.
d51 1
a51 2
   I am looking at 2 options right now, Doug's 64-bit version of his
   32-bit malloc which is in libc 5 and the new one from Wolfram Gloger
d53 3
a55 3
   would be used in glibc 2 when it was ready. I want to use Doug's
   64-bit malloc before Wolfram's is done to reduce possibilities
   of buggy applications linked with the shared C library.
d89 1
a89 1
12/17/96
@


1.1
log
@Add comments about libc 6.
@
text
@d29 2
a30 2
   c. How to install glibc under /usr for Linux is not properly
      treated. Also I am not if anyone has in touch with the Linux
d55 2
a56 1
   has one less bug.
d58 1
a58 3
6. I want rx in libc 5 as an option for regex under Linux.

7. I want a different malloc as an option under Linux, which will
d60 11
a70 6
   I am looking at 2 options right now.

Before I release libc 6, I will try to build a complete Linux system
from source code myself with it. I am starting with a Debian Linux
system. I moved all libraries and header files related to libc 5
under /usr/libc5. I left /lib alone. I tried to keep the same
d86 1
a86 3
are in /lib. I made a symbolic link for libc.so

# ln -s /lib/libc.so.6 /usr/lib/libc.so
@

