X-Git-Url: http://plrg.eecs.uci.edu/git/?p=oota-llvm.git;a=blobdiff_plain;f=utils%2Fcountloc.sh;h=4d1b775d74aad808ceb69d0542f12c58bed68b2a;hp=fe77de9184621a8ffa4b14dd8fdcbc5e91760ed1;hb=bf390b05bc5c3674520ae480af69d1a935a06f2b;hpb=181e65dff10d7c06ae61e35f79003ea79186635e diff --git a/utils/countloc.sh b/utils/countloc.sh index fe77de91846..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,20 +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 somewhere in -# 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. # # Note that the implementation is based on llvmdo. See that script for more # details. ##===----------------------------------------------------------------------===## -TOPDIR=`pwd | sed -e 's#\(.*/llvm\).*#\1#'` +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