Changed to catch stderror of dejagnu and fixed missing quote.
[oota-llvm.git] / utils / llvmgrep
index 18af4346e75e908e2f12a4483198bec88a437652..a1f77636c4fc518b4047c4bf1246b9bf5e18fb27 100755 (executable)
@@ -1,10 +1,32 @@
 #!/bin/sh
-# This is useful because it prints out all of the source files.  Useful for
-# greps.
+##===- 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
-  ./utils/llvmdo -dirs "include lib tools utils docs examples test projects" egrep -H -n "$*"
+  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