-# -*- makefile -*-
+# -*- makefile-gmake -*-
dir := test
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) $^ -o $@
+$(dir)/arg-test: $(dir)/arg-test.o command-line-arguments.o util/libnotmuch_util.a
+ $(call quiet,CC) $^ -o $@ $(LDFLAGS)
-$(dir)/hex-xcode: $(dir)/hex-xcode.o command-line-arguments.o util/libutil.a
- $(call quiet,CC) $^ -o $@ -ltalloc
+$(dir)/message-id-parse: $(dir)/message-id-parse.o lib/libnotmuch.a util/libnotmuch_util.a
+ $(call quiet,CC) $^ -o $@ $(LDFLAGS) $(TALLOC_LDFLAGS)
+
+$(dir)/hex-xcode: $(dir)/hex-xcode.o command-line-arguments.o util/libnotmuch_util.a
+ $(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 \
- lib/libnotmuch.a util/libutil.a \
+ notmuch-config.o status.o command-line-arguments.o \
+ lib/libnotmuch.a util/libnotmuch_util.a \
parse-time-string/libparse-time-string.a
$(dir)/random-corpus: $(random_corpus_deps)
- $(call quiet,CXX) $(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 lib/$(LINKER_NAME)
- $(call quiet,CXX) $^ -o $@ -Llib -lnotmuch $(XAPIAN_LDFLAGS)
+ $(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)/have-compact: Makefile.config
-ifeq ($(HAVE_XAPIAN_COMPACT),1)
- ln -sf /bin/true $@
-else
- ln -sf /bin/false $@
-endif
+$(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)/have-compact \
- $(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 \
+ $(dir)/message-id-parse.c
+
+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
- @${test_src_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 $(NOTMUCH_SRCDIR)/$(test_src_dir)/notmuch-test $(OPTIONS)
+else
+# The user has explicitly enabled quiet execution.
+ifeq ($V,0)
+ @env NOTMUCH_TEST_QUIET=1 $(NOTMUCH_SRCDIR)/$(test_src_dir)/notmuch-test $(OPTIONS)
+else
+ @$(NOTMUCH_SRCDIR)/$(test_src_dir)/notmuch-test $(OPTIONS)
+endif
+endif
check: test
-SRCS := $(SRCS) $(smtp_dummy_srcs)
+SRCS := $(SRCS) $(test_srcs)
CLEAN += $(TEST_BINARIES) $(addsuffix .o,$(TEST_BINARIES)) \
$(dir)/database-test.o \
- $(dir)/corpus.mail $(dir)/test-results $(dir)/tmp.*
+ $(dir)/test-results $(dir)/tmp.*