Tech Insider					     Technology and Trends


			      USENET Archives

Subject: Complete library source available
Date: Mon, 16 Dec 1991 19:07:47 +0200
From: Linus Benedict Torvalds <torvalds@cc.helsinki.fi>
To: Linux-activists@joker.cs.hut.fi

Well, I just put out the full source to my library for ftp. Parts of it
have been available before, but the package "library.tar.Z" should
include everything.

The library is meant to be installed in /usr/src/lib, but use your own
directory structure if you find this impractical. It is further
subdivided into more or less (mostly less) logical subdirectories:
partly similar to minix, partly depending on where I got the source, and
partly just on how it happened to be written :-)

There are 4 major sources of library functions and they all have
slightly different copyrights, but all should be freely distributable
within the linux copyright rules:

	- Earl Chews estdio (estdio)
	- The GNU library (malloc, pwd, grp and misc)
	- me (dirent, unistd, misc)
	- some PD minix libs (at least termcap)

I haven't really ported as much of the GNU libc.a as I would want, as
it's not very interesting. Things that should still be done:

	- time functions. I haven't got the slightest idea about how
	  they work, so the result is accordingly. GNU seems the best
	  bet to find correct functions.

	- unistd will be slightly changed with the advent of job
	  control. I am assuming that tytso will send diffs, and that
	  some programs will have to be recompiled to correctly work
	  with the new signals (among them gcc).

	- locale etc. Again gnu seems the best bet. Happily nobody uses
	  locale anyway, so this isn't that much of a problem :-)

Additionally I have also sent out a new include.tar.Z - it's mostly
bug-corrections and a few new files that the GNU library functions want.

Recompiling the library is easy: go to /usr/src/lib, and then do a make
in all the subdirectories.  The result should be a Libc.a file in
/usr/src/lib.  Run ranlib on it (ie "ranlib Libc.a"), and you have a new
library.  Just move it to the library directory (usually /usr/local/lib,
but it depends on how you have installed gcc).  It might be a good idea
to save the old libc.a, in case something has gone wrong. 

Note that you probably won't really need to compile your own library:
this one is a bit better than the original, but the changes shouldn't
show up in normal circumstances.  Recompilation of the library is
usually only needed if you change the kernel heavily (new system calls
etc) or if you find better routines for something.  This release is more
for the "completeness" of source availability for linux. 

		Linus

			      USENET Archives


The materials and information included in this website may only be used
for purposes such as criticism, review, private study, scholarship, or 
research.


Electronic mail:			       WorldWideWeb:
   tech-insider@outlook.com			  http://tech-insider.org/