aboutsummaryrefslogtreecommitdiff
path: root/utils/countloc.sh
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2006-08-14 18:49:05 +0000
committerReid Spencer <rspencer@reidspencer.com>2006-08-14 18:49:05 +0000
commitca7592a1ba86854a1f9ba2b3e442427bed20d5bc (patch)
tree2bd02729d11e3d35ce3d7149f025ad3ad1b12fb7 /utils/countloc.sh
parente6dd6a11d172d2efb11ccbe2b1264244b6f02a1b (diff)
Make all tools that use llvmdo have a -topdir option that allows the top
source dir for LLVM to be specified explicitly. This removes the dependency on the llvm-config script. If the option is not given, then the scripts use llvm-config which should be both built and in the PATH. This arrangement provides a useful default for most developers but also allows the nightly tester to execute countloc.sh before llvm-config is built and without altering the PATH. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29663 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/countloc.sh')
-rwxr-xr-xutils/countloc.sh19
1 files changed, 14 insertions, 5 deletions
diff --git a/utils/countloc.sh b/utils/countloc.sh
index 95574cb446..988e80360a 100755
--- a/utils/countloc.sh
+++ b/utils/countloc.sh
@@ -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=`llvm-config --src-root`
+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" -code-only 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