[BACK]Return to BUILDING CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/BUILDING between version 1.106 and 1.115

version 1.106, 2014/05/21 13:12:19 version 1.115, 2014/11/13 08:42:35
Line 80  FILES
Line 80  FILES
      x11/           ``Reachover'' build structure for X11R6; the source is in       x11/           ``Reachover'' build structure for X11R6; the source is in
                     X11SRCDIR.                      X11SRCDIR.
   
        extsrc/        ``Reachover'' build structure for externally added
                       programs and libraries; the source is in EXTSRCSRCDIR.
   
    Build tree layout     Build tree layout
      The NetBSD build tree is described in hier(7), and the release layout is       The NetBSD build tree is described in hier(7), and the release layout is
      described in release(7).       described in release(7).
Line 151  CONFIGURATION
Line 154  CONFIGURATION
      otherwise specified, these variables may be set in either the process       otherwise specified, these variables may be set in either the process
      environment or the make(1) configuration file specified by MAKECONF.       environment or the make(1) configuration file specified by MAKECONF.
   
      BUILDID     Identifier for the build.  The identifier will be appended to       BUILDID     Identifier for the build.  If set, this should be a short
                  object directory names, and can be consulted in the make(1)                   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                   configuration file in order to set additional build
                  parameters, such as compiler flags.                   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       BUILDSEED   GCC uses random numbers when compiling C++ code.  This
                  variable seeds the gcc random number generator using the                   variable seeds the gcc random number generator using the
Line 180  CONFIGURATION
Line 200  CONFIGURATION
                  Note: build.sh will provide a default of destdir.MACHINE (in                   Note: build.sh will provide a default of destdir.MACHINE (in
                  the top-level .OBJDIR) unless run in `expert' mode.                   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       MAKECONF    The name of the make(1) configuration file.  Only settable in
                  the process environment.                   the process environment.
   
Line 247  CONFIGURATION
Line 274  CONFIGURATION
   
                  Default: ``yes''                   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       MKHTML      Can be set to ``yes'' or ``no''.  Indicates whether
                  preformatted HTML manual pages will be built and installed                   preformatted HTML manual pages will be built and installed
   
Line 615  BUILDING
Line 647  BUILDING
                    set (see above).                     set (see above).
   
      iso-image     Create a NetBSD installation CD-ROM image in the       iso-image     Create a NetBSD installation CD-ROM image in the
                    RELEASEDIR/iso directory.  The CD-ROM file system will have                     RELEASEDIR/images directory.  The CD-ROM file system will
                    a layout as described in release(7).                     have a layout as described in release(7).
   
                    For most machine types, the CD-ROM will be bootable, and                     For most machine types, the CD-ROM will be bootable, and
                    will automatically run the sysinst(8) menu-based                     will automatically run the sysinst(8) menu-based
Line 632  BUILDING
Line 664  BUILDING
                    the RELEASEDIR/RELEASEMACHINEDIR/installation/cdrom                     the RELEASEDIR/RELEASEMACHINEDIR/installation/cdrom
                    directory by ``make release''.  These smaller images                     directory by ``make release''.  These smaller images
                    usually contain the same tools as the larger images in                     usually contain the same tools as the larger images in
                    RELEASEDIR/iso, but do not contain additional content such                     RELEASEDIR/images, but do not contain additional content
                    as the distribution sets.                     such as the distribution sets.
   
                    Note that the mac68k port still uses an older method of                     Note that the mac68k port still uses an older method of
                    creating CD-ROM images.  This requires the mkisofs(1)                     creating CD-ROM images.  This requires the mkisofs(1)
Line 642  BUILDING
Line 674  BUILDING
   
      iso-image-source       iso-image-source
                    Create a NetBSD installation CD-ROM image in the                     Create a NetBSD installation CD-ROM image in the
                    RELEASEDIR/iso directory.  The CD-ROM file system will have                     RELEASEDIR/images directory.  The CD-ROM file system will
                    a layout as described in release(7).  It will have top                     have a layout as described in release(7).  It will have top
                    level directories for the machine type and source.                     level directories for the machine type and source.
   
                    For most machine types, the CD-ROM will be bootable, and                     For most machine types, the CD-ROM will be bootable, and
Line 661  BUILDING
Line 693  BUILDING
                    the RELEASEDIR/RELEASEMACHINEDIR/installation/cdrom                     the RELEASEDIR/RELEASEMACHINEDIR/installation/cdrom
                    directory by ``make release''.  These smaller images                     directory by ``make release''.  These smaller images
                    usually contain the same tools as the larger images in                     usually contain the same tools as the larger images in
                    RELEASEDIR/iso, but do not contain additional content such                     RELEASEDIR/images, but do not contain additional content
                    as the distribution sets.                     such as the distribution sets.
   
                    Note that the mac68k port still uses an older method of                     Note that the mac68k port still uses an older method of
                    creating CD-ROM images.  This requires the mkisofs(1)                     creating CD-ROM images.  This requires the mkisofs(1)
Line 803  BUILDING
Line 835  BUILDING
                    symbol table and can be used for debugging (for example                     symbol table and can be used for debugging (for example
                    with a cross-gdb built by MKCROSSGDB).                     with a cross-gdb built by MKCROSSGDB).
   
        kernels       This command will build all kernels defined in port
                      specific release build procedure.
   
                      This command internally calls the kernel=kconf operation
                      for each found kernel configuration file.
   
      modules       This command will build kernel modules and install them       modules       This command will build kernel modules and install them
                    into DESTDIR.                     into DESTDIR.
   
Line 829  BUILDING
Line 867  BUILDING
   
      live-image    Perform ``make live-image''.       live-image    Perform ``make live-image''.
   
        list-arch     Prints a list of valid MACHINE and MACHINE_ARCH settings,
                      the default MACHINE_ARCH for each MACHINE, and aliases for
                      MACHINE/MACHINE_ARCH pairs, and then exits.  The -m or -a
                      options (or both) may be used to specify glob patterns that
                      will be used to narrow the list of results; for example,
                      ``build.sh -m 'evm*' -a '*arm*' list-arch'' will list all
                      known MACHINE/MACHINE_ARCH values in which either MACHINE
                      or ALIAS matches the pattern `evb*', and MACHINE_ARCH
                      matches the pattern `*arm*'.
   
      The following command line options alter the behaviour of the build.sh       The following command line options alter the behaviour of the build.sh
      operations described above:       operations described above:
   
      -a arch   Set the value of MACHINE_ARCH to arch.       -a arch   Set the value of MACHINE_ARCH to arch.  See the -m option for
                  more information.
   
      -B buildid       -B buildid
                Set the value of BUILDID to buildid.  This will also append the                 Set the value of BUILDID to buildid.  This will also append the
Line 891  BUILDING
Line 940  BUILDING
                relative path.  If the directory does not already exist,                 relative path.  If the directory does not already exist,
                build.sh will create it.                 build.sh will create it.
   
      -m mach   Set the value of MACHINE to mach, except in some special cases       -m mach   Set the value of MACHINE to mach, unless the mach argument is
                listed below.  This will also override any value of                 an alias that refers to a MACHINE/MACHINE_ARCH pair, in which
                MACHINE_ARCH in the process environment with a value deduced                 case both MACHINE and MACHINE_ARCH are set from the alias.
                from mach, unless -a is specified.  All cross builds require                 Such aliases are interpreted entirely by build.sh; they are not
                -m, but if unset on a NetBSD host, the host's value of MACHINE                 used by any other part of the build system.  The MACHINE_ARCH
                will be detected and used automatically.                 setting implied by mach will override any value of MACHINE_ARCH
                  in the process environment, but will not override a value set
                Some machines support multiple values for MACHINE_ARCH.  The                 by the -a option.  All cross builds require -m, but if unset on
                following special cases for the mach argument are defined to                 a NetBSD host, the host's value of MACHINE will be detected and
                set the listed values of MACHINE and MACHINE_ARCH:                 used automatically.
   
                      mach          MACHINE    MACHINE_ARCH                 See the list-arch operation for a way to get a list of valid
                      evbarm        evbarm     (not set)                 MACHINE and MACHINE_ARCH settings.
                      evbarm-eb     evbarm     armeb  
                      evbarm-el     evbarm     arm  
                      evbmips       evbmips    (not set)  
                      evbmips-eb    evbmips    mipseb  
                      evbmips-el    evbmips    mipsel  
                      evbsh3        evbsh3     (not set)  
                      evbsh3-eb     evbsh3     sh3eb  
                      evbsh3-el     evbsh3     sh3el  
                      sbmips        sbmips     (not set)  
                      sbmips-eb     sbmips     mipseb  
                      sbmips-el     sbmips     mipsel  
   
      -N noiselevel       -N noiselevel
                Set the ``noisyness'' level of the build, by setting                 Set the ``noisyness'' level of the build, by setting
Line 946  BUILDING
Line 984  BUILDING
                by the values of several variables and by the location of the                 by the values of several variables and by the location of the
                source directory.                 source directory.
   
                  Note that placing the obj directory location outside of the
                  default source tree hierarchy makes it easier to manually clear
                  out old files in the event the ``make cleandir'' operation is
                  unable to do so.  (See CAVEATS below.)
   
                  Note also that use of one of -M or -O is the only means of
                  building multiple machine architecture userlands from the same
                  source tree without cleaning between builds (in which case, one
                  would specify distinct obj locations for each).
   
      -o        Set the value of MKOBJDIRS to ``no''.  Otherwise, it will be       -o        Set the value of MKOBJDIRS to ``no''.  Otherwise, it will be
                automatically set to ``yes''.  This default is opposite to the                 automatically set to ``yes''.  This default is opposite to the
                behaviour when not using build.sh.                 behaviour when not using build.sh.
Line 989  BUILDING
Line 1037  BUILDING
   
      -x        Set MKX11=yes.       -x        Set MKX11=yes.
   
        -Y extsrcdir
                  Set the value of EXTSRCSRCDIR to extsrcdir.  If a relative path
                  is specified, it will be converted to an absolute path before
                  being used.
   
        -y        Set MKEXTSRC=yes.
   
      -Z var    Unset ("zap") the environment variable var.  This is propagated       -Z var    Unset ("zap") the environment variable var.  This is propagated
                to the nbmake wrapper.                 to the nbmake wrapper.
   
Line 1047  HISTORY
Line 1102  HISTORY
      The build.sh based build scheme was introduced for NetBSD 1.6 as       The build.sh based build scheme was introduced for NetBSD 1.6 as
      USE_NEW_TOOLCHAIN, and re-worked to TOOLCHAIN_MISSING after that.       USE_NEW_TOOLCHAIN, and re-worked to TOOLCHAIN_MISSING after that.
   
 NetBSD                         November 8, 2012                         NetBSD  CAVEATS
        After significant updates to third-party components in the source tree,
        the ``make cleandir'' operation may be insufficient to clean out old
        files in object directories.  Instead, one may have to manually remove
        the files.  Consult the UPDATING file for notices concerning this.
   
   NetBSD                          August 7, 2014                          NetBSD

Legend:
Removed from v.1.106  
changed lines
  Added in v.1.115

CVSweb <webmaster@jp.NetBSD.org>