#!/bin/sh
##===- utils/llvmgrep - Counts Lines Of Code -----------------*- Script -*-===##
# 
#                     The LLVM Compiler Infrastructure
#
# This file was developed by Reid Spencer and is distributed under the 
# University of Illinois Open Source License. See LICENSE.TXT for details.
# 
##===----------------------------------------------------------------------===##
#
# This script searches your srcdir for an egrep style pattern. This can quickly
# help you build a list of the places you need to modify when changing a header
# or other "global" name. The only argument is the pattern you want to search
# for. It should be quoted to escape shell interpretation of the pattern's
# special characters.
#
# Note that the implementation is based on llvmdo. See that script for more
# details.
##===----------------------------------------------------------------------===##

TOPDIR=`pwd | sed -e 's#\(.*/llvm\).*#\1#'`
if test -d "$TOPDIR" ; then
  cd $TOPDIR
  case `uname -s` in
    SunOS) grep_cmd="ggrep -H -n" ;;
    Linux) grep_cmd="egrep -H -n" ;;
    *) grep_cmd="egrep -l -n" ;;
  esac
  ./utils/llvmdo -dirs "include lib tools utils docs examples test projects" $grep_cmd "$*"
else
  echo "Can't find LLVM top directory in $TOPDIR"
fi
