Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 67554faa authored by Fabian Frederick's avatar Fabian Frederick Committed by Michal Marek
Browse files

scripts/bootgraph.pl: Add graphic header



Adding -header + help function like other .pl in /scripts.

Signed-off-by: default avatarFabian Frederick <fabf@skynet.be>
Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
parent 79192ca8
Loading
Loading
Loading
Loading
+40 −2
Original line number Diff line number Diff line
@@ -38,6 +38,31 @@
#

use strict;
use Getopt::Long;
my $header = 0;

sub help {
	my $text = << "EOM";
Usage:
1) dmesg | perl scripts/bootgraph.pl [OPTION] > output.svg
2) perl scripts/bootgraph.pl -h

Options:
	-header	Insert kernel version and date
EOM
	my $std=shift;
	if ($std == 1) {
		print STDERR $text;
	} else {
		print $text;
	}
	exit;
}

GetOptions(
	'h|help'	=>\&help,
	'header'	=>\$header
);

my %start;
my %end;
@@ -49,6 +74,11 @@ my $count = 0;
my %pids;
my %pidctr;

my $headerstep = 20;
my $xheader = 15;
my $yheader = 25;
my $cyheader = 0;

while (<>) {
	my $line = $_;
	if ($line =~ /([0-9\.]+)\] calling  ([a-zA-Z0-9\_\.]+)\+/) {
@@ -112,15 +142,23 @@ if ($count == 0) {
    print STDERR <<END;
No data found in the dmesg. Make sure that 'printk.time=1' and
'initcall_debug' are passed on the kernel command line.
Usage:
      dmesg | perl scripts/bootgraph.pl > output.svg
END
	help(1);
    exit 1;
}

print "<?xml version=\"1.0\" standalone=\"no\"?> \n";
print "<svg width=\"2000\" height=\"100%\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\n";


if ($header) {
	my $version = `uname -a`;
	my $date = `date`;
	print "<text transform=\"translate($xheader,$yheader)\">Kernel version: $version</text>\n";
	$cyheader = $yheader+$headerstep;
	print "<text transform=\"translate($xheader,$cyheader)\">Date: $date</text>\n";
}

my @styles;

$styles[0] = "fill:rgb(0,0,255);fill-opacity:0.5;stroke-width:1;stroke:rgb(0,0,0)";