diff options
author | Lucio Andrés Illanes Albornoz <lucio@lucioillanes.de> | 2021-08-26 19:03:25 +0200 |
---|---|---|
committer | Lucio Andrés Illanes Albornoz <lucio@lucioillanes.de> | 2021-08-26 19:03:25 +0200 |
commit | b1d432e5fcdabfe5e5bbded8961eb7dfba48a5be (patch) | |
tree | f385113a69fd5f9311ff38d7ea8c53c07113c7e9 /etc | |
parent | 8a9cf32e8e55307ae4df3fb1ad17280c7ab0c28b (diff) | |
download | midipix_build-b1d432e5fcdabfe5e5bbded8961eb7dfba48a5be.tar.bz2 midipix_build-b1d432e5fcdabfe5e5bbded8961eb7dfba48a5be.tar.xz |
Implements logging tags, tag sets, and themes.
subr/pkgtool_init.subr:pkgtoolp_init_args(): set ${BUILD_HNAME}.
Diffstat (limited to 'etc')
-rw-r--r-- | etc/README.md | 159 | ||||
-rw-r--r-- | etc/build.theme | 84 | ||||
-rw-r--r-- | etc/build.usage | 159 | ||||
-rw-r--r-- | etc/build.usage.short | 31 | ||||
-rw-r--r-- | etc/pkgtool.theme | 56 |
5 files changed, 324 insertions, 165 deletions
diff --git a/etc/README.md b/etc/README.md index b3a62709..9cce5684 100644 --- a/etc/README.md +++ b/etc/README.md @@ -496,87 +496,100 @@ env ARCH=nt64 BUILD_KIND=release PREFIX_ROOT="${HOME}/midipix_tmp" ./build.sh -D 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]] [-V {notice,verbose,build,fileops,install,xtrace}] [-x]
+ [-v] [-V [+]tag|pat[,..]]
[--as-needed] [--debug-minipix] [--dump-on-abort] [--reset-state]
[--roar] [[=]<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.
+ -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.
+ 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[v] -v: log at info, notice, -vv: log at info, notice, verbose level.
- -V level[,..] Be verbose concerning any of:
- notice...: log at info, notice level (-v,)
- verbose..: log at info, notice, verbose level (implies notice) (-vv,)
- build....: always print package build logs (implies notice,)
- fileops..: log RTL file operations (implies notice,)
- install..: log RTL installation DSL operations (implies notice,)
- xtrace...: set xtrace during package builds (implies notice) (-x.)
- -x Set xtrace during package builds.
-
- --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.
- --dump-on-abort Produce package environment dump files on build failure to be
- used in conjuction with pkg_shell.sh script (excludes -R.)
- --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.
+ 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, faildump, 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.
+ --dump-on-abort Produce package environment dump files on build failure to be
+ used in conjuction with pkg_shell.sh script (excludes -R.)
+ --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.
+ Override build or package variable.
```
[Back to top](#table-of-contents)
diff --git a/etc/build.theme b/etc/build.theme new file mode 100644 index 00000000..5485a368 --- /dev/null +++ b/etc/build.theme @@ -0,0 +1,84 @@ +# +# Theme file for build.sh +# + +# +# {{{ ANSI attributes reference +# +# Attribute Name Note +# 0 Reset or normal All attributes off +# 1 Bold or increased intensity As with faint, the color change is a PC (SCO / CGA) invention.[30][better source needed] +# 2 Faint, decreased intensity, or dim May be implemented as a light font weight like bold.[31] +# 4 Underline Style extensions exist for Kitty, VTE, mintty and iTerm2.[32][33] +# 7 Reverse video or invert Swap foreground and background colors; inconsistent emulation[34] +# +# FG BG Colour name +# 30 40 Black +# 31 41 Red +# 32 42 Green +# 33 43 Yellow +# 34 44 Blue +# 35 45 Magenta +# 36 46 Cyan +# 37 47 White +# 90 100 Bright Black (Gray) +# 91 101 Bright Red +# 92 102 Bright Green +# 93 103 Bright Yellow +# 94 104 Bright Blue +# 95 105 Bright Magenta +# 96 106 Bright Cyan +# 97 107 Bright White +# }}} +# + +# +# Tag sets +# +LOG_TAGS_all="build,fileop,install,zipdist,xtrace,fatal,info,verbose,warning,build_begin,build_finish,build_finish_time,build_vars,group_begin,group_finish,pkg_begin,pkg_faildump,pkg_finish,pkg_msg,pkg_skip,pkg_step,pkg_strip"; +LOG_TAGS_normal="fatal,info,warning,build_begin,build_finish,build_finish_time,pkg_begin,pkg_faildump,pkg_finish,pkg_msg"; +LOG_TAGS_verbose="${LOG_TAGS_normal:+${LOG_TAGS_normal},}verbose,build_vars,group_begin,group_finish,pkg_skip,pkg_step,pkg_strip"; + +# +# Subsystem tags +# +LOG_TAG_build=""; # (UNUSED) +LOG_TAG_fileop=36; # Cyan +LOG_TAG_install=36; # Cyan +LOG_TAG_zipdist=93; # Bright yellow +LOG_TAG_xtrace=""; # (UNUSED) + +# +# General level tags +# +LOG_TAG_fatal=91; # Bright red +LOG_TAG_info=93; # Bright yellow +LOG_TAG_verbose=96; # Bright cyan +LOG_TAG_warning=31; # Dark red + +# +# General build tags +# +LOG_TAG_build_begin=93; # Bright yellow +LOG_TAG_build_finish=93; # Bright yellow +LOG_TAG_build_finish_time=93; # Bright yellow +LOG_TAG_build_vars=33; # Dark yellow + +# +# Build group tags +# +LOG_TAG_group_begin=33; # Dark yellow +LOG_TAG_group_finish=32; # Dark green + +# +# Package build tags +# +LOG_TAG_pkg_begin=93; # Bright yellow +LOG_TAG_pkg_faildump=93; # Bright yellow +LOG_TAG_pkg_finish=92; # Bright green +LOG_TAG_pkg_msg=90; # Dark grey +LOG_TAG_pkg_skip=90; # Dark grey +LOG_TAG_pkg_step=90; # Dark grey +LOG_TAG_pkg_strip=93; # Bright yellow + +# vim:foldmethod=marker ft=sh diff --git a/etc/build.usage b/etc/build.usage index 8bc7bdf6..218343d7 100644 --- a/etc/build.usage +++ b/etc/build.usage @@ -1,84 +1,97 @@ [97musage[90m: [33m./[93mbuild.sh [90m[[33m-[93ma nt32[90m|[93mnt64[90m] [[33m-[93mb debug[90m|[93mrelease[90m] [[33m-[93mC dir[90m[[93m,[90m..]] [[33m-[93mD kind[90m[[93m,[90m..]][0m [90m[[33m-[93mF ipv4[90m|[93mipv6[90m|[93moffline[90m] [[33m-[93mh[90m|[33m--[93mhelp[90m] [[33m-[93mp jobs[90m|[33m-[93mP[90m] [[33m-[93mr ALL[90m|[93mLAST[90m][0m [90m[[33m-[93mr [90m[[93m*[90m[[93m*[90m[[93m*[90m]]][93mname[90m[[93m,[90m..][[93m:ALL[90m|[93mLAST[90m|[[93m^[90m|[93m<[90m|[93m<=[90m|[93m>[90m|[93m>=[90m][93mstep,[90m..]] [[33m-[93mR[90m] - [90m[[33m-[93mv[90m[[93mv[90m]] [[33m-[93mV [90m{[93mnotice[90m,[93mverbose[90m,[93mbuild[90m,[93mfileops[90m,[93minstall[90m,[93mxtrace[90m}] [90m[[33m-[93mx[90m][0m + [90m[[33m-[93mv[90m] [[33m-[93mV [90m[[93m+[90m][93mtag[90m|[93mpat[90m[[93m,[90m..][90m][0m [90m[[33m--[93mas-needed[90m] [90m[[33m--[93mdebug-minipix[90m] [[33m--[93mdump-on-abort[90m] [90m[[33m--[93mreset-state[90m][0m [90m[[33m--[93mroar[90m] [[[93m=[90m][90m<[93mgroup[90m>|<[93mvariable name[90m>[93m=[90m<[93mvariable override[90m>[ ..]][0m - [33m-[93ma nt32[90m|[93mnt64[0m [96mSelects 32-bit or 64-bit architecture; defaults to [93mnt64[96m.[0m - [33m-[93mb debug[90m|[93mrelease[0m [96mSelects debug or release build kind; defaults to [93mdebug[96m.[0m - [33m-[93mC dir[90m[[93m,[90m..][0m [96mClean build directory ([93mbuild[96m,) [93m${PREFIX}[96m before processing build[0m - [96mscripts ([93mprefix[96m,) source directory ([93msrc[96m,) and/or destination[0m - [96mdirectory ([93mdest[96m) after successful package builds.[0m - [33m-[93mD kind[90m[[93m,[90m..][0m [96mProduce minimal midipix distribution directory ([93mminipix[96m,) RPM[0m - [96mbinary packages ([93mrpm[96m,) and/or deployable distribution ZIP[0m - [96marchive ([93mzipdist[96m.) [93mzipdist[96m implies [93mminipix[96m.[0m + [33m-[93ma nt32[90m|[93mnt64[0m [96mSelects 32-bit or 64-bit architecture; defaults to [93mnt64[96m.[0m + [33m-[93mb debug[90m|[93mrelease[0m [96mSelects debug or release build kind; defaults to [93mdebug[96m.[0m + [33m-[93mC dir[90m[[93m,[90m..][0m [96mClean build directory ([93mbuild[96m,) [93m${PREFIX}[96m before processing build[0m + [96mscripts ([93mprefix[96m,) source directory ([93msrc[96m,) and/or destination[0m + [96mdirectory ([93mdest[96m) after successful package builds.[0m + [33m-[93mD kind[90m[[93m,[90m..][0m [96mProduce minimal midipix distribution directory ([93mminipix[96m,) RPM[0m + [96mbinary packages ([93mrpm[96m,) and/or deployable distribution ZIP[0m + [96marchive ([93mzipdist[96m.) [93mzipdist[96m implies [93mminipix[96m.[0m [33m-[93mF ipv4[90m|[93mipv6[90m|[93moffline[0m - [96mForce IPv4 ([93mipv4[96m) or IPv6 ([93mipv6[96m) when downloading package[0m - [96marchives and/or Git repositories or don't download either at all[0m - [96m([93moffline[96m.)[0m - [33m-[93mh[90m|[93m--help[0m [96mShow short/full help screen, respectively.[0m - [33m-[93mp jobs[90m|[93m-P[0m [96mEnables parallelisation at group-level, whenever applicable.[0m - [96mThe maximum count of jobs defaults to the number of logical[0m - [96mprocessors on the host system divided by two (2.)[0m - - [96mIf [33m-[93mR[96m is not specified and at least one (1) package fails to[0m - [96mbuild, all remaining package builds will be forcibly aborted.[0m - - [33m-[93mr ALL[90m|[93mLAST[0m [96mRestart all packages or the last failed package and resume[0m - [96mbuild, resp.[0m + [96mForce IPv4 ([93mipv4[96m) or IPv6 ([93mipv6[96m) when downloading package[0m + [96marchives and/or Git repositories or don't download either at all[0m + [96m([93moffline[96m.)[0m + [33m-[93mh[90m|[93m--help[0m [96mShow short/full help screen, respectively.[0m + [33m-[93mp jobs[90m|[93m-P[0m [96mEnables parallelisation at group-level, whenever applicable.[0m + [96mThe maximum count of jobs defaults to the number of logical[0m + [96mprocessors on the host system divided by two (2.)[0m + + [96mIf [33m-[93mR[96m is not specified and at least one (1) package fails to[0m + [96mbuild, all remaining package builds will be forcibly aborted.[0m + + [33m-[93mr ALL[90m|[93mLAST[0m [96mRestart all packages or the last failed package and resume[0m + [96mbuild, resp.[0m [33m-[93mr [90m[[93m*[90m[[93m*[90m[[93m*[90m]]][93mname[90m[[93m,[90m..][[93m:ALL[90m|[93mLAST[90m|[[93m^[90m|[93m<[90m|[93m<=[90m|[93m>[90m|[93m>=[90m][93mstep,[90m..][0m - [96mRestart the specified comma-separated package(s) w/ inhibition[0m - [96mof package build step state resetting completely ([90m`[93mALL[90m'[96m,) starting[0m - [96mat the resp. last successfully executed build steps ([90m`[93mLAST[90m'[96m,) or the[0m - [96mspecified comma-separated list of build steps, optionally subject[0m - [96mconcerning package name(s) and/or build step(s) to the below modifiers:[0m - - [96mPrepend name w/ [90m`[93m*[90m'[96m to automatically include dependencies, [90m`[93m**[90m'[0m - [96mto forcibly rebuild all dependencies, and [90m`[93m***[90m'[96m to forcibly[0m - [96mrebuild all packages that depend on the specified package(s).[0m - - [96mPrepend step w/ [90m`[93m^[90m'[96m to filter build steps with, [90m`[93m<[90m'[96m or [90m`[93m<=[90m'[0m - [96mto constrain build steps to below or below or equal with, resp.,[0m - [90m`[93m>[90m'[96m or [90m`[93m>=[90m'[96m to constrain build steps to above or above or equal[0m - [96mwith, resp.[0m - - [96mCurrently defined build steps are:[0m - [93mfetch_clean[90m,[93m fetch_download[90m,[93m fetch_extract[90m,[93m configure_clean[90m,[0m - [93mconfigure_patch_pre[90m,[93m configure_autotools[90m,[93m configure_patch[90m,[0m - [93mconfigure[90m,[93m build_clean[90m,[93m build[90m,[93m install_clean[90m,[93m install_subdirs[90m,[0m - [93minstall_make[90m,[93m install_files[90m,[93m install_libs[90m,[93m install[90m,[93m install_rpm[90m,[0m - [96mand [93mclean[90m.[0m - - [96mAdditionally, the following virtual steps are provided:[0m - [93m@fetch[90m,[93m @configure[90m,[93m @build[90m,[93m @install[90m,[93m @clean[90m,[96m and [93mfinish[90m.[0m - - [33m-[93mR[0m [96mIgnore build failures, skip printing package logs, and continue[0m - [96mbuilding (relaxed mode.)[0m - - [33m-[93mv[90m[[93mv[90m][96m [33m-[93mv[96m: log at [93minfo[90m, [93mnotice[96m, [33m-[93mvv[96m: log at [93minfo[90m,[93m notice[90m,[93m verbose[96m level.[0m - [33m-[93mV level[90m[[93m,[90m..][0m [96mBe verbose concerning any of:[0m - [93mnotice[90m...: [96mlog at [93minfo[90m, [93mnotice[96m level ([33m-[93mv[96m,)[0m - [93mverbose[90m..: [96mlog at [93minfo[90m,[93m notice[90m,[93m verbose[96m level (implies [93mnotice[96m) ([33m-[93mvv[96m,)[0m - [93mbuild[90m....: [96malways print package build logs (implies [93mnotice[96m,)[0m - [93mfileops[90m..: [96mlog RTL file operations (implies [93mnotice[96m,)[0m - [93minstall[90m..: [96mlog RTL installation DSL operations (implies [93mnotice[96m,)[0m - [93mxtrace[90m...: [96mset [93mxtrace[96m during package builds (implies [93mnotice[96m) ([33m-[93mx[96m.)[0m - [33m-[93mx[96m Set [93mxtrace[96m during package builds.[0m - - [33m--[93mas-needed[0m [96mDon't build unless the midipix_build repository has received[0m - [96mnew commits.[0m - [33m--[93mdebug-minipix[0m [96mDon't [93mstrip(1)[96m minipix binaries to facilitate debugging minipix.[0m - [33m--[93mdump-on-abort[0m [96mProduce package environment dump files on build failure to be[0m - [96mused in conjuction with pkg_shell.sh script (excludes [33m-[93mR[96m.)[0m - [33m--[93mreset-state[0m [96mReset package build step state on exit.[0m - - [90m<[93mgroup[90m>[ ..][96m One of: [93mdev_packages[90m,[93m dist[90m,[93m host_deps[90m,[93m host_deps_rpm[90m,[0m - [93mhost_toolchain[90m,[93m host_tools[90m,[93m minipix[90m,[93m native_packages[90m,[0m - [93mnative_runtime[90m,[93m native_toolchain[90m,[93m native_tools[90m.[0m - - [96mPrepend w/ [90m`[93m=[90m'[96m to inhibit group-group dependency expansion.[0m + [96mRestart the specified comma-separated package(s) w/ inhibition[0m + [96mof package build step state resetting completely ([90m`[93mALL[90m'[96m,) starting[0m + [96mat the resp. last successfully executed build steps ([90m`[93mLAST[90m'[96m,) or the[0m + [96mspecified comma-separated list of build steps, optionally subject[0m + [96mconcerning package name(s) and/or build step(s) to the below modifiers:[0m + + [96mPrepend name w/ [90m`[93m*[90m'[96m to automatically include dependencies, [90m`[93m**[90m'[0m + [96mto forcibly rebuild all dependencies, and [90m`[93m***[90m'[96m to forcibly[0m + [96mrebuild all packages that depend on the specified package(s).[0m + + [96mPrepend step w/ [90m`[93m^[90m'[96m to filter build steps with, [90m`[93m<[90m'[96m or [90m`[93m<=[90m'[0m + [96mto constrain build steps to below or below or equal with, resp.,[0m + [90m`[93m>[90m'[96m or [90m`[93m>=[90m'[96m to constrain build steps to above or above or equal[0m + [96mwith, resp.[0m + + [96mCurrently defined build steps are:[0m + [93mfetch_clean[90m,[93m fetch_download[90m,[93m fetch_extract[90m,[93m configure_clean[90m,[0m + [93mconfigure_patch_pre[90m,[93m configure_autotools[90m,[93m configure_patch[90m,[0m + [93mconfigure[90m,[93m build_clean[90m,[93m build[90m,[93m install_clean[90m,[93m install_subdirs[90m,[0m + [93minstall_make[90m,[93m install_files[90m,[93m install_libs[90m,[93m install[90m,[93m install_rpm[90m,[0m + [96mand [93mclean[90m.[0m + + [96mAdditionally, the following virtual steps are provided:[0m + [93m@fetch[90m,[93m @configure[90m,[93m @build[90m,[93m @install[90m,[93m @clean[90m,[96m and [93mfinish[90m.[0m + + [33m-[93mR[0m [96mIgnore build failures, skip printing package logs, and continue[0m + [96mbuilding (relaxed mode.)[0m + + [33m-[93mv[90m [96mIncrease logging verbosity.[0m + [33m-[93mV [90m[[93m+[90m][93mtag[90m|[93mpat[90m[[93m,[90m..][0m [96mEnable logging for messages with [93mtag[96m or [93mpat[96mtern matching tags of:[0m + [93m+[90m (prefix)..: [96minitialise tags with [93mnormal[96m verbosity (implies [93mnormal[96m) (see [93metc/build.theme[90m,[96m)[0m + [93mall[90m.........: [96mlog everything (see [93metc/build.theme[90m,[96m)[0m + [93mclear|none[90m..: [96mlog nothing,[0m + [93mnormal[90m......: [96mlog at normal verbosity (see [93metc/build.theme[90m,[96m)[0m + [93mverbose[90m.....: [96mlog at increased verbosity (implies [93mnormal[96m) (see [93metc/build.theme[96m) ([33m-[93mv[90m,[96m)[0m + + [93mbuild[90m.......: [96mlog package build logs,[0m + [93mfileops[90m.....: [96mlog RTL file operations,[0m + [93minstall[90m.....: [96mlog RTL installation DSL operations,[0m + [93mzipdist[90m.....: [96mlog deployable distribution ZIP archive operations,[0m + [93mxtrace[90m......: [96mset [93mxtrace[96m during package builds,[0m + + [93mfatal[90m.......: [96mfatal, unrecoverable errors,[0m + [93minfo[90m........: [96minformational messages,[0m + [93mverbose[90m.....: [96mverbose informational messages,[0m + [93mwarning[90m.....: [96mwarning messages possibly relating to imminent fatal, unrecoverable errors,[0m + + [93mbuild_*[90m.....: [96mgeneral build messages (viz.: [93mbegin[90m, [93mfinish[90m, [93mfinish_time[90m, [93mvars[90m,[96m)[0m + [93mgroup_*[90m.....: [96mbuild group messages (viz.: [93mbegin[90m, [93mfinish[90m,[96m)[0m + [93mpkg_*[90m.......: [96mpackage build messages (viz.: [93mbegin[90m, [93mfaildump[90m, [93mfinish[90m, [93mmsg[90m, [93mskip[90m, [93mstep[90m, [93mstrip[90m.[96m)[0m + + [33m--[93mas-needed[0m [96mDon't build unless the midipix_build repository has received[0m + [96mnew commits.[0m + [33m--[93mdebug-minipix[0m [96mDon't [93mstrip(1)[96m minipix binaries to facilitate debugging minipix.[0m + [33m--[93mdump-on-abort[0m [96mProduce package environment dump files on build failure to be[0m + [96mused in conjuction with pkg_shell.sh script (excludes [33m-[93mR[96m.)[0m + [33m--[93mreset-state[0m [96mReset package build step state on exit.[0m + + [90m<[93mgroup[90m>[ ..][96m One of: [93mdev_packages[90m,[93m dist[90m,[93m host_deps[90m,[93m host_deps_rpm[90m,[0m + [93mhost_toolchain[90m,[93m host_tools[90m,[93m minipix[90m,[93m native_packages[90m,[0m + [93mnative_runtime[90m,[93m native_toolchain[90m,[93m native_tools[90m.[0m + + [96mPrepend w/ [90m`[93m=[90m'[96m to inhibit group-group dependency expansion.[0m [90m<[93mvariable name[90m>[93m=[90m<[93mvariable override[90m>[ ..][0m - [96mOverride build or package variable.[0m + [96mOverride build or package variable.[0m diff --git a/etc/build.usage.short b/etc/build.usage.short index 3a529ecc..7e58f8b5 100644 --- a/etc/build.usage.short +++ b/etc/build.usage.short @@ -1,31 +1,24 @@ [97musage[90m: [33m./[93mbuild.sh [90m[[33m-[93ma nt32[90m|[93mnt64[90m] [[33m-[93mb debug[90m|[93mrelease[90m] [[33m-[93mC dir[90m[[93m,[90m..]] [[33m-[93mD kind[90m[[93m,[90m..]][0m [90m[[33m-[93mF ipv4[90m|[93mipv6[90m|[93moffline[90m] [[33m-[93mh[90m|[33m--[93mhelp[90m] [[33m-[93mp jobs[90m|[33m-[93mP[90m] [[33m-[93mr ALL[90m|[93mLAST[90m][0m [90m[[33m-[93mr [90m[[93m*[90m[[93m*[90m[[93m*[90m]]][93mname[90m[[93m,[90m..][[93m:ALL[90m|[93mLAST[90m|[[93m^[90m|[93m<[90m|[93m<=[90m|[93m>[90m|[93m>=[90m][93mstep,[90m..]] [[33m-[93mR[90m] - [90m[[33m-[93mv[90m[[93mv[90m]] [[33m-[93mV [90m{[93mnotice[90m,[93mverbose[90m,[93mbuild[90m,[93mfileops[90m,[93minstall[90m,[93mxtrace[90m}] [90m[[33m-[93mx[90m][0m + [90m[[33m-[93mv[90m] [[33m-[93mV [90m[[93m+[90m][93mtag[90m|[93mpat[90m[[93m,[90m..][90m][0m [90m[[33m--[93mas-needed[90m] [90m[[33m--[93mdebug-minipix[90m] [[33m--[93mdump-on-abort[90m] [90m[[33m--[93mreset-state[90m][0m [90m[[33m--[93mroar[90m] [[[93m=[90m][90m<[93mgroup[90m>|<[93mvariable name[90m>[93m=[90m<[93mvariable override[90m>[ ..]][0m - [33m-[93ma nt32[90m|[93mnt64[0m [96mSelects 32-bit or 64-bit architecture; defaults to [93mnt64[96m.[0m - [33m-[93mb debug[90m|[93mrelease[0m [96mSelects debug or release build kind; defaults to [93mdebug[96m.[0m - [33m-[93mh[90m|[33m--[93mhelp[96m Show short/full help screen, respectively.[0m - [33m-[93mp jobs[90m|[93m-P[96m Enables parallelisation at group-level, whenever applicable.[0m - [33m-[93mr ALL[90m|[93mLAST[96m Restart all/the last failed/the specified comma-separated package(s).[0m + [33m-[93ma nt32[90m|[93mnt64[0m [96mSelects 32-bit or 64-bit architecture; defaults to [93mnt64[96m.[0m + [33m-[93mb debug[90m|[93mrelease[0m [96mSelects debug or release build kind; defaults to [93mdebug[96m.[0m + [33m-[93mh[90m|[33m--[93mhelp[96m Show short/full help screen, respectively.[0m + [33m-[93mp jobs[90m|[93m-P[96m Enables parallelisation at group-level, whenever applicable.[0m + [33m-[93mr ALL[90m|[93mLAST[96m Restart all/the last failed/the specified comma-separated package(s).[0m [33m-[93mr [90m[[93m*[90m[[93m*[90m[[93m*[90m]]][93mname[90m[[93m,[90m..][[93m:ALL[90m|[93mLAST[90m|[[93m^[90m|[93m<[90m|[93m<=[90m|[93m>[90m|[93m>=[90m][93mstep,[90m..][0m - [33m-[93mv[90m[[93mv[90m][96m [33m-[93mv[96m: log at [93minfo[90m, [93mnotice[96m, [33m-[93mvv[96m: log at [93minfo[90m,[93m notice[90m,[93m verbose[96m level.[0m - [33m-[93mV level[90m[[93m,[90m..][0m [96mBe verbose concerning any of:[0m - [93mnotice[90m...: [96mlog at [93minfo[90m, [93mnotice[96m level ([33m-[93mv[96m,)[0m - [93mverbose[90m..: [96mlog at [93minfo[90m,[93m notice[90m,[93m verbose[96m level (implies [93mnotice[96m) ([33m-[93mvv[96m,)[0m - [93mbuild[90m....: [96malways print package build logs (implies [93mnotice[96m,)[0m - [93mfileops[90m..: [96mlog RTL file operations (implies [93mnotice[96m,)[0m - [93minstall[90m..: [96mlog RTL installation DSL operations (implies [93mnotice[96m,)[0m - [93mxtrace[90m...: [96mset [93mxtrace[96m during package builds (implies [93mnotice[96m) ([33m-[93mx[96m.)[0m + [33m-[93mv[90m [96mIncrease logging verbosity.[0m - [90m<[93mgroup[90m>[ ..][96m One of: [93mdev_packages[90m,[93m dist[90m,[93m host_deps[90m,[93m host_deps_rpm[90m,[0m - [93mhost_toolchain[90m,[93m host_tools[90m,[93m minipix[90m,[93m native_packages[90m,[0m - [93mnative_runtime[90m,[93m native_toolchain[90m,[93m native_tools[90m.[0m + [90m<[93mgroup[90m>[ ..][96m One of: [93mdev_packages[90m,[93m dist[90m,[93m host_deps[90m,[93m host_deps_rpm[90m,[0m + [93mhost_toolchain[90m,[93m host_tools[90m,[93m minipix[90m,[93m native_packages[90m,[0m + [93mnative_runtime[90m,[93m native_toolchain[90m,[93m native_tools[90m.[0m - [96mPrepend w/ [90m`[93m=[90m'[96m to inhibit group-group dependency expansion.[0m + [96mPrepend w/ [90m`[93m=[90m'[96m to inhibit group-group dependency expansion.[0m [90m<[93mvariable name[90m>=<[93mvariable override[90m>[ ..][0m - [96mOverride build or package variable.[0m + [96mOverride build or package variable.[0m diff --git a/etc/pkgtool.theme b/etc/pkgtool.theme new file mode 100644 index 00000000..31ea331e --- /dev/null +++ b/etc/pkgtool.theme @@ -0,0 +1,56 @@ +# +# Theme file for pkgtool.sh +# + +# +# {{{ ANSI attributes reference +# +# Attribute Name Note +# 0 Reset or normal All attributes off +# 1 Bold or increased intensity As with faint, the color change is a PC (SCO / CGA) invention.[30][better source needed] +# 2 Faint, decreased intensity, or dim May be implemented as a light font weight like bold.[31] +# 4 Underline Style extensions exist for Kitty, VTE, mintty and iTerm2.[32][33] +# 7 Reverse video or invert Swap foreground and background colors; inconsistent emulation[34] +# +# FG BG Colour name +# 30 40 Black +# 31 41 Red +# 32 42 Green +# 33 43 Yellow +# 34 44 Blue +# 35 45 Magenta +# 36 46 Cyan +# 37 47 White +# 90 100 Bright Black (Gray) +# 91 101 Bright Red +# 92 102 Bright Green +# 93 103 Bright Yellow +# 94 104 Bright Blue +# 95 105 Bright Magenta +# 96 106 Bright Cyan +# 97 107 Bright White +# }}} +# + +# +# Tag sets +# +LOG_TAGS_all="fileop,install,fatal,info,verbose,warning"; +LOG_TAGS_normal="fatal,info,warning"; +LOG_TAGS_verbose="${LOG_TAGS_normal:+${LOG_TAGS_normal},}verbose"; + +# +# Subsystem tags +# +LOG_TAG_fileop=36; # Cyan +LOG_TAG_install=36; # Cyan + +# +# General level tags +# +LOG_TAG_fatal=91; # Bright red +LOG_TAG_info=93; # Bright yellow +LOG_TAG_verbose=96; # Bright cyan +LOG_TAG_warning=31; # Dark red + +# vim:foldmethod=marker ft=sh |