source: trunk/server/source4/script/find_unused_macros.pl

Last change on this file was 414, checked in by Herwig Bauernfeind, 15 years ago

Samba 3.5.0: Initial import

File size: 665 bytes
Line 
1#!/usr/bin/perl
2# Script that reads in C files and prints defines that are used nowhere in the
3# code
4
5# Arguments: C and H files
6# Copyright Jelmer Vernooij <jelmer@samba.org>, GPL
7
8use strict;
9
10my %defined;
11my %used;
12my %files;
13
14my $tmp;
15while($tmp = shift) {
16 $files{$tmp} = $tmp;
17 open(FI, $tmp);
18 my $ln = 0;
19 while(<FI>) {
20 $ln++;
21 my $line = $_;
22 my $cur = "";
23 if(/^#define ([A-Za-z0-9_]+)/) {
24 $defined{$1} = "$tmp:$ln";
25 $cur = $1;
26 }
27
28 $_ = $line;
29 while(/([A-Za-z0-9_]+)/sgm) {
30 if($cur ne $1) { $used{$1} = "$tmp:$ln"; }
31 }
32 }
33 close FI;
34}
35
36foreach(keys %defined) {
37 if(!$used{$_}) { print "$defined{$_}: Macro `$_' is unused\n"; }
38}
Note: See TracBrowser for help on using the repository browser.