Versionen im installcheck anzeigen.
authorSven Schöling <s.schoeling@linet-services.de>
Mon, 16 Jan 2012 12:54:12 +0000 (13:54 +0100)
committerSven Schöling <s.schoeling@linet-services.de>
Mon, 16 Jan 2012 12:54:12 +0000 (13:54 +0100)
SL/InstallationCheck.pm
scripts/installation_check.pl

index e867076..0d1ab8b 100644 (file)
@@ -51,7 +51,13 @@ sub module_available {
   my $module  = $_[0];
   my $version = $_[1] || '' ;
 
-  return eval "use $module $version; 1";
+  my $got = eval "use $module $version; 1";
+
+  if ($got) {
+    return ($got, $module->VERSION);
+  } else {
+    return
+  }
 }
 
 sub check_kpsewhich {
index 0f0dc20..48a51fd 100755 (executable)
@@ -123,8 +123,13 @@ sub check_module {
   my ($module, %role) = @_;
 
   my $line = "Looking for $module->{fullname}";
-  my $res = SL::InstallationCheck::module_available($module->{"name"}, $module->{version});
-  print_result($line, $res);
+  my ($res, $ver) = SL::InstallationCheck::module_available($module->{"name"}, $module->{version});
+  if ($res) {
+    print_line($line, $ver || 'no version', 'green');
+  } else {
+    print_result($line, $res);
+  }
+
 
   return if $res;
 
@@ -178,8 +183,17 @@ sub mycolor {
 
 sub print_result {
   my ($test, $exit) = @_;
-  print $test, " ", ('.' x (72 - length $test));
-  print $exit ? '.... '. mycolor('ok', 'green') : ' '. mycolor('NOT ok', 'red');
+  if ($exit) {
+    print_line($test, 'ok', 'green');
+  } else {
+    print_line($test, 'NOT ok', 'red');
+  }
+}
+
+sub print_line {
+  my ($text, $res, $color) = @_;
+  print $text, " ", ('.' x (78 - length($text) - length($res)));
+  print mycolor($res, $color);
   print "\n";
   return;
 }