X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=utils%2Fllvmgrep;h=540f0598579dc2fa39476a0ded87cbd725540435;hb=1922a11907346024439ee653d076cf5823633943;hp=0b3553e1443aae02b4c9ff5c6ad1d85226ad8302;hpb=6a1e0e6c7bd8080ab429817aeeb278f281111f64;p=oota-llvm.git diff --git a/utils/llvmgrep b/utils/llvmgrep index 0b3553e1443..540f0598579 100755 --- a/utils/llvmgrep +++ b/utils/llvmgrep @@ -1,24 +1,39 @@ #!/bin/sh -# This is useful because it prints out all of the source files. Useful for -# greps. -PATTERN="$*" -TOPDIR=`pwd | sed -e 's#(.*/llvm).*#$1#'` +##===- utils/llvmgrep - Counts Lines Of Code -----------------*- Script -*-===## +# +# The LLVM Compiler Infrastructure +# +# This file 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. +##===----------------------------------------------------------------------===## + +if test "$1" = "-topdir" ; then + TOPDIR="$2" + shift; shift; +else + TOPDIR=`llvm-config --src-root` +fi + if test -d "$TOPDIR" ; then cd $TOPDIR - find docs include lib tools utils projects -type f \ - \( -path '*/doxygen/*' -o -path '*/Burg/*' \) -prune -o \ - -name '*.[cdhylt]*' \ - \! -name '*~' \ - \! -name '#*' \ - \! -name '*.ll' \ - \! -name '*.d' \ - \! -name '*.dir' \ - \! -name 'Sparc.burm.c' \ - \! -name 'llvmAsmParser.cpp' \ - \! -name 'llvmAsmParser.h' \ - \! -name 'FileParser.cpp' \ - \! -name 'FileParser.h' \ - -exec egrep -H -n "$PATTERN" {} \; + case `uname -s` in + SunOS) grep_cmd="ggrep -H -n" ;; + Linux) grep_cmd="egrep -H -n" ;; + *) grep_cmd="egrep -l -n" ;; + esac + ./utils/llvmdo -topdir "$TOPDIR" \ + -dirs "include lib tools utils docs examples test unittests projects cmake" $grep_cmd "$*" else - echo "Can't find LLVM top directory in $TOPDIR" + echo "Can't find LLVM top directory" fi