From e4fbcc549a143992f72333404adb0180afa69e1a Mon Sep 17 00:00:00 2001 From: Bjoern Michaelsen Date: Tue, 15 Oct 2013 10:18:29 +0200 Subject: 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 --- bin/find-unusedheaders.pl | 49 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 bin/find-unusedheaders.pl (limited to 'bin/find-unusedheaders.pl') 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; + } + } +} -- cgit