dwarfredundant: +batch mode
authorJan Kratochvil <jan.kratochvil@redhat.com>
Tue, 8 Sep 2020 14:06:37 +0000 (16:06 +0200)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Tue, 8 Sep 2020 14:06:37 +0000 (16:06 +0200)
dwarfredundant
dwarfredundant.sh [new file with mode: 0755]

index a7dd9e0..32b798d 100755 (executable)
@@ -14,6 +14,7 @@ for my $argv (@ARGV) {
   my $die_text;
   my $saved_total=0;
   my $emptyline;
+  my $anydebug;
   sub null($) {
     my($addr)=@_;
     die if !$redundant;
@@ -30,6 +31,7 @@ for my $argv (@ARGV) {
     my($addr,$spaces,$rest)=(/^(0x[0-9a-f]{8}:| {11})( +)(.*)$/) or do {
       next;
     };
+    $anydebug=1;
     if ($addr ne " "x11) {
       $addr=~s/:$// or die;
     } else {
@@ -68,5 +70,5 @@ for my $argv (@ARGV) {
     }
   }
   close F or die;
-  print "$saved_total\n";
+  print "$saved_total ".(stat $argv)[7]." $argv\n" if $anydebug;
 }
diff --git a/dwarfredundant.sh b/dwarfredundant.sh
new file mode 100755 (executable)
index 0000000..f1dcd14
--- /dev/null
@@ -0,0 +1,16 @@
+#! /bin/bash
+# echo build/*.dt5.rpm.rpms/*.rpm|xargs -P192 -n64 ./dwarfredundant.sh >dwarfredundant.out
+# perl -ne <dwarfredundant.out '/^(\d+) (\d+) / or die;$a+=$1;$b+=$2;END{print "$a $b ".$a/$b."\n"}'
+for i in "$@";do
+  mkdir work$$
+  cd work$$
+  ln ../$i
+  j=`basename $i`
+  rpm2archive $j
+  rm -f $j
+  tar xzf $j.tgz
+  rm -f $j
+  find -type f|xargs ../../massrebuild7/dwarfredundant -q 2>>../err
+  cd ..
+  rm -rf work$$
+done