Blob Blame History Raw
usage: ./build.sh [-a nt32|nt64]  [-b debug|release]    [-C dir[,..]]  [-D kind[,..]]
                  [-F ipv4|ipv6|offline]    [-h|--help] [-p jobs|-P]    [-r ALL|LAST]
                  [-r [*[*[*]]]name[,..][:ALL|LAST|[^|<|<=|>|>=]step,..]]        [-R]
                  [-v] [-V [+]tag|pat[,..]]

                  [--as-needed] [--ccache]  [--debug-minipix]  [--reset-state] [--roar]
                  [--theme theme] [[=]<group>|<variable name>=<variable override>[ ..]]

        -a nt32|nt64        Selects 32-bit or 64-bit architecture; defaults to nt64.
        -b debug|release    Selects debug or release build kind; defaults to debug.
        -C dir[,..]         Clean build directory (build,) ${PREFIX} before processing build
                            scripts (prefix,) source directory (src,) and/or destination
                            directory (dest) after successful package builds.
        -D kind[,..]        Produce minimal midipix distribution directory (minipix,) RPM
                            binary packages (rpm,) and/or deployable distribution ZIP
                            archive (zipdist.) zipdist implies minipix.
        -F ipv4|ipv6|offline
                            Force IPv4 (ipv4) or IPv6 (ipv6) when downloading package
                            archives and/or Git repositories or don't download either at all
                            (offline.)
        -h|--help           Show short/full help screen, respectively.
        -p jobs|-P          Enables parallelisation at group-level, whenever applicable.
                            The maximum count of jobs defaults to the number of logical
                            processors on the host system divided by two (2.)

                            If -R is not specified and at least one (1) package fails to
                            build, all remaining package builds will be forcibly aborted.

        -r ALL|LAST         Restart all packages or the last failed package and resume
                            build, resp.
        -r [*[*[*]]]name[,..][:ALL|LAST|[^|<|<=|>|>=]step,..]
                            Restart the specified comma-separated package(s) w/ inhibition
                            of package build step state resetting completely (`ALL',) starting
                            at the resp. last successfully executed build steps (`LAST',) or the
                            specified comma-separated list of build steps, optionally subject
                            concerning package name(s) and/or build step(s) to the below modifiers:

                            Prepend name w/ `*' to automatically include dependencies, `**'
                            to forcibly rebuild all dependencies, and `***' to forcibly
                            rebuild all packages that depend on the specified package(s).

                            Prepend step w/ `^' to filter build steps with, `<' or `<='
                            to constrain build steps to below or below or equal with, resp.,
                            `>' or `>=' to constrain build steps to above or above or equal
                            with, resp.

                            Currently defined build steps are:
                            fetch_clean, fetch_download, fetch_extract, configure_clean,
                            configure_patch_pre, configure_autotools, configure_patch,
                            configure, build_clean, build, install_clean, install_subdirs,
                            install_make, install_files, install_libs, install, install_rpm,
                            and clean.

                            Additionally, the following virtual steps are provided:
                            @fetch, @configure, @build, @install, @clean, and finish.

        -R                  Ignore build failures, skip printing package logs, and continue
                            building (relaxed mode.)

        -v                  Increase logging verbosity.
        -V [+]tag|pat[,..]  Enable logging for messages with tag or pattern matching tags of:
                            + (prefix)..: initialise tags with normal verbosity (implies normal) (see etc/build.theme,)
                            all.........: log everything (see etc/build.theme,)
                            clear|none..: log nothing,
                            normal......: log at normal verbosity (see etc/build.theme,)
                            verbose.....: log at increased verbosity (implies normal) (see etc/build.theme) (-v,)

                            build.......: log package build logs,
                            fileops.....: log RTL file operations,
                            install.....: log RTL installation DSL operations,
                            zipdist.....: log deployable distribution ZIP archive operations,
                            xtrace......: set xtrace during package builds,

                            fatal.......: fatal, unrecoverable errors,
                            info........: informational messages,
                            verbose.....: verbose informational messages,
                            warning.....: warning messages possibly relating to imminent fatal, unrecoverable errors,

                            build_*.....: general build messages (viz.: begin, finish, finish_time, vars,)
                            group_*.....: build group messages (viz.: begin, finish,)
                            pkg_*.......: package build messages (viz.: begin, finish, msg, skip, step, strip.)

        --as-needed         Don't build unless the midipix_build repository has received
                            new commits.
        --debug-minipix     Don't strip(1) minipix binaries to facilitate debugging minipix.
        --reset-state       Reset package build step state on exit.

        <group>[ ..]        One of: dev_packages, dist, host_deps, host_deps_rpm,
                            host_toolchain, host_tools, minipix, native_packages,
                            native_runtime, native_toolchain, native_tools.

                            Prepend w/ `=' to inhibit group-group dependency expansion.

        <variable name>=<variable override>[ ..]
                            Override build or package variable.