#!/usr/bin/perl -w
#
# Program:  findsym.pl
#
# Synopsis: Generate a list of the libraries in which a symbol is defined or
#           referenced.
#
# Syntax:   findsym.pl <directory_with_libraries_in_it> <symbol>
#

# Give first option a name.
my $Directory = $ARGV[0];
my $Symbol = $ARGV[1];

# Open the directory and read its contents, sorting by name and differentiating
# by whether its a library (.a) or an object file (.o)
opendir DIR,$Directory;
my @files = readdir DIR;
closedir DIR;
@objects = grep(/l?i?b?LLVM.*\.[oa]$/,sort(@files));

# Gather definitions from the libraries
foreach $lib (@objects) {
  my $head = 0;
  open SYMS, 
    "nm $Directory/$lib | grep '$Symbol' | sort --key=3 | uniq |";
  while (<SYMS>) {
    if (!$head) { print "$lib:\n"; $head = 1; }
    chomp($_);
    print "  $_\n";
  }
  close SYMS;
}
