Dash:
[t2-trunk.git] / misc / output / terminal
blob8ed6eede8aae8e9d565d4f10c88a94a33da5c1f7
1 # --- T2-COPYRIGHT-NOTE-BEGIN ---
2 # T2 SDE: misc/output/terminal
3 # Copyright (C) 2004 - 2021 The T2 SDE Project
4 # Copyright (C) 1998 - 2003 ROCK Linux Project
5
6 # This Copyright note is generated by scripts/Create-CopyPatch,
7 # more information can be found in the files COPYING and README.
8
9 # This program is free software; you can redistribute it and/or modify
10 # it under the terms of the GNU General Public License version 2.
11 # --- T2-COPYRIGHT-NOTE-END ---
13 if [ "$SDECFG_OUTPUT_TERM_COLOR" = 1 ] ; then
14         term_color_normal=$'\e[0m'
15         term_color_error=$'\e[31;1m'
16         term_color_warning=$'\e[33;1m'
17         term_color_status=$'\e[32;1m'
18         term_color_header=$'\e[35;1m'
19 else
20         term_color_normal=
21         term_color_error=
22         term_color_warning=
23         term_color_status=
24         term_color_header=
27 # A free-form header at start of a section usually followed by calls to
28 # echo_status_terminal().
30 # E.g. echo_header "Building cross binutils and cc for ${arch_target}"
32 echo_header_terminal() {
33         echo ; echo "${term_color_header}$*${term_color_normal}"
36 # A free-form status message informaing the user of what is happening just
37 # now.
39 # E.g. echo_status "writing build log to src.cross.$id/binutils.log"
41 echo_status_terminal() {
42         echo "${term_color_status}->${term_color_normal} $*"
45 # A free-form warning message
47 # E.g. echo_warn "Something went wrong, but we corrected it"
48 echo_warning_terminal() {
49         echo "${term_color_warning}*>${term_color_normal} $*"
52 # A free-form error or warning message if something fails.
54 # E.g. echo_error "Detected a problem with the flist wrapper" \
55 #                 "lib on your system."
57 echo_error_terminal() {
58         echo "${term_color_error}!> $*${term_color_normal}"
61 # We deny to build a package for some reason.
63 # Usage: echo_pkg_deny <stagelevel> <package-name> <reason>
65 # E.g. echo_pkg_deny $stagelevel $pkg "already failed"
67 echo_pkg_deny_terminal() {
68         local buildend="`date '+%s'`"
69         date --date=@$((buildend - buildstart)) --utc "+${term_color_error}== +%H:%M:%S =[$1]=> Package $2 $3${term_color_normal}"
72 # We start building a package.
74 # Usage: echo_pkg_start <stagelevel> <repository> <package-name> \
75 #                       <ver> <extraver>
77 # E.g. echo_pkg_start $stagelevel $repository $pkg $ver $extraver
79 echo_pkg_start_terminal() {
80         buildstart="`date '+%s'`"
81         date "+%n${term_color_header}== %T =[$1]=> Building $2/$3 [$4 $5]${term_color_normal}"
84 # We finished building a package.
86 # Usage: echo_pkg_finish <stagelevel> <repository> <package-name>
88 # E.g. echo_pkg_finish $stagelevel $repository $pkg
90 echo_pkg_finish_terminal() {
91         local buildend="`date '+%s'`"
92         date --date=@$((buildend - buildstart)) --utc "+${term_color_header}== +%H:%M:%S =[$1]=> Finished building package $3${term_color_normal}"
95 # We aborted building a package.
97 # Usage: echo_pkg_abort <stagelevel> <repository> <package-name>
99 # E.g. echo_pkg_abort $stagelevel $repository $pkg
101 echo_pkg_abort_terminal() {
102         local buildend="`date '+%s'`"
103         date --date=@$((buildend - buildstart)) --utc "+${term_color_error}== +%H:%M:%S =[$1]=> Aborted building package $3${term_color_normal}"
106 # Whenever the tail of error logs are printed, this function is used for
107 # that. The parameter may contain newlines.
109 # E.g. echo_errorquote "`tail $root/var/adm/logs/$stagelevel-$pkg.out`"
111 echo_errorquote_terminal() {
112         echo "$@" | grep -vx -- -- | grep . |
113         sed -e 's/^\(.\{'$(( columns - 6 ))'\}\).\{3,\}/\1 ../' \
114             -e 's,^,'"${term_color_error}!>${term_color_normal} "','