121173SjkhThis is the top level of the FreeBSD source directory.  This file
250479Speterwas last revised on:
350479Speter$FreeBSD$
421173Sjkh
521173SjkhFor copyright information, please see the file COPYRIGHT in this
621173Sjkhdirectory (additional copyright information also exists for some
721173Sjkhsources in this tree - please see the specific source directories for
821173Sjkhmore information).
921173Sjkh
1021173SjkhThe Makefile in this directory supports a number of targets for
1121173Sjkhbuilding components (or all) of the FreeBSD source tree, the most
1221173Sjkhcommonly used one being ``world'', which rebuilds and installs
1321173Sjkheverything in the FreeBSD system from the source tree except the
14159363Strhodeskernel, the kernel-modules and the contents of /etc.  The ``world''
15159363Strhodestarget should only be used in cases where the source tree has not
16159363Strhodeschanged from the currently running version.  See:
17159363Strhodeshttp://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html
18159363Strhodesfor more information, including setting make(1) variables.
19159363Strhodes
20159363StrhodesThe ``buildkernel'' and ``installkernel'' targets build and install
2164057Salexthe kernel and the modules (see below).  Please see the top of
2264057Salexthe Makefile in this directory for more information on the
2364057Salexstandard build targets and compile-time flags.
2421173Sjkh
2564057SalexBuilding a kernel is a somewhat more involved process, documentation
2664057Salexfor which can be found at:
27100446Swosch   http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html
2821369SmaxAnd in the config(8) man page.
2964057SalexNote: If you want to build and install the kernel with the
3093217Sru``buildkernel'' and ``installkernel'' targets, you might need to build
3164057Salexworld before.  More information is available in the handbook.
3221173Sjkh
3393217SruThe sample kernel configuration files reside in the sys/<arch>/conf
3421173Sjkhsub-directory (assuming that you've installed the kernel sources), the
3521173Sjkhfile named GENERIC being the one used to build your initial installation
3664047Salexkernel.  The file NOTES contains entries and documentation for all possible
3764047Salexdevices, not just those commonly used.  It is the successor of the ancient
3864047SalexLINT file, but in contrast to LINT, it is not buildable as a kernel but a
3964047Salexpure reference and documentation file.
4021173Sjkh
4121173Sjkh
4221173SjkhSource Roadmap:
4321173Sjkh---------------
4493217Srubin		System/user commands.
4521173Sjkh
46215293Sjoelcddl		Various commands and libraries under the Common Development
47215293Sjoel		and Distribution License.
48215293Sjoel
4921173Sjkhcontrib		Packages contributed by 3rd parties.
5021173Sjkh
5164047Salexcrypto		Cryptography stuff (see crypto/README).
5221173Sjkh
5393217Sruetc		Template files for /etc.
5421173Sjkh
5521173Sjkhgames		Amusements.
5621173Sjkh
5721173Sjkhgnu		Various commands and libraries under the GNU Public License.
5821173Sjkh		Please see gnu/COPYING* for more information.
5921173Sjkh
6021173Sjkhinclude		System include files.
6121173Sjkh
6293217Srukerberos5	Kerberos5 (Heimdal) package.
6337283Sjkh
6421173Sjkhlib		System libraries.
6521173Sjkh
6621173Sjkhlibexec		System daemons.
6721173Sjkh
6821173Sjkhrelease		Release building Makefile & associated tools.
6921173Sjkh
70156171Scerirescue		Build system for statically linked /rescue utilities.
71156171Sceri
7221173Sjkhsbin		System commands.
7321173Sjkh
7465298Smarkmsecure		Cryptographic libraries and commands.
7521173Sjkh
7621173Sjkhshare		Shared resources.
7721173Sjkh
7821173Sjkhsys		Kernel sources.
7921173Sjkh
8021173Sjkhtools		Utilities for regression testing and miscellaneous tasks.
8121173Sjkh
8221173Sjkhusr.bin		User commands.
8321173Sjkh
8421173Sjkhusr.sbin	System administration commands.
8521173Sjkh
8621173Sjkh
8721173SjkhFor information on synchronizing your source tree with one or more of
8821173Sjkhthe FreeBSD Project's development branches, please see:
8921173Sjkh
90100446Swosch  http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/synching.html
91