Source-Changes archive

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

CVS commit: src



Module Name:    src
Committed By:   lukem
Date:           Thu Jan 23 16:24:09 UTC 2003

Modified Files:
        src: BUILDING build.sh
        src/doc: BUILDING.mdoc

Log Message:
Rework how build.sh functions, so that command line options set various
parameters, and a list of "operations" defines what to do.
The full usage is show below.  Notes:
        `-b' has been deprecated (it always occurs now)
        `-d' is replaced by "distribution"
        `-R rel' onlys sets RELEASEDIR; use "release" to build a release
        `-k kern' has been replaced by "kernel=kern"
        `-i idir' has been replaced by "install=idir"
        -r now occurs before nbmake is rebuilt

Add a copyright (long due!).  Rework the code to (a KNF inspired) ShellNF.
Use functions appropriately.  Allow `nb' prefix to be easily changed to
something else.  Solve world peace (just kidding)

This is part of the (never achievable) goal of attempting to make
NetBSD easier to build...

  --8<--  new usage follows  --8<--

Usage: build.sh [-EnorUu] [-a arch] [-B buildid] [-D dest] [-j njob] [-M obj]
                [-m mach] [-O obj] [-R release] [-T tools] [-V var=[value]]
                [-w wrapper]   [operation [...] ]

 System build operations (all imply "obj" and "tools"):
    build               Run "make build"
    distribution        Run "make distribution" (includes etc/ files)
    release             Run "make release" (includes kernels & distrib media)

 Other operations:
    obj                 Run "make obj" (default unless -o)
    tools               Build and install tools
    kernel=conf         Build kernel with config file `conf'
    install=idir        Run "make installworld" to `idir'
                        (useful after 'distribution' or 'release')

 Options:
    -a arch     Set MACHINE_ARCH to arch (otherwise deduced from MACHINE)
    -B buildId  Set BUILDID to buildId
    -D dest     Set DESTDIR to dest
    -E          Set "expert" mode; disables some DESTDIR checks
    -j njob     Run up to njob jobs in parallel; see make(1)
    -M obj      Set obj root directory to obj (sets MAKEOBJDIRPREFIX)
    -m mach     Set MACHINE to mach (not required if NetBSD native)
    -n          Show commands that would be executed, but do not execute them
    -O obj      Set obj root directory to obj (sets a MAKEOBJDIR pattern)
    -o          Set MKOBJDIRS=no (do not create objdirs at start of build)
    -R release  Set RELEASEDIR to release
    -r          Remove contents of TOOLDIR and DESTDIR before building
    -T tools    Set TOOLDIR to tools.  If unset, and TOOLDIR is not set in
                the environment, nbmake will be (re)built unconditionally.
    -U          Set UNPRIVED
    -u          Set UPDATE
    -V v=[val]  Set variable `v' to `val'
    -w wrapper  Create nbmake script as wrapper
                (default: ${TOOLDIR}/bin/nbmake-${MACHINE})


To generate a diff of this commit:
cvs rdiff -r1.21 -r1.22 src/BUILDING
cvs rdiff -r1.83 -r1.84 src/build.sh
cvs rdiff -r1.8 -r1.9 src/doc/BUILDING.mdoc

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




Home | Main Index | Thread Index | Old Index