FreeBSD src
Go to file
Bryan Drewery 3bed45ab81 META MODE: Rework [bootstrapped] tools PATH support.
- Support more of the toolchain from TOOLSDIR.
- This also improves 'make bootstrap-tools' to pass, for example,
  AS=/usr/bin/as to Makefile.inc1, which will tell cross-tools to use
  external toolchain support and avoid building things we won't be using
  in the build.
- Always set the PATH to contain the staged TOOLSDIR directories when
  not building the bootstrap targets.

  The previous version was only setting this at MAKE.LEVEL==0 and if the
  TOOLSDIR existed.  Both of these prevented using staged tools that were
  built during the build though as DIRDEPS with .host dependencies, such
  as the fix for needing usr.bin/localedef.host in r291311.
  This is not a common tool so we must build and use it during the build,
  and need to be prepared to change PATH as soon as it appears.

  This should also fix the issue of host dependencies disappearing from
  Makefile.depend and then reappearing due to the start of the fresh build not
  having the directory yet, resulting in the tools that were built not actually
  being used.
- Only use LEGACY_TOOLS while building in Makefile.inc1.  After r291317
  and r291546 there is no need to add LEGACY_TOOLS into the PATH for
  the pseudo/targets/toolchain build.
- Because the pseudo/targets/toolchain will now build its own
  [clang-]tblgen, the special logic in clang.build.mk is no longer needed.
- LEGACY_TOOLS is no longer used outside of targets/pseudo/bootstrap-tools
  so is no longer passed into the environment in its build.

Sponsored by:	EMC / Isilon Storage Division
2015-12-01 05:19:02 +00:00
bin Update dependencies after r291406 added libelf to libkvm. 2015-12-01 05:18:48 +00:00
cddl Rename Makefile.inc1 to dtrace.test.mk to avoid clash with top-level Makefile.inc1. 2015-11-25 20:43:45 +00:00
contrib [wpa] use IFM_IEEE80211_ADHOC for now on FreeBSD for IBSS operation. 2015-11-26 17:28:40 +00:00
crypto r291198 inadvertantly reverted a local patch for the default location 2015-11-26 23:05:40 +00:00
etc Add support for the new "-manage-gids" option for the nfsuserd daemon 2015-11-30 22:29:11 +00:00
gnu Update dependencies after r291406 added libelf to libkvm. 2015-12-01 05:18:48 +00:00
include Stop building vers.c in include/ and only build the needed osreldate.h. 2015-11-25 19:10:59 +00:00
kerberos5 META MODE: Prefer INSTALL=tools/install.sh to lessen the need for xinstall.host. 2015-11-25 19:10:28 +00:00
lib META MODE: Rework [bootstrapped] tools PATH support. 2015-12-01 05:19:02 +00:00
libexec Update dependencies after r291406 added libelf to libkvm. 2015-12-01 05:18:48 +00:00
release Fix tmpfs(5) '/tmp' mount point. 2015-11-25 19:10:04 +00:00
rescue Fix the build after ifconfig was converted over to lib80211 in r291470 2015-11-30 16:34:13 +00:00
sbin Update dependencies after r291406 added libelf to libkvm. 2015-12-01 05:18:48 +00:00
secure META MODE: Prefer INSTALL=tools/install.sh to lessen the need for xinstall.host. 2015-11-25 19:10:28 +00:00
share META MODE: Rework [bootstrapped] tools PATH support. 2015-12-01 05:19:02 +00:00
sys Add initial support for RTL8152 USB Fast Ethernet. RTL8152 supports 2015-12-01 05:12:13 +00:00
targets META MODE: Rework [bootstrapped] tools PATH support. 2015-12-01 05:19:02 +00:00
tests Disable a couple of tests, perhaps temporarily, since they use private 2015-11-29 06:16:25 +00:00
tools add missing lib80211 include. 2015-11-30 09:02:28 +00:00
usr.bin Update dependencies after r291406 added libelf to libkvm. 2015-12-01 05:18:48 +00:00
usr.sbin Update dependencies after r291406 added libelf to libkvm. 2015-12-01 05:18:48 +00:00
.arcconfig Add repository.callsign, to help arcanist figure out what repo it's 2015-07-02 22:23:52 +00:00
.arclint phabricator related changes: 2015-04-20 20:33:22 +00:00
COPYRIGHT Bump copyright year. 2014-12-31 10:00:43 +00:00
LOCKS Explicitly require Security Officer's approval for kernel PRNG bits. 2013-09-17 14:19:05 +00:00
MAINTAINERS Move recently added entry above the "old" line. 2015-11-17 19:03:55 +00:00
Makefile Rename META_MODE option to DIRDEPS_BUILD 2015-11-14 03:24:48 +00:00
Makefile.inc1 Add support to libkvm for reading vmcores from other architectures. 2015-11-27 18:58:26 +00:00
ObsoleteFiles.inc colldef(1) and mklocale(1) reappeared in r291115. 2015-11-23 23:36:57 +00:00
README README: changes and fixups 2015-04-19 07:16:44 +00:00
UPDATING Document the __FreeBSD_version bump done for r291527 in UPDATING. 2015-11-30 22:46:34 +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.  See build(7)
and http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html
for more information, including setting make(1) variables.

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.  See build(7), config(8),
and http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html
for more information.

Note: If you want to build and install the kernel with the
`buildkernel` and `installkernel` targets, you might need to build
world before.  More information is available in the handbook.

The kernel configuration files reside in the sys/<arch>/conf
sub-directory.  GENERIC is the default configuration used in release builds.
NOTES contains entries and documentation for all possible
devices, not just those commonly used.


Source Roadmap:
---------------

bin		System/user commands.

cddl		Various commands and libraries under the Common Development
		and Distribution License.

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.

kerberos5	Kerberos5 (Heimdal) package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

rescue		Build system for statically linked /rescue utilities.

sbin		System commands.

secure		Cryptographic libraries and commands.

share		Shared resources.

sys		Kernel sources.

tests		Regression tests which can be run by Kyua.  See tests/README
		for additional information.

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/doc/en_US.ISO8859-1/books/handbook/synching.html