diff options
Diffstat (limited to 'src/lib/libcrypto/util/clean-depend.pl')
| -rw-r--r-- | src/lib/libcrypto/util/clean-depend.pl | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/src/lib/libcrypto/util/clean-depend.pl b/src/lib/libcrypto/util/clean-depend.pl new file mode 100644 index 0000000000..2b2bdb4048 --- /dev/null +++ b/src/lib/libcrypto/util/clean-depend.pl | |||
| @@ -0,0 +1,57 @@ | |||
| 1 | #!/usr/local/bin/perl -w | ||
| 2 | # Clean the dependency list in a makefile of standard includes... | ||
| 3 | # Written by Ben Laurie <ben@algroup.co.uk> 19 Jan 1999 | ||
| 4 | |||
| 5 | use strict; | ||
| 6 | |||
| 7 | while(<STDIN>) { | ||
| 8 | print; | ||
| 9 | last if /^# DO NOT DELETE THIS LINE/; | ||
| 10 | } | ||
| 11 | |||
| 12 | my %files; | ||
| 13 | |||
| 14 | my $thisfile=""; | ||
| 15 | while(<STDIN>) { | ||
| 16 | my ($dummy, $file,$deps)=/^((.*):)? (.*)$/; | ||
| 17 | my $origfile=""; | ||
| 18 | $thisfile=$file if defined $file; | ||
| 19 | next if !defined $deps; | ||
| 20 | $origfile=$thisfile; | ||
| 21 | $origfile=~s/\.o$/.c/; | ||
| 22 | my @deps=split ' ',$deps; | ||
| 23 | @deps=grep(!/^\//,@deps); | ||
| 24 | @deps=grep(!/^\\$/,@deps); | ||
| 25 | @deps=grep(!/^$origfile$/,@deps); | ||
| 26 | # pull out the kludged kerberos header (if present). | ||
| 27 | @deps=grep(!/^[.\/]+\/krb5.h/,@deps); | ||
| 28 | push @{$files{$thisfile}},@deps; | ||
| 29 | } | ||
| 30 | |||
| 31 | my $file; | ||
| 32 | foreach $file (sort keys %files) { | ||
| 33 | my $len=0; | ||
| 34 | my $dep; | ||
| 35 | my $origfile=$file; | ||
| 36 | $origfile=~s/\.o$/.c/; | ||
| 37 | $file=~s/^\.\///; | ||
| 38 | push @{$files{$file}},$origfile; | ||
| 39 | my $prevdep=""; | ||
| 40 | |||
| 41 | # Remove leading ./ before sorting | ||
| 42 | my @deps = map { $_ =~ s/^\.\///; $_ } @{$files{$file}}; | ||
| 43 | |||
| 44 | foreach $dep (sort @deps) { | ||
| 45 | next if $prevdep eq $dep; # to exterminate duplicates... | ||
| 46 | $prevdep = $dep; | ||
| 47 | $len=0 if $len+length($dep)+1 >= 80; | ||
| 48 | if($len == 0) { | ||
| 49 | print "\n$file:"; | ||
| 50 | $len=length($file)+1; | ||
| 51 | } | ||
| 52 | print " $dep"; | ||
| 53 | $len+=length($dep)+1; | ||
| 54 | } | ||
| 55 | } | ||
| 56 | |||
| 57 | print "\n"; | ||
