summaryrefslogtreecommitdiffhomepage
path: root/subr
AgeCommit message (Collapse)AuthorFilesLines
2020-03-26subr/ex_pkg_env.subr:exp_pkg_env_set(): correctly join NL-separated package ↵Lucio Andrés Illanes Albornoz1-7/+7
variable names before passing to rtl_set_vars().
2020-03-24subr/{ex_pkg_env,pkg_install,rtl_list}.subr: reference ${IFS} w/ explicit ↵Lucio Andrés Illanes Albornoz3-6/+6
default value (via midipix.)
2020-03-19subr/{build,pkgtool}_init.subr: minor cleanup.Lucio Andrés Illanes Albornoz3-31/+72
subr/rtl_complex.subr:rtl_{check_prereqs,prompt,rc}(): initial implementation.
2020-03-19subr/{pkg_install,rtl_fetch}.subr, ↵Lucio Andrés Illanes Albornoz3-29/+17
subr/rtl_complex.subr:rtl_flock_acquire(): split.
2020-03-15Set -o nounset in addition to +o errexit -o nounset.Lucio Andrés Illanes Albornoz29-186/+220
groups/000.host_tools.group:libtool_host:${PKG_LIBTOOL}: build w/ `none'. subr/build_init.subr:buildp_init_getopts(): set ${DEFAULT_BUILD_CPUS} prior to ex_pkg_load_vars() call. subr/pkg_{build,install_make}.subr: only pass `LIBTOOL=${PKG_LIBTOOL}' if set and not `none'. vars/libtool_host.vars: removes obsolete vars file.
2020-03-15General cleanup.Lucio Andrés Illanes Albornoz17-509/+478
2020-03-13subr/pkgtool_init.subr:pkgtoolp_init_prereqs(): trim list of prerequisite ↵Lucio Andrés Illanes Albornoz1-5/+3
command dependencies.
2020-03-13Implements ./pkgtool.sh -[irt] options.Lucio Andrés Illanes Albornoz5-135/+310
etc/{README.md,pkgtool.usage}: updated. subr/ex_pkg.subr:ex_pkg_{find_package,get_packages}(): initial implementation. subr/ex_pkg.subr:ex_pkg_unfold_{,r}depends(): split from ex_pkg_expand_packages(). subr/ex_pkg{,_dispatch}.subr: removes ${EX_PKG_COMPLETE} scoped global. subr/ex_pkg_dispatch.subr:exp_pkg_dispatch_expand_packages(): split from subr/ex_pkg.subr. subr/rtl_list.subr:rtl_lsort(): initial implementation.
2020-03-12midipix.env: remove redundant ${DEFAULT_LOG_MSG_*_COLOUR} variables.Lucio Andrés Illanes Albornoz1-0/+1
subr/rtl_log.subr:${DEFAULT_LOG_MSG_WARN_COLOUR}: added.
2020-03-12Reduce awk(1), grep(1), seq(1), and stat(1) usage.Lucio Andrés Illanes Albornoz6-36/+73
subr/build_init.subr:buildp_init_files(): replace timestamp w/ running total log filename suffix. subr/build_init.subr:buildp_init_prereqs(): ensure sed(1) supports -i option. subr/rtl_complex.subr:rtl_{get_cpu_count,is_newer}(): initial implementation. subr/rtl_string.subr:rtl_match(): initial implementation.
2020-03-11subr/build_init.subr:buildp_init_getopts(): --dump-on-abort excludes -R.Lucio Andrés Illanes Albornoz1-11/+15
etc/{build.usage,README.md}: updated.
2020-03-11pkgtool.sh, subr/{build_init,ex_pkg_exec}.subr: rebuild package, dump & exit ↵Lucio Andrés Illanes Albornoz2-5/+17
if package dump is unavailable. build.sh:buildp_dispatch_fail_pkg(): log --dump-{in,on-abort} messages at `info' level.
2020-03-11Initial implementation of pkgtool.sh.Lucio Andrés Illanes Albornoz5-8/+209
build.sh:build(): move cd(1) to $(dirname "${0}"). etc/{build.usage,README.md}: updated. midipix.env:${DEFAULT_CLEAR_ENV_VARS_EXCEPT}: allow inheriting ARCH, BUILD, BUILD_DLCACHEDIR, BUILD_WORKDIR, and PREFIX* from the environment. pkgtool.sh: initial implementation. subr/build_init.subr:buildp_init_defaults(): allow inheriting ARCH, BUILD, BUILD_DLCACHEDIR, BUILD_WORKDIR, and PREFIX* from the environment. subr/build_init.subr:buildp_init_env(): move cd(1) to $(dirname "${0}"). subr/build_init.subr:buildp_init_files(): correctly pass ${_status} from rtl_check_path_vars(). subr/ex_pkg_exec.subr:ex_pkg_exec(): dump subset of variables and exported variables on build failure and --dump-on-abort. subr/pkgtool_init.subr: adapted from subr/build_init.subr. subr/rtl_complex.subr:rtl_filter_vars(): initial implementation. subr/rtl_string.subr:rtl_subst(): initial implementation.
2020-03-05subr/ex_pkg.subr: implement -r ***name[,..][:step,..]: forcibly rebuild all ↵Lucio Andrés Illanes Albornoz1-30/+57
packages that depend on the specified package(s).
2020-03-05subr/ex_pkg_dispatch.subr: implement *<group>: inhibit group-group ↵Lucio Andrés Illanes Albornoz2-50/+63
dependency expansion. etc/{build.usage,README.md}, subr/build_init.subr: updated.
2020-03-05subr/ex_pkg{,_dispatch}.subr: implement -r ***name[,..][:step,..]: forcibly ↵Lucio Andrés Illanes Albornoz3-24/+42
rebuild all packages that depend on the specified package(s). etc/{build.usage,README.md}, subr/build_init.subr: updated.
2020-03-04subr/build_init.subr:build_init(): call buildp_init_prereqs() after ↵Lucio Andrés Illanes Albornoz1-20/+25
buildp_init_getopts(). subr/build_init.subr:buildp_init_prereqs(): split from buildp_init_env(). etc/README.md: updated.
2020-03-04subr/build_init.subr:buildp_init_env(): source subr/*.subr as early as ↵Lucio Andrés Illanes Albornoz1-7/+8
possible (via duvallj.) subr/build_init.subr:buildp_init_env(): correctly emit errors & exit given early initialisation failure. etc/README.md: updated.
2020-03-02subr/pkg_install.subr: serialise simultaneous installation to ${PKG_PREFIX} ↵Lucio Andrés Illanes Albornoz1-1/+1
w/ flock(1).
2020-03-02subr/build_init.subr:buildp_init_args(): reduce sed(1) usage.Lucio Andrés Illanes Albornoz2-2/+8
subr/rtl_list.subr:rtl_llift(): added.
2020-03-02subr/pkg_install.subr: serialise simultaneous installation to ${PKG_PREFIX} ↵Lucio Andrés Illanes Albornoz1-0/+14
w/ flock(1).
2020-03-02build.sh:build(): iteratively print list of unknown packages, if any.Lucio Andrés Illanes Albornoz3-5/+5
subr/build_init.subr:buildp_init_args(): correctly parse -r package[,...]:step[,...]. subr/ex_pkg{,_dispatch}.subr: minor cleanup. subr/ex_pkg_dispatch.subr:ex_pkg_dispatch(): don't reset ${EX_PKG_DISPATCH_UNKNOWN} on entry. subr/ex_pkg_dispatch.subr:ex_pkg_dispatch(): correctly check ${_pkg_names} for ${_pkg_name} when updating ${EX_PKG_DISPATCH_UNKNOWN}.
2020-03-02subr/pkg_install.subr: remove -D pkg remnants.Lucio Andrés Illanes Albornoz1-3/+0
2020-03-01General cleanup, pt. III.Lucio Andrés Illanes Albornoz18-81/+169
dist/dist_digest.dist: removes obsolete dist file. etc/{build.usage,README.md}: updated. groups/000.host_tools.group:{autoconf,automake,gettext_tiny,install_strip,libtool,m4}_host: moved from groups/010.host_deps.group. groups/221.native_packages_dev.group:lua: moved from groups/231.native_packages_etc.group. groups/221.native_packages_dev.group:lua:${PKG_FORCE_AUTORECONF}: set. groups/231.native_packages_etc.group:{mlogin,tdnf}:${PKG_FORCE_AUTORECONF}: set. groups/241.native_packages_inet.group:nullmailer:${PKG_FORCE_AUTORECONF}: set. groups/251.native_packages_lib.group:lib{asr,gpg_error}:${PKG_FORCE_AUTORECONF}: set. midipix.env, etc/README.md, subr/pkg_configure_autotools.subr: adds FORCE_NO_AUTORECONF. subr/rtl_fileop.subr: adds ch{mod,own} fileops. vars/{check_updates,jamvm,lib{asr,gpg_error},lua,mlogin,tdnf}.vars: removes obsolete vars file.
2020-03-01build.sh:buildp_ast(): reset package state of in-progress packages at EXIT ↵Lucio Andrés Illanes Albornoz1-10/+10
signal time. subr/ex_pkg_dispatch.subr: convert ${EXP_PKG_DISPATCH_WAIT} to unscoped global ${EX_PKG_DISPATCH_WAIT}.
2020-02-29subr/build_init.subr:buildp_init_env(): don't use unavailable rtl_lconcat() ↵Lucio Andrés Illanes Albornoz1-1/+1
(via Redfoxmoon.)
2020-02-29subr/ex_pkg_env.subr:exp_pkg_env_set(): reduce hard-wiring.Lucio Andrés Illanes Albornoz1-7/+3
2020-02-29midipix.env: renamed from vars/env.vars.Lucio Andrés Illanes Albornoz1-1/+1
subr/build_init.subr:buildp_init_vars(): source ./midipix.env.
2020-02-29Refactors dist packages into groups/999.dist.group and dist/dist_*.dist.Lucio Andrés Illanes Albornoz2-2/+8
build.sh:buildp_dispatch_pkg_state(): fix `missing_pkg' log message. subr/ex_pkg_env.subr:exp_pkg_env_set(): source from "dist/${_pkg_name}.dist" given `dist' group.
2020-02-29build.sh:buildp_ast(): correctly call rtl_kill_tree().Lucio Andrés Illanes Albornoz1-6/+10
subr/rtl_complex.subr:rtl_kill_tree(): iteratively & recursively kill tree of processes excluding ${$}.
2020-02-29build.sh:buildp_dispatch{,_pkg_state}(): forward `msg_pkg' messages to ↵Lucio Andrés Illanes Albornoz1-0/+2
stdout given -v. subr/ex_pkg_dispatch.subr:exp_pkg_dispatch_group() forward `msg_pkg' to ${_dispatch_fn}. vars/invariants_zipdist.vars: log progress w/ `msg_pkg' messages in addition to rtl_log_msg().
2020-02-29subr/build_init.subr:buildp_init_vars(): reject unknown groups.Lucio Andrés Illanes Albornoz1-9/+17
2020-02-29groups/dev_packages.group:${GROUP_AUTO}: set to 0.Lucio Andrés Illanes Albornoz1-1/+8
subr/build_init.subr:buildp_init_vars(): don't include groups in ${_default_build_groups} if ${GROUP_AUTO} is set to 0.
2020-02-29build.sh:buildp_dispatch(): silence command(1) output.Lucio Andrés Illanes Albornoz1-2/+5
build.sh:build(): turn ${_build_date_start} into scoped global ${BUILD_DATE_START} due to vars/invariants_zipdist.vars. subr/ex_pkg_exec.subr:ex_pkg_exec(): correctly set ${_rc} from pkg_${_pkg_name}_all()'s return status. subr/ex_pkg_exec.subr:ex_pkg_exec(): only set `finish' package build state given zero ${_rc} and ${_restart_at}.
2020-02-26subr/pkg_{fetch_extract,install_make}.subr, vars/env.vars: minor cleanup.Lucio Andrés Illanes Albornoz2-6/+1
2020-02-26build.sh:buildp_dispatch_group_state(): fix type signature.Lucio Andrés Illanes Albornoz1-4/+4
subr/build_init.subr:buildp_init_vars(): fix ${_default_build_groups} generation.
2020-02-26Implements group-group dependencies.Lucio Andrés Illanes Albornoz1-1/+1
2020-02-26General cleanup, pt. II.Lucio Andrés Illanes Albornoz29-480/+589
2020-02-25build.sh: reintroduce {disabled,skipped}_pkg messages at -v[v[v]].Lucio Andrés Illanes Albornoz2-10/+10
build.sh, subr/build_init.subr: minor cleanup. subr/ex_pkg_dispatch.subr:exp_pkg_expand_packages(): call ${_dispatch_fn} w/ {disabled,skipped}_pkg for {disabled,skipped} packages. subr/ex_pkg_dispatch.subr:exp_pkg_expand_packages(): don't mutate ${EX_PKG_NSKIPPED}. subr/ex_pkg_dispatch.subr:ex_pkg_dispatch(): don't set ${EX_PKG_NSKIPPED}.
2020-02-25subr/ex_pkg_dispatch.subr:exp_pkg_check_depends(): apply ex_rtl_uniq() to ↵Lucio Andrés Illanes Albornoz2-22/+16
expanded package list. subr/ex_{pkg_dispatch,rtl_list}.subr: splits ex_rtl_lunfold_depends().
2020-02-25subr/ex_rtl_string.subr: explicitly expand [a-z] and [A-Z] to mitigate ↵Lucio Andrés Illanes Albornoz1-8/+8
locale-dependent case issues.
2020-02-25General cleanup, pt. I.Lucio Andrés Illanes Albornoz30-597/+824
2020-02-21subr/ex_rtl_complex.subr:ex_rtl_kill_tree(): join line.Lucio Andrés Illanes Albornoz1-2/+1
2020-02-21etc/README: updates build-time dependencies.Lucio Andrés Illanes Albornoz1-1/+1
subr/build_init.subr:buildp_init_prereqs(): redirect which(1) stderr to /dev/null.
2020-02-20subr/build_init.subr:buildp_init_prereqs(): adds perl (required by ↵Lucio Andrés Illanes Albornoz1-3/+3
intltool_host.) etc/README: updated.
2020-02-20subr/build_init.subr:buildp_init_prereqs(): updates prerequisite commands list.Lucio Andrés Illanes Albornoz1-5/+5
2020-02-20subr/build_init.subr:buildp_init_prereqs(): print missing prerequisite ↵Lucio Andrés Illanes Albornoz1-4/+9
package(s).
2020-02-15subr/build_init.subr:buildp_init_prereqs(): add flock to list of ↵Lucio Andrés Illanes Albornoz1-5/+5
prerequisite commands. etc/README: updated.
2020-02-15subr/build_init.subr:buildp_init_prereqs(): remove openssl from & add ↵Lucio Andrés Illanes Albornoz2-4/+4
sha256sum to list of prerequisite commands. subr/ex_rtl_fetch.subr:ex_rtl_fetch_url_wget(): use sha256sum(1) instead of openssl(1) w/ dgst -sha256. etc/README: updated.
2020-02-15subr/ex_rtl_fetch.subr:exp_rtl_fetch_url_{git,wget}(): serialise ↵Lucio Andrés Illanes Albornoz1-20/+39
simultaneous execution w/ flock(1).