summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Jeff King <peff@peff.net>2016-12-14 09:28:04 -0500
committerLibravatar Junio C Hamano <gitster@pobox.com>2016-12-14 09:54:49 -0800
commite6fc85b11f402ababa4b46ec1121a662ce1fce8e (patch)
treec9ea28136dc5766fb2030c699ea0754f2a0ebbce
parentMakefile: reformat FIND_SOURCE_FILES (diff)
downloadtgif-e6fc85b11f402ababa4b46ec1121a662ce1fce8e.tar.xz
Makefile: exclude test cruft from FIND_SOURCE_FILES
The test directory may contain three types of files that match our patterns: 1. Helper programs in t/helper. 2. Sample data files (e.g., t/t4051/hello.c). 3. Untracked cruft in trash directories and t/perf/build. We want to match (1), but not the other two, as they just clutter up the list. For the ls-files method, we can drop (2) with a negative pathspec. We do not have to care about (3), since ls-files will not list untracked files. For `find`, we can match both cases with `-prune` patterns. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--Makefile8
1 files changed, 7 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index f42b1953d8..001126931d 100644
--- a/Makefile
+++ b/Makefile
@@ -2150,9 +2150,15 @@ po/build/locale/%/LC_MESSAGES/git.mo: po/%.po
$(QUIET_MSGFMT)mkdir -p $(dir $@) && $(MSGFMT) -o $@ $<
FIND_SOURCE_FILES = ( \
- git ls-files '*.[hcS]' 2>/dev/null || \
+ git ls-files \
+ '*.[hcS]' \
+ ':!*[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 build -type d -prune \) \
+ -o \( -name 'trash*' -type d -prune \) \
-o \( -name '*.[hcS]' -type f -print \) \
)