]> git.notmuchmail.org Git - notmuch/blobdiff - test/Makefile.local
test: suppress diff for broken test without V=1
[notmuch] / test / Makefile.local
index 6a9f15e81500fc9bec9a5c1802c99dcb451eace3..4680597292cf5bdb7bb8f593769842e8f12f66b7 100644 (file)
@@ -2,7 +2,9 @@
 
 dir := test
 
-extra_cflags += -I.
+# save against changes in $(dir)
+test_src_dir := $(dir)
+extra_cflags += -I$(srcdir)
 
 smtp_dummy_srcs =              \
        $(notmuch_compat_srcs)  \
@@ -11,50 +13,68 @@ smtp_dummy_srcs =           \
 smtp_dummy_modules = $(smtp_dummy_srcs:.c=.o)
 
 $(dir)/arg-test: $(dir)/arg-test.o command-line-arguments.o util/libutil.a
-       $(call quiet,CC) -I. $^ -o $@
+       $(call quiet,CC) $^ -o $@ $(LDFLAGS)
 
 $(dir)/hex-xcode: $(dir)/hex-xcode.o command-line-arguments.o util/libutil.a
-       $(call quiet,CC) -I. $^ -o $@ -ltalloc
+       $(call quiet,CC) $^ -o $@ $(LDFLAGS) $(TALLOC_LDFLAGS)
 
 random_corpus_deps =  $(dir)/random-corpus.o  $(dir)/database-test.o \
-                       notmuch-config.o command-line-arguments.o \
+                       notmuch-config.o status.o command-line-arguments.o \
                        lib/libnotmuch.a util/libutil.a \
                        parse-time-string/libparse-time-string.a
 
 $(dir)/random-corpus: $(random_corpus_deps)
-       $(call quiet,CC) $(CFLAGS_FINAL) $^ -o $@ $(CONFIGURE_LDFLAGS)
+       $(call quiet,CXX) $^ -o $@ $(LDFLAGS) $(CONFIGURE_LDFLAGS)
 
 $(dir)/smtp-dummy: $(smtp_dummy_modules)
-       $(call quiet,CC) $^ -o $@
+       $(call quiet,CC) $^ -o $@ $(LDFLAGS)
 
-$(dir)/symbol-test: $(dir)/symbol-test.o
-       $(call quiet,CXX) $^ -o $@ -Llib -lnotmuch $(XAPIAN_LDFLAGS)
+$(dir)/symbol-test: $(dir)/symbol-test.o lib/$(LINKER_NAME)
+       $(call quiet,CXX) $^ -o $@ $(LDFLAGS) -Llib -lnotmuch $(XAPIAN_LDFLAGS)
 
 $(dir)/parse-time: $(dir)/parse-time.o parse-time-string/parse-time-string.o
-       $(call quiet,CC) $^ -o $@
+       $(call quiet,CC) $^ -o $@ $(LDFLAGS)
+
+$(dir)/make-db-version: $(dir)/make-db-version.o
+       $(call quiet,CXX) $^ -o $@ $(LDFLAGS) $(XAPIAN_LDFLAGS)
+
+$(dir)/ghost-report: $(dir)/ghost-report.o
+       $(call quiet,CXX) $^ -o $@ $(LDFLAGS) $(XAPIAN_LDFLAGS)
 
 .PHONY: test check
 
-TEST_BINARIES=$(dir)/arg-test \
-             $(dir)/hex-xcode \
-             $(dir)/random-corpus \
-             $(dir)/parse-time \
-             $(dir)/smtp-dummy \
-             $(dir)/symbol-test
+test_main_srcs=$(dir)/arg-test.c \
+             $(dir)/hex-xcode.c \
+             $(dir)/random-corpus.c \
+             $(dir)/parse-time.c \
+             $(dir)/smtp-dummy.c \
+             $(dir)/symbol-test.cc \
+             $(dir)/make-db-version.cc \
+             $(dir)/ghost-report.cc
+
+test_srcs=$(test_main_srcs) $(dir)/database-test.c
+
+TEST_BINARIES := $(test_main_srcs:.c=)
+TEST_BINARIES := $(TEST_BINARIES:.cc=)
 
 test-binaries: $(TEST_BINARIES)
 
 test:  all test-binaries
-       @${dir}/notmuch-test $(OPTIONS)
+ifeq ($V,)
+       @echo 'Use "$(MAKE) V=1" to see the details for passing and known broken tests.'
+       @env NOTMUCH_TEST_QUIET=1 ${test_src_dir}/notmuch-test $(OPTIONS)
+else
+# The user has explicitly enabled quiet execution.
+ifeq ($V,0)
+       @env NOTMUCH_TEST_QUIET=1 ${test_src_dir}/notmuch-test $(OPTIONS)
+else
+       @${test_src_dir}/notmuch-test $(OPTIONS)
+endif
+endif
 
 check: test
 
-SRCS := $(SRCS) $(smtp_dummy_srcs)
-CLEAN := $(CLEAN) $(dir)/smtp-dummy $(dir)/smtp-dummy.o \
-        $(dir)/symbol-test $(dir)/symbol-test.o \
-        $(dir)/arg-test $(dir)/arg-test.o \
-        $(dir)/hex-xcode $(dir)/hex-xcode.o \
+SRCS := $(SRCS) $(test_srcs)
+CLEAN += $(TEST_BINARIES) $(addsuffix .o,$(TEST_BINARIES)) \
         $(dir)/database-test.o \
-        $(dir)/random-corpus $(dir)/random-corpus.o \
-        $(dir)/parse-time $(dir)/parse-time.o \
-        $(dir)/corpus.mail $(dir)/test-results $(dir)/tmp.*
+        $(dir)/corpora.mail $(dir)/test-results $(dir)/tmp.*