summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorLibravatar Jeff King <peff@peff.net>2016-12-14 09:29:44 -0500
committerLibravatar Junio C Hamano <gitster@pobox.com>2016-12-14 09:54:49 -0800
commit8fa2043293831402b84c3446efa62640c01c8121 (patch)
treed5c6affd0863cdc83deb6ce3aa17f1cd23375aff /Makefile
parentMakefile: exclude test cruft from FIND_SOURCE_FILES (diff)
downloadtgif-8fa2043293831402b84c3446efa62640c01c8121.tar.xz
Makefile: match shell scripts in FIND_SOURCE_FILES
We feed FIND_SOURCE_FILES to ctags to help developers navigate to particular functions, but we only feed C source code. The same feature can be helpful when working with shell scripts (especially the test suite). Modern versions of ctags know how to parse shell scripts; we just need to feed the filenames to it. This patch specifically avoids including the individual test scripts themselves. Those are unlikely to be of interest, and there are a lot of them to process. It does pick up test-lib.sh and test-lib-functions.sh. Note that our negative pathspec already excludes the individual scripts for the ls-files case, but we need to loosen the `find` rule to match it. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile4
1 files changed, 3 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 001126931d..ef8de4a754 100644
--- a/Makefile
+++ b/Makefile
@@ -2152,14 +2152,16 @@ po/build/locale/%/LC_MESSAGES/git.mo: po/%.po
FIND_SOURCE_FILES = ( \
git ls-files \
'*.[hcS]' \
+ '*.sh' \
':!*[tp][0-9][0-9][0-9][0-9]*' \
2>/dev/null || \
$(FIND) . \
\( -name .git -type d -prune \) \
- -o \( -name '[tp][0-9][0-9][0-9][0-9]' -type d -prune \) \
+ -o \( -name '[tp][0-9][0-9][0-9][0-9]*' -prune \) \
-o \( -name build -type d -prune \) \
-o \( -name 'trash*' -type d -prune \) \
-o \( -name '*.[hcS]' -type f -print \) \
+ -o \( -name '*.sh' -type f -print \) \
)
$(ETAGS_TARGET): FORCE