X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=utils%2Fcountloc.sh;h=4d1b775d74aad808ceb69d0542f12c58bed68b2a;hb=817affccd5aa96e3063c0611c319b0da63fb4d07;hp=cc67afe0336c685301030d1b82ecf4989b0855e6;hpb=b27b78f6a4be0eb96b79c818490ca924d18d50b1;p=oota-llvm.git diff --git a/utils/countloc.sh b/utils/countloc.sh index cc67afe0336..4d1b775d74a 100755 --- a/utils/countloc.sh +++ b/utils/countloc.sh @@ -3,8 +3,8 @@ # # 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 file is distributed under the University of Illinois Open Source +# License. See LICENSE.TXT for details. # ##===----------------------------------------------------------------------===## # @@ -12,16 +12,29 @@ # (excluding certain things), runs "wc -l" on them to get the number of lines in # each file and then sums up and prints the total with awk. # -# The script takes no arguments but does expect to be run from the top llvm -# source directory. +# The script takes one optional option, -topdir, which specifies the top llvm +# source directory. If it is not specified then the llvm-config tool is +# consulted to find top source dir. # -TOPDIR=`pwd | sed -e 's#\(.*/llvm\).*#\1#'` +# Note that the implementation is based on llvmdo. See that script for more +# details. +##===----------------------------------------------------------------------===## + +if test $# -gt 1 ; then + if test "$1" = "-topdir" ; then + TOPDIR="$2" + shift; shift; + else + TOPDIR=`llvm-config --src-root` + fi +fi + if test -d "$TOPDIR" ; then cd $TOPDIR - ./utils/llvmdo -dirs "include lib tools test utils examples" wc -l | awk '\ + ./utils/llvmdo -topdir "$TOPDIR" -dirs "include lib tools test utils examples" -code-only wc -l | awk '\ BEGIN { loc=0; } \ { loc += $1; } \ END { print loc; }' else - echo "Can't find LLVM top directory in $TOPDIR" + echo "Can't find LLVM top directory" fi