clean-depend.pl revision 55714
155714Skris#!/usr/local/bin/perl -w
255714Skris# Clean the dependency list in a makefile of standard includes...
355714Skris# Written by Ben Laurie <ben@algroup.co.uk> 19 Jan 1999
455714Skris
555714Skrisuse strict;
655714Skris
755714Skriswhile(<STDIN>) {
855714Skris    print;
955714Skris    last if /^# DO NOT DELETE THIS LINE/;
1055714Skris}
1155714Skris
1255714Skrismy %files;
1355714Skris
1455714Skriswhile(<STDIN>) {
1555714Skris    my ($file,$deps)=/^(.*): (.*)$/;
1655714Skris    next if !defined $deps;
1755714Skris    my @deps=split ' ',$deps;
1855714Skris    @deps=grep(!/^\/usr\/include/,@deps);
1955714Skris    @deps=grep(!/^\/usr\/lib\/gcc-lib/,@deps);
2055714Skris    push @{$files{$file}},@deps;
2155714Skris}
2255714Skris
2355714Skrismy $file;
2455714Skrisforeach $file (sort keys %files) {
2555714Skris    my $len=0;
2655714Skris    my $dep;
2755714Skris    foreach $dep (sort @{$files{$file}}) {
2855714Skris	$len=0 if $len+length($dep)+1 >= 80;
2955714Skris	if($len == 0) {
3055714Skris	    print "\n$file:";
3155714Skris	    $len=length($file)+1;
3255714Skris	}
3355714Skris	print " $dep";
3455714Skris	$len+=length($dep)+1;
3555714Skris    }
3655714Skris}
3755714Skris
3855714Skrisprint "\n";
39