X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=Makefile.local;h=9505b7fee70b43b281bf5e6b428dfb7c522b14c2;hp=e75b6eae040d41b8195a59447fadfb0a03c41f9d;hb=040c3236afcf95bead0324a48c2e0b9cd7934993;hpb=c0c5645538d9dda84657602ee4189f4ff3ca1aeb diff --git a/Makefile.local b/Makefile.local index e75b6eae..9505b7fe 100644 --- a/Makefile.local +++ b/Makefile.local @@ -31,7 +31,9 @@ $(TAR_FILE): fi ; \ git archive --format=tar --prefix=$(PACKAGE)-$(VERSION)/ $$ref > $(TAR_FILE).tmp echo $(VERSION) > version.tmp - tar --append -f $(TAR_FILE).tmp --transform s_^_$(PACKAGE)-$(VERSION)/_ --transform 's_.tmp$$__' version.tmp + tar --owner root --group root --append -f $(TAR_FILE).tmp \ + --transform s_^_$(PACKAGE)-$(VERSION)/_ \ + --transform 's_.tmp$$__' version.tmp rm version.tmp gzip < $(TAR_FILE).tmp > $(TAR_FILE) @echo "Source is ready for release in $(TAR_FILE)" @@ -180,14 +182,14 @@ verify-newer: # user how to enable verbose compiles. ifeq ($(V),) quiet_DOC := "Use \"$(MAKE) V=1\" to see the verbose compile lines.\n" -quiet = @printf $(quiet_DOC)$(eval quiet_DOC:=)"$1 $@\n"; $($(shell echo $1 | sed -e s'/ .*//')) +quiet = @printf $(quiet_DOC)$(eval quiet_DOC:=)"$(1) $(or $(2),$@)\n"; $($(word 1, $(1))) endif # The user has explicitly enabled quiet compilation. ifeq ($(V),0) -quiet = @printf "$1 $@\n"; $($(shell echo $1 | sed -e s'/ .*//')) +quiet = @printf "$(1) $(or $(2),$@)\n"; $($(word 1, $(1))) endif # Otherwise, print the full command line. -quiet ?= $($(shell echo $1 | sed -e s'/ .*//')) +quiet ?= $($(word 1, $(1))) %.o: %.cc $(global_deps) @mkdir -p $(patsubst %/.,%,.deps/$(@D)) @@ -197,9 +199,17 @@ quiet ?= $($(shell echo $1 | sed -e s'/ .*//')) @mkdir -p $(patsubst %/.,%,.deps/$(@D)) $(call quiet,CC $(CPPFLAGS) $(CFLAGS)) -c $(FINAL_CFLAGS) $< -o $@ -MD -MP -MF .deps/$*.d +CPPCHECK=cppcheck +.stamps/cppcheck/%: % + @mkdir -p $(@D) + $(call quiet,CPPCHECK,$<) --template=gcc --error-exitcode=1 --quiet $< + @touch $@ + +CLEAN := $(CLEAN) .stamps + .PHONY : clean clean: - rm -rf $(CLEAN); rm -rf .deps + rm -rf $(CLEAN) .PHONY: distclean distclean: clean @@ -210,6 +220,7 @@ dataclean: distclean rm -rf $(DATACLEAN) notmuch_client_srcs = \ + $(notmuch_compat_srcs) \ command-line-arguments.c\ debugger.c \ status.c \ @@ -222,6 +233,7 @@ notmuch_client_srcs = \ notmuch-dump.c \ notmuch-insert.c \ notmuch-new.c \ + notmuch-reindex.c \ notmuch-reply.c \ notmuch-restore.c \ notmuch-search.c \ @@ -234,14 +246,13 @@ notmuch_client_srcs = \ sprinter-text.c \ query-string.c \ mime-node.c \ - crypto.c \ tag-util.c notmuch_client_modules = $(notmuch_client_srcs:.c=.o) notmuch.o: version.stamp -notmuch: $(notmuch_client_modules) lib/libnotmuch.a util/libutil.a parse-time-string/libparse-time-string.a +notmuch: $(notmuch_client_modules) lib/libnotmuch.a util/libnotmuch_util.a parse-time-string/libparse-time-string.a $(call quiet,CXX $(CFLAGS)) $^ $(FINAL_LIBNOTMUCH_LDFLAGS) -o $@ notmuch-shared: $(notmuch_client_modules) lib/$(LINKER_NAME) @@ -276,9 +287,20 @@ endif SRCS := $(SRCS) $(notmuch_client_srcs) CLEAN := $(CLEAN) notmuch notmuch-shared $(notmuch_client_modules) CLEAN := $(CLEAN) version.stamp notmuch-*.tar.gz.tmp +CLEAN := $(CLEAN) .deps DISTCLEAN := $(DISTCLEAN) .first-build-message Makefile.config sh.config +CPPCHECK_STAMPS := $(SRCS:%=.stamps/cppcheck/%) +.PHONY: cppcheck +ifeq ($(HAVE_CPPCHECK),1) +cppcheck: ${CPPCHECK_STAMPS} +else +cppcheck: + @echo "No cppcheck found during configure; skipping static checking" +endif + + DEPS := $(SRCS:%.c=.deps/%.d) DEPS := $(DEPS:%.cc=.deps/%.d) -include $(DEPS)