diff options
author | Bjoern Michaelsen <bjoern.michaelsen@canonical.com> | 2013-10-15 10:18:29 +0200 |
---|---|---|
committer | Bjoern Michaelsen <bjoern.michaelsen@canonical.com> | 2013-10-15 10:18:29 +0200 |
commit | e4fbcc549a143992f72333404adb0180afa69e1a (patch) | |
tree | be6e9d01ae9356b7a6bb77576fa987b9a40b055c /bin/find-unusedheaders.pl | |
parent | 1793e5c1ff5d4b84178b4805026b8d455f32b0e5 (diff) |
fdo#70371: create findunusedheaders target
- you can now do "make unusedheaders" to look for headers that seem to be used
- also renamed the script in ./bin to follow the conventions there
Change-Id: Ia9487af02effd05bfbc5c3f5c04b928a407b0fa4
Diffstat (limited to 'bin/find-unusedheaders.pl')
-rwxr-xr-x | bin/find-unusedheaders.pl | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/bin/find-unusedheaders.pl b/bin/find-unusedheaders.pl new file mode 100755 index 000000000000..c6d7bdab59c8 --- /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; + } + } +} |