1 dc794ede 2005-11-26 devnull # Summarize the installation log, printing errors along with
2 dc794ede 2005-11-26 devnull # enough context to make sense of them.
5 dc794ede 2005-11-26 devnull # print verbose
7 5348a601 2005-12-15 devnull out = "/dev/stdout"
8 32a580f4 2006-07-23 devnull statuslen = 0
10 32a580f4 2006-07-23 devnull updates = "/dev/stderr"
13 5fa03291 2006-07-23 devnull function clearstatus( noflush, i)
15 32a580f4 2006-07-23 devnull if(!updates)
17 32a580f4 2006-07-23 devnull for(i=0; i<statuslen; i++)
18 32a580f4 2006-07-23 devnull printf("\b \b") >updates
19 32a580f4 2006-07-23 devnull statuslen = 0
20 5fa03291 2006-07-23 devnull if(!noflush)
21 5fa03291 2006-07-23 devnull fflush(updates)
24 32a580f4 2006-07-23 devnull function status(s)
26 32a580f4 2006-07-23 devnull if(!updates)
28 5fa03291 2006-07-23 devnull clearstatus(1)
29 32a580f4 2006-07-23 devnull printf(" %s ", s) >updates
30 32a580f4 2006-07-23 devnull statuslen = length(s)+5
31 32a580f4 2006-07-23 devnull fflush(updates)
34 5348a601 2005-12-15 devnull debug!=0 { print "# " $0 }
36 dc794ede 2005-11-26 devnull /^$/ { next }
38 6637b803 2005-11-28 devnull /^echo cd / { next }
39 6637b803 2005-11-28 devnull /^\+\+ pwd/ { next }
42 32a580f4 2006-07-23 devnull clearstatus()
43 dc794ede 2005-11-26 devnull if(debug) print "% mark"
44 dc794ede 2005-11-26 devnull print >out
45 dc794ede 2005-11-26 devnull fflush(out)
46 32a580f4 2006-07-23 devnull if(copy){
47 32a580f4 2006-07-23 devnull print >copy
48 32a580f4 2006-07-23 devnull fflush(copy)
51 dc794ede 2005-11-26 devnull printtabs = 1 # print indented lines immediately following
52 dc794ede 2005-11-26 devnull errors = 0
56 5348a601 2005-12-15 devnull /^ / && printtabs!=0 {
57 32a580f4 2006-07-23 devnull clearstatus()
58 dc794ede 2005-11-26 devnull print >out
59 dc794ede 2005-11-26 devnull fflush(out)
60 32a580f4 2006-07-23 devnull if(copy){
61 32a580f4 2006-07-23 devnull print >copy
62 32a580f4 2006-07-23 devnull fflush(copy)
67 dc794ede 2005-11-26 devnull { printtabs = 0 }
69 dc794ede 2005-11-26 devnull /^(9a|9c|9l|9ar|9?install|cp|rm|mv|mk|9 yacc|9 lex|9 rc|do|for i|if|mk|gcc|cpp|cp|sh|cmp|rc|\.\/o)($|[^:])/ {
70 dc794ede 2005-11-26 devnull if(debug) print "% start"
71 dc794ede 2005-11-26 devnull errors = 0
73 dc794ede 2005-11-26 devnull if(!verbose)
74 dc794ede 2005-11-26 devnull cmd = cmd cd
75 dc794ede 2005-11-26 devnull cmd = cmd $0 "\n"
79 5fa03291 2006-07-23 devnull /^cd .+; mk .+/ && !verbose {
81 5fa03291 2006-07-23 devnull sub(/;$/, "", dir)
82 5fa03291 2006-07-23 devnull status(dir " mk " $4)
86 dc794ede 2005-11-26 devnull if(debug) print "% cd"
87 dc794ede 2005-11-26 devnull errors = 0
88 dc794ede 2005-11-26 devnull if(verbose){
89 dc794ede 2005-11-26 devnull print >out
90 dc794ede 2005-11-26 devnull fflush(out)
91 32a580f4 2006-07-23 devnull if(copy){
92 32a580f4 2006-07-23 devnull print >copy
93 32a580f4 2006-07-23 devnull fflush(copy)
96 dc794ede 2005-11-26 devnull cd = $0 "\n"
102 dc794ede 2005-11-26 devnull cmd = cmd $0 "\n"
105 5348a601 2005-12-15 devnull errors != 0 {
106 32a580f4 2006-07-23 devnull clearstatus()
107 dc794ede 2005-11-26 devnull if(debug) print "% errors"
108 dc794ede 2005-11-26 devnull printf "%s", cmd >out
109 dc794ede 2005-11-26 devnull fflush(out)
110 32a580f4 2006-07-23 devnull if(copy){
111 32a580f4 2006-07-23 devnull printf "%s", cmd >copy
112 32a580f4 2006-07-23 devnull fflush(copy)
114 dc794ede 2005-11-26 devnull cmd = ""
118 dc794ede 2005-11-26 devnull /^( |then|else|fi|done|[ar] - [^ ]*\.o$)/ {
122 5348a601 2005-12-15 devnull /^(conflicts:)/ {
123 dc794ede 2005-11-26 devnull if(debug) print "% skip1"
127 5348a601 2005-12-15 devnull /(up to date|nothing to see|assuming it will be|loop not entered)/ {
131 dc794ede 2005-11-26 devnull /(nodes\(%e\)|packed transitions)/ {
132 dc794ede 2005-11-26 devnull if(debug) print "% skip2"
137 dc794ede 2005-11-26 devnull # unexpected line
138 32a580f4 2006-07-23 devnull clearstatus()
139 dc794ede 2005-11-26 devnull if(debug) print "% errors1"
140 dc794ede 2005-11-26 devnull errors = 1
141 dc794ede 2005-11-26 devnull printf ">>> %s", cmd >out
142 dc794ede 2005-11-26 devnull fflush(out)
143 32a580f4 2006-07-23 devnull if(copy){
144 32a580f4 2006-07-23 devnull printf ">>> %s", cmd >copy
145 32a580f4 2006-07-23 devnull fflush(copy)
147 dc794ede 2005-11-26 devnull cmd = ""