Go to file
Peter Wemm 32e479705a This is kind of a hack, but it should work. Currently, world is broken
because libc/rpc/key_call.c references uname(), and ps/print.c also
defines uname(), and ps is linked statically.  This leads to a symbol
clash.  The userland uname(3) kinda sucked anyway as the hostname
etc was too short.  And since the libc rpc interface now uses
the utsname.nodename which gets truncated, I was tempted into doing
something about it.  Create a new userland uname function, called
__xuname() which takes an extra argument that allows you to change
the size of the fields.  uname() becomes a static inline function
in sys/utsname.h that passes the extra argument in.  struct utsname
has its field members expanded by default now in userland.
We still provide a 'uname' externally linkable function for things
that either think that they ``know'' the utsname format and assume
32 character strings and bypass the include file, or objects that
are linked against old libcs.  ie: just about every plausible
case that I can think of is covered.  Should we ever change the
default lengths again, a libc major bump should not be required
as the size is now passed to the function.

XXX the uname(2) in the kernel is for FreeBSD 1.1 binary compatability!
All the uname(3) functions that are exported to userland are actually
implemented in libc with sysctl.  uname(1) uses sysctl directly and
does not call uname(3).

PR:		bin/4688
2001-03-24 04:40:49 +00:00
bin mdoc(7) police: fix markup and some spelling. 2001-03-23 08:14:27 +00:00
contrib This commit was generated by cvs2svn to compensate for changes in r74722, 2001-03-24 01:58:31 +00:00
crypto Suggested by kris, OpenSSH shall have a version designated to note that 2001-03-20 02:11:25 +00:00
etc Install /etc/primes. 2001-03-24 00:33:05 +00:00
games Lets spell the guys name correctly: s/Avogardo/Avogadro/ 2001-03-23 22:42:16 +00:00
gnu Fix -I getopt form 2001-03-23 12:39:29 +00:00
include IPv4 address is not unsigned int. This change introduces in_addr_t. 2001-03-23 18:59:31 +00:00
kerberos5 *Sigh*. What I did without this, I have no idea. 2001-03-05 11:18:35 +00:00
kerberosIV add strcollect.c to SRCS (new file in 1.0.5) 2000-12-29 23:44:24 +00:00
lib This is kind of a hack, but it should work. Currently, world is broken 2001-03-24 04:40:49 +00:00
libexec change callrpc() from taking "char *" args, I'm quite sure they really meant 2001-03-23 16:14:49 +00:00
release The early compat dists only make sense on the i386 2001-03-23 21:43:47 +00:00
sbin Respect style(9), one must not include both <sys/types.h> and 2001-03-22 13:19:32 +00:00
secure disable SRA 2001-03-23 19:38:21 +00:00
share - DECLARE_MODULE needs SYSINIT -> include sys/kernel.h 2001-03-23 14:05:05 +00:00
sys This is kind of a hack, but it should work. Currently, world is broken 2001-03-24 04:40:49 +00:00
tools Preceed/preceeding are not english words. Use precede and preceding. 2001-02-18 10:43:53 +00:00
usr.bin Now that libfetch uses the high port range by default, add a -U option to 2001-03-24 00:32:11 +00:00
usr.sbin afterstep doesn't need an explicit xterm started for it either. 2001-03-24 03:17:35 +00:00
COPYRIGHT Update to add the July 22, 1999 addendum. 1999-09-05 21:33:47 +00:00
Makefile End words with a `.'. 2001-03-04 10:43:14 +00:00
Makefile.inc1 Enhancement to 1.99 -> 1.100. 2001-03-22 09:54:25 +00:00
Makefile.upgrade $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
README Slightly improve the description of "crypto". "DES" is a subset of 2000-08-31 17:59:01 +00:00
UPDATING Spell deprecated correctly (dufault) 2001-03-02 00:36:13 +00:00

This is the top level of the FreeBSD source directory.  This file
was last revised on:
$FreeBSD$

For copyright information, please see the file COPYRIGHT in this
directory (additional copyright information also exists for some
sources in this tree - please see the specific source directories for
more information).

The Makefile in this directory supports a number of targets for
building components (or all) of the FreeBSD source tree, the most
commonly used one being ``world'', which rebuilds and installs
everything in the FreeBSD system from the source tree except the
kernel, the kernel-modules and the contents of /etc.  The
``buildkernel'' and ``installkernel'' targets build and install
the kernel and the modules (see below).  Please see the top of
the Makefile in this directory for more information on the
standard build targets and compile-time flags.

Building a kernel is a somewhat more involved process, documentation
for which can be found at:
   http://www.freebsd.org/handbook/kernelconfig.html
And in the config(8) man page.
Note: If you want to build and install the kernel with the
``buildkernel'' and ``installkernel'' targets, you have to build
world before.  More information is available in the handbook.

The sample kernel configuration files reside in the sys/i386/conf
sub-directory (assuming that you've installed the kernel sources), the
file named GENERIC being the one used to build your initial installation
kernel.  The file NOTES contains entries and documentation for all possible
devices, not just those commonly used.  It is the successor of the ancient
LINT file, but in contrast to LINT, it is not buildable as a kernel but a
pure reference and documentation file.


Source Roadmap:
---------------
bin		System/User commands.

contrib		Packages contributed by 3rd parties.

crypto		Cryptography stuff (see crypto/README).

etc		Template files for /etc

games		Amusements.

gnu		Various commands and libraries under the GNU Public License.
		Please see gnu/COPYING* for more information.

include		System include files.

kerberosIV	Kerberos package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

sbin		System commands.

secure		Cryptographic libraries and commands.

share		Shared resources.

sys		Kernel sources.

tools		Utilities for regression testing and miscellaneous tasks.

usr.bin		User commands.

usr.sbin	System administration commands.


For information on synchronizing your source tree with one or more of
the FreeBSD Project's development branches, please see:

  http://www.freebsd.org/handbook/synching.html