summaryrefslogtreecommitdiffhomepage
path: root/subr/ex_rtl_log.subr
diff options
context:
space:
mode:
authorLucio Andrés Illanes Albornoz (arab, vxp) <lucio@lucioillanes.de>2017-11-22 01:32:50 +0000
committerLucio Andrés Illanes Albornoz (arab, vxp) <lucio@lucioillanes.de>2017-11-22 02:35:10 +0000
commit32ad217d197203a97dfcc0076e748731d2315c0b (patch)
tree1f4dd5799daa9ac8540cddcc45b4c1557cb0ac70 /subr/ex_rtl_log.subr
parent465073d1a9f8ead60dbe66a26b55c0c1927e63c6 (diff)
downloadmidipix_build-32ad217d197203a97dfcc0076e748731d2315c0b.tar.bz2
midipix_build-32ad217d197203a97dfcc0076e748731d2315c0b.tar.xz
subr/*: reorganised as {ex{,_{pkg,rtl,setup}},pkg}_*.
Diffstat (limited to 'subr/ex_rtl_log.subr')
-rw-r--r--subr/ex_rtl_log.subr45
1 files changed, 45 insertions, 0 deletions
diff --git a/subr/ex_rtl_log.subr b/subr/ex_rtl_log.subr
new file mode 100644
index 00000000..f4e250a5
--- /dev/null
+++ b/subr/ex_rtl_log.subr
@@ -0,0 +1,45 @@
+#
+# set -o errexit -o noglob are assumed.
+#
+
+ex_log_env_vars() {
+ local _nvar=1 _arg _arg_len_max=0;
+ ex_log_msg info "Variables for this ${1:-build}:"; shift;
+ while [ ${_nvar} -le ${#} ]; do
+ _arg="$(eval echo \${${_nvar}})";
+ _arg="${_arg%%=*}";
+ if [ ${#_arg} -gt ${_arg_len_max} ]; then
+ _arg_len_max=${#_arg};
+ fi; : $((_nvar+=1));
+ done;
+ while [ ${#} -gt 0 ]; do
+ ex_log_msg info "$(printf \
+ "%${_arg_len_max}.${_arg_len_max}s=%s" \
+ "${1%%=*}" "$(ex_get_var_unsafe ${1#*=})")";
+ shift;
+ done;
+};
+
+ex_log_msg() {
+ local _lvl="${1}"; shift;
+ if [ "${_lvl#v}" != "${_lvl}" ]\
+ && [ ${ARG_VERBOSE:-0} -eq 0 ]; then
+ return;
+ fi;
+ case "${_lvl}" in
+ failexit) printf "\033[0m\033[${LOG_MSG_FAIL_COLOUR}m"; ;;
+ fail) printf "\033[0m\033[${LOG_MSG_FAIL_COLOUR}m"; ;;
+ info) printf "\033[0m\033[${LOG_MSG_INFO_COLOUR}m"; ;;
+ vnfo) printf "\033[0m\033[${LOG_MSG_INFO_COLOUR}m"; ;;
+ succ) printf "\033[0m\033[${LOG_MSG_SUCC_COLOUR}m"; ;;
+ warn) printf "\033[0m\033[${LOG_MSG_WARN_COLOUR}m"; ;;
+ varn) printf "\033[0m\033[${LOG_MSG_WARN_COLOUR}m"; ;;
+ esac;
+ if [ ${#} -gt 1 ]; then
+ printf "==> %s %s %s\033[0m\n" "$(ex_date)" "${1}" "$*";
+ else
+ printf "==> %s %s\033[0m\n" "$(ex_date)" "${1}";
+ fi; [ ${_lvl} = failexit ] && exit 1 || return 0;
+};
+
+# vim:filetype=sh