Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src Synch with HEAD



details:   https://anonhg.NetBSD.org/src/rev/45d4c9c85ff6
branches:  trunk
changeset: 361518:45d4c9c85ff6
user:      pgoyette <pgoyette%NetBSD.org@localhost>
date:      Wed May 02 07:19:58 2018 +0000

description:
Synch with HEAD

diffstat:

 BUILDING     |  1115 --------------------------
 Makefile     |   531 ------------
 Makefile.inc |    16 -
 UPDATING     |   852 --------------------
 build.sh     |  2399 ----------------------------------------------------------
 5 files changed, 0 insertions(+), 4913 deletions(-)

diffs (truncated from 4933 to 300 lines):

diff -r 88a58c10dc3b -r 45d4c9c85ff6 BUILDING
--- a/BUILDING  Wed May 02 00:14:56 2018 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,1115 +0,0 @@
-BUILDING(8)                 System Manager's Manual                BUILDING(8)
-
-NAME
-     BUILDING - Procedure for building NetBSD from source code.
-
-REQUIREMENTS
-     NetBSD is designed to be buildable on most POSIX-compliant host systems.
-     The basic build procedure is the same whether compiling natively (on the
-     same NetBSD architecture) or cross compiling (on another architecture or
-     OS).
-
-     This source tree contains a special subtree, "tools", which uses the host
-     system to create a build toolchain for the target architecture.  The host
-     system must have at least C and C++ compilers in order to create the
-     toolchain (make is not required); all other tools are created as part of
-     the NetBSD build process.  (See the environment variables section below
-     if you need to override or manually select your compilers.)
-
-FILES
-   Source tree layout
-     doc/BUILDING.mdoc
-                    This document (in -mdoc troff format; the original copy).
-
-     BUILDING       This document (in plaintext).
-
-     tools/compat/README
-                    Special notes for cross-hosting a NetBSD build on non-
-                    NetBSD platforms.
-
-     Makefile       The main Makefile for NetBSD; should only be run for
-                    native builds with an appropriately up-to-date version of
-                    NetBSD make(1).  Intended for expert use with knowlege of
-                    its shortcomings, it has been superseded by the build.sh
-                    shell script as the recommended means for building NetBSD.
-
-     UPDATING       Special notes for updating from an earlier revision of
-                    NetBSD.  It is important to read this file before every
-                    build of an updated source tree.
-
-     build.sh       Bourne-compatible shell script used for building the host
-                    build tools and the NetBSD system from scratch.  Can be
-                    used for both native and cross builds, and should be used
-                    instead of make(1) as it performs additional checks to
-                    prevent common issues going undetected, such as building
-                    with an outdated version of make(1).
-
-     crypto/dist/, dist/, gnu/dist/
-                    Sources imported verbatim from third parties, without
-                    mangling the existing build structure.  Other source trees
-                    in bin through usr.sbin use the NetBSD make(1) "reachover"
-                    Makefile semantics when building these programs for a
-                    native host.
-
-     external, sys/external
-                    Sources and build infrastructure for components imported
-                    (mostly) unchanged from upstream maintainers, sorted by
-                    applicable license.  This is (slowly) replacing the
-                    crypto/dist, dist, and gnu/dist directories.
-
-     distrib/, etc/
-                    Sources for items used when making a full release
-                    snapshot, such as files installed in DESTDIR/etc on the
-                    destination system, boot media, and release notes.
-
-     tests/, regress/
-                    Regression test harness.  Can be cross-compiled, but only
-                    run natively.  tests/ uses the atf(7) test framework;
-                    regress/ contains older tests that have not yet been
-                    migrated to atf(7).
-
-     sys/           NetBSD kernel sources.
-
-     tools/         "Reachover" build structure for the host build tools.
-                    This has a special method of determining out-of-date
-                    status.
-
-     bin/ ... usr.sbin/
-                    Sources to the NetBSD userland (non-kernel) programs.  If
-                    any of these directories are missing, they will be skipped
-                    during the build.
-
-     external/mit/xorg/
-                    "Reachover" build structure for modular Xorg; the source
-                    is in X11SRCDIR.
-
-     extsrc/        "Reachover" build structure for externally added programs
-                    and libraries; the source is in EXTSRCSRCDIR.
-
-   Build tree layout
-     The NetBSD build tree is described in hier(7), and the release layout is
-     described in release(7).
-
-CONFIGURATION
-   Environment variables
-     Several environment variables control the behaviour of NetBSD builds.
-
-     HOST_SH           Path name to a shell available on the host system and
-                       suitable for use during the build.  The NetBSD build
-                       system requires a modern Bourne-like shell with POSIX-
-                       compliant features, and also requires support for the
-                       "local" keyword to declare local variables in shell
-                       functions (which is a widely-implemented but non-
-                       standardised feature).
-
-                       Depending on the host system, a suitable shell may be
-                       /bin/sh, /usr/xpg4/bin/sh, /bin/ksh (provided it is a
-                       variant of ksh that supports the "local" keyword, such
-                       as ksh88, but not ksh93), or /usr/local/bin/bash.
-
-                       Most parts of the build require HOST_SH to be an
-                       absolute path; however, build.sh allows it to be a
-                       simple command name, which will be converted to an
-                       absolute path by searching the PATH.
-
-     HOST_CC           Path name to C compiler used to create the toolchain.
-
-     HOST_CXX          Path name to C++ compiler used to create the toolchain.
-
-     MACHINE           Machine type, e.g., "macppc".
-
-     MACHINE_ARCH      Machine architecture, e.g., "powerpc".
-
-     MAKE              Path name to invoke make(1) as.
-
-     MAKEFLAGS         Flags to invoke make(1) with.  Note that build.sh
-                       ignores the value of MAKEFLAGS passed in the
-                       environment, but allows MAKEFLAGS to be set via the -V
-                       option.
-
-     MAKEOBJDIR        Directory to use as the .OBJDIR for the current
-                       directory.  The value is subjected to variable
-                       expansion by make(1).  Typical usage is to set this
-                       variable to a value involving the use of
-                       `${.CURDIR:S...}' or `${.CURDIR:C...}', to derive the
-                       value of .OBJDIR from the value of .CURDIR.  Used only
-                       if MAKEOBJDIRPREFIX is not defined.  MAKEOBJDIR can be
-                       provided only in the environment or via the -O flag of
-                       build.sh; it cannot usefully be set inside a Makefile,
-                       including mk.conf or ${MAKECONF}.
-
-     MAKEOBJDIRPREFIX  Top level directory of the object directory tree.  The
-                       value is subjected to variable expansion by make(1).
-                       build.sh will create the ${MAKEOBJDIRPREFIX} directory
-                       if necessary, but if make(1) is used without build.sh,
-                       then rules in <bsd.obj.mk> will abort the build if the
-                       ${MAKEOBJDIRPREFIX} directory does not exist.  If the
-                       value is defined and valid, then
-                       ${MAKEOBJDIRPREFIX}/${.CURDIR} is used as the .OBJDIR
-                       for the current directory.  The current directory may
-                       be read only.  MAKEOBJDIRPREFIX can be provided only in
-                       the environment or via the -M flag of build.sh; it
-                       cannot usefully be set inside a Makefile, including
-                       mk.conf or ${MAKECONF}.
-
-   "make" variables
-     Several variables control the behavior of NetBSD builds.  Unless
-     otherwise specified, these variables may be set in either the process
-     environment or the make(1) configuration file specified by MAKECONF.
-
-     BUILDID     Identifier for the build.  If set, this should be a short
-                 string that is suitable for use as part of a file or
-                 directory name.  The identifier will be appended to object
-                 directory names, and can be consulted in the make(1)
-                 configuration file in order to set additional build
-                 parameters, such as compiler flags.  It will also be used as
-                 part of the kernel version string, which can be printed by
-                 "uname -v".
-
-                 Default: Unset.
-
-     BUILDINFO   This may be a multi-line string containing information about
-                 the build.  This will appear in DESTDIR/etc/release, and it
-                 will be stored in the buildinfo variable in any kernels that
-                 are built.  When such kernels are booted, the sysctl(7)
-                 kern.buildinfo variable will report this value.  The string
-                 may contain backslash escape sequences, such as "\\"
-                 (representing a backslash character) and "\n" (representing a
-                 newline).
-
-                 Default: Unset.
-
-     BUILDSEED   GCC uses random numbers when compiling C++ code.  This
-                 variable seeds the gcc random number generator using the
-                 -frandom-seed flag with this value.  By default, it is set to
-                 NetBSD-(majorversion).  Using a fixed value causes C++
-                 binaries to be the same when built from the same sources,
-                 resulting in identical (reproducible) builds.  Additional
-                 information is available in the GCC documentation of
-                 -frandom-seed.
-
-     DESTDIR     Directory to contain the built NetBSD system.  If set,
-                 special options are passed to the compilation tools to
-                 prevent their default use of the host system's /usr/include,
-                 /usr/lib, and so forth.  This pathname must be an absolute
-                 path, and should not end with a slash (/) character.  (For
-                 installation into the system's root directory, set DESTDIR to
-                 an empty string, not to "/").  The directory must reside on a
-                 file system which supports long file names and hard links.
-
-                 Default: Empty string if USETOOLS is "yes"; unset otherwise.
-
-                 Note: build.sh will provide a default of destdir.MACHINE (in
-                 the top-level .OBJDIR) unless run in `expert' mode.
-
-     EXTSRCSRCDIR
-                 Directory containing sources of externally added programs and
-                 libraries.  If specified, must be an absolute path.
-
-                 Default: NETBSDRCDIR/../extsrc, if that exists; otherwise
-                 /usr/extsrc.
-
-     MAKECONF    The name of the make(1) configuration file.  Only settable in
-                 the process environment.
-
-                 Default: "/etc/mk.conf"
-
-     MAKEVERBOSE
-                 Level of verbosity of status messages.  Supported values:
-
-                 0    No descriptive messages or commands executed by make(1)
-                      are shown.
-
-                 1    Brief messages are shown describing what is being done,
-                      but the actual commands executed by make(1) are not
-                      displayed.
-
-                 2    Descriptive messages are shown as above (prefixed with a
-                      `#'), and ordinary commands performed by make(1) are
-                      displayed.
-
-                 3    In addition to the above, all commands performed by
-                      make(1) are displayed, even if they would ordinarily
-                      have been hidden through use of the "@" prefix in the
-                      relevant makefile.
-
-                 4    In addition to the above, commands executed by make(1)
-                      are traced through use of the sh(1) "-x" flag.
-
-                 Default: 2
-
-     MKCATPAGES  Can be set to "yes" or "no".  Indicates whether preformatted
-                 plaintext manual pages will be created during a build.
-
-                 Default: "no"
-
-     MKCROSSGDB  Can be set to "yes" or "no".  Create a cross-gdb as a host
-                 tool.
-
-                 Default: "no"
-
-     MKDEBUG     Can be set to "yes" or "no".  Indicates whether debug
-                 information should be generated for all userland binaries
-                 compiled.  The result is collected as an additional debug.tgz
-                 and xdebug.tgz set and installed in /usr/libdata/debug.
-
-                 Default: "no"
-
-     MKDEBUGLIB  Can be set to "yes" or "no".  Indicates whether debug
-                 information (see MKDEBUG) should also be generated for all
-                 libraries build.
-
-                 Default: "no"
-
-     MKDOC       Can be set to "yes" or "no".  Indicates whether system
-                 documentation destined for DESTDIR/usr/share/doc will be
-                 installed during a build.
-
-                 Default: "yes"
-
-     MKEXTSRC    Can be set to "yes" or "no".  Indicates whether extsrc is
-                 built from EXTSRCSRCDIR.
-
-                 Default: "no"
-
-     MKHTML      Can be set to "yes" or "no".  Indicates whether preformatted
-                 HTML manual pages will be built and installed
-
-                 Default: "yes"
-
-     MKHOSTOBJ   Can be set to "yes" or "no".  If set to "yes", then for
-                 programs intended to be run on the compile host, the name,
-                 release, and architecture of the host operating system will
-                 be suffixed to the name of the object directory created by
-                 "make obj".  (This allows multiple host systems to compile
-                 NetBSD for a single target.)  If set to "no", then programs
-                 built to be run on the compile host will use the same object
-                 directory names as programs built to be run on the target.
-
-                 Default: "no"
-
-     MKINFO      Can be set to "yes" or "no".  Indicates whether GNU Info
-                 files, used for the documentation for most of the compilation
-                 tools, will be created and installed during a build.
-
-                 Default: "yes"
-



Home | Main Index | Thread Index | Old Index