Crombie Tools
depends.pl
Go to the documentation of this file.
1 #! /usr/bin/env perl
2 
3 # Get the dependecies for a source file
4 
5 sub uniq_sort {
6  my %seen;
7  return sort(grep {! $seen{$_}++ } @_);
8 }
9 
10 sub depends {
11  my @output;
12  open(my $check, '<', $_[0]);
13  while(my $line = <$check>) {
14  if ($line =~ /#include "(crombie\/.*)"/) {
15  my $file = "include/$1";
16  push @output, $file;
17  push @output, depends($file);
18  }
19  }
20  return uniq_sort @output;
21 }
22 
23 foreach my $file (depends $ARGV[0]) {
24  print "$ENV{'CROMBIEPATH'}/src/$file ";
25 }
26 
27 print "$ARGV[0]\n";