equal
deleted
inserted
replaced
1 package SI::tools; |
1 package SI::tools; |
2 |
2 |
3 use strict; |
3 use strict; |
4 use warnings; |
4 use warnings; |
5 use base "Exporter"; |
5 use base "Exporter"; |
6 our @EXPORT = qw(&run); |
6 our @EXPORT = qw(&run &verbose); |
|
7 use if $ENV{DEBUG} ~~ /tools|all/ => "Smart::Comments"; |
7 |
8 |
8 sub run(@) { |
9 sub run(@) { |
9 system(@_); |
10 system(@_); |
10 die "$_[0] failed with exit code " . $? >> 8 . "\n" |
11 die "$_[0] failed with exit code " . $? >> 8 . "\n" |
11 if $?; |
12 if $?; |
12 } |
13 } |
13 |
14 |
|
15 my $last = "\n"; |
|
16 sub verbose(@) { |
|
17 print $last eq "\n" ? "" : " " |
|
18 if not(@_ == 1 and length($_[0]) == 1); |
|
19 print @_; |
|
20 $last = substr($_[-1], -1, 1); |
|
21 }; |
|
22 |
14 1; |
23 1; |
15 # vim:sts=4 sw=4 aw ai si: |
24 # vim:sts=4 sw=4 aw ai si: |