[Libreoffice-commits] core.git: bin/find_unusedheaders.pl

Jelle van der Waa jelle at vdwaa.nl
Tue Oct 15 01:12:14 PDT 2013


 bin/find_unusedheaders.pl |   49 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

New commits:
commit 1793e5c1ff5d4b84178b4805026b8d455f32b0e5
Author: Jelle van der Waa <jelle at vdwaa.nl>
Date:   Sun Oct 13 15:47:28 2013 +0200

    fdo#70371: Initial perl script
    
    Change-Id: I9b0ec2b00c11f7f09cd37273bbbcb856d1c7c862
    Reviewed-on: https://gerrit.libreoffice.org/6238
    Reviewed-by: Björn Michaelsen <bjoern.michaelsen at canonical.com>
    Tested-by: Björn Michaelsen <bjoern.michaelsen at canonical.com>

diff --git a/bin/find_unusedheaders.pl b/bin/find_unusedheaders.pl
new file mode 100755
index 0000000..c6d7bda
--- /dev/null
+++ b/bin/find_unusedheaders.pl
@@ -0,0 +1,49 @@
+#!/usr/bin/perl
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+#
+use strict;
+use warnings;
+use File::Find qw(finddepth);
+use File::Basename;
+
+# Find dirs in:
+# workdir/unxlngx6.pro/Dep/CxxObject/
+# workdir/unxlngx6.pro/Dep/CObject
+#
+# Concat these files and compare them with the output of
+# `git ls-tree HEAD -r --name-only` and report files in the git ls-tree that aren't in the first.
+
+my @files;
+my $tmp;
+my %data = ();
+
+# define a wanted function
+sub wanted {
+  return if($_ eq '.' || $_ eq '..' || -d $_);
+  $tmp = basename($File::Find::name);
+  # remove file extension ( .o )
+  $tmp =~ s/\.[^.]*$//;
+  $data{$tmp} = $File::Find::name;
+}
+
+finddepth(\&wanted, 'workdir/unxlngx6.pro/Dep/CxxObject');
+finddepth(\&wanted, 'workdir/unxlngx6.pro/Dep/CObject');
+
+my @gitfiles = `git ls-tree HEAD -r --name-only`;
+
+# loop over found gitfiles
+foreach my $file (@gitfiles){
+  if($file =~ /\.[hxx|h|c|cxx]$/){
+    $tmp = basename($file);
+    $tmp =~ s/\.[^.]*$//;
+    chomp($tmp);
+    if(!exists($data{$tmp})){
+      print $file;
+    }
+  }
+}


More information about the Libreoffice-commits mailing list