The output from make is looking better all the time, (though the
columns still aren't lined up).
ifeq ($(V),)
quiet_DOC := "Use \"$(MAKE) V=1\" to see the verbose compile lines.\n"
quiet = @printf $(quiet_DOC)$(eval quiet_DOC:=)" $1 $2 $@\n"; $($1)
ifeq ($(V),)
quiet_DOC := "Use \"$(MAKE) V=1\" to see the verbose compile lines.\n"
quiet = @printf $(quiet_DOC)$(eval quiet_DOC:=)" $1 $2 $@\n"; $($1)
+quiet_args = @printf $(quiet_DOC)$(eval quiet_DOC:=)" $1 $2\n"; $($1) $2
endif
# The user has explicitly enabled quiet compilation.
ifeq ($(V),0)
quiet = @printf " $1 $2 $@\n"; $($1)
endif
# The user has explicitly enabled quiet compilation.
ifeq ($(V),0)
quiet = @printf " $1 $2 $@\n"; $($1)
+quiet_args = @printf " $1 $2\n"; $($1) $2
endif
# Otherwise, print the full command line.
quiet ?= $($1)
endif
# Otherwise, print the full command line.
quiet ?= $($1)
+quiet_args ?= $($1) $2
+
+quiet_mkdir = $(call quiet_args,MKDIR,$1)
+quiet_install_bin = $(call quiet_args,INSTBIN,$1)
+quiet_install_data = $(call quiet_args,INSTDATA,$1)
+quiet_symlink = $(call quiet_args,SYMLINK,$1)
%.o: %.cc $(global_deps)
$(call quiet,CXX,$(CXXFLAGS)) -c $(FINAL_CXXFLAGS) $< -o $@
%.o: %.cc $(global_deps)
$(call quiet,CXX,$(CXXFLAGS)) -c $(FINAL_CXXFLAGS) $< -o $@
$(call quiet,gzip) --stdout $^ > $@
install: all notmuch.1.gz
$(call quiet,gzip) --stdout $^ > $@
install: all notmuch.1.gz
- install -d $(DESTDIR)$(prefix)/bin/
- install -d $(DESTDIR)$(libdir)/
- install -d $(DESTDIR)$(prefix)/include/
- install -d $(DESTDIR)$(prefix)/share/man/man1
- install notmuch $(DESTDIR)$(prefix)/bin/
- install -m0644 notmuch.1.gz $(DESTDIR)$(prefix)/share/man/man1/
+ $(call quiet_mkdir, $(DESTDIR)$(prefix)/bin/)
+ $(call quiet_mkdir, $(DESTDIR)$(libdir)/)
+ $(call quiet_mkdir, $(DESTDIR)$(prefix)/include/)
+ $(call quiet_mkdir, $(DESTDIR)$(prefix)/share/man/man1)
+ $(call quiet_install_bin, notmuch $(DESTDIR)$(prefix)/bin/)
+ $(call quiet_install_data, notmuch.1.gz $(DESTDIR)$(prefix)/share/man/man1/)
ifeq ($(MAKECMDGOALS), install)
@echo ""
@echo "Notmuch is now installed."
ifeq ($(MAKECMDGOALS), install)
@echo ""
@echo "Notmuch is now installed."
- install -d $(DESTDIR)$(desktop_dir)
+ $(call quiet,MKDIR) $(DESTDIR)$(desktop_dir)
desktop-file-install --mode 0644 --dir $(DESTDIR)$(desktop_dir) notmuch.desktop
install-bash:
desktop-file-install --mode 0644 --dir $(DESTDIR)$(desktop_dir) notmuch.desktop
install-bash:
- install -d $(DESTDIR)$(bash_completion_dir)
- install -m0644 contrib/notmuch-completion.bash \
- $(DESTDIR)$(bash_completion_dir)/notmuch
+ $(call quiet-mkdir, $(DESTDIR)$(bash_completion_dir))
+ $(call quiet_install_data, contrib/notmuch-completion.bash $(DESTDIR)$(bash_completion_dir)/notmuch)
- install -d $(DESTDIR)$(zsh_completion_dir)
- install -m0644 contrib/notmuch-completion.zsh \
- $(DESTDIR)$(zsh_completion_dir)/notmuch
+ $(call quiet_mkdir, $(DESTDIR)$(zsh_completion_dir))
+ $(call quiet_install_data, contrib/notmuch-completion.zsh $(DESTDIR)$(zsh_completion_dir)/notmuch)
SRCS := $(SRCS) $(notmuch_client_srcs)
CLEAN := $(CLEAN) notmuch $(notmuch_client_modules) notmuch.elc notmuch.1.gz
SRCS := $(SRCS) $(notmuch_client_srcs)
CLEAN := $(CLEAN) notmuch $(notmuch_client_modules) notmuch.elc notmuch.1.gz
# Command to execute gzip from Makefiles
gzip = gzip
# Command to execute gzip from Makefiles
gzip = gzip
+# Command to create a directory
+MKDIR = install -d
+
+# Command to install an executable
+INSTBIN = install
+
+# Command to install a non-executable file (documentation, etc.)
+INSTDATA = install -m0644
+
+# Command to create a symbolic link
+SYMLINK = ln -sf
+
# Default FLAGS for C compiler (can be overridden by user such as "make CFLAGS=-g")
CFLAGS = ${CFLAGS}
# Default FLAGS for C compiler (can be overridden by user such as "make CFLAGS=-g")
CFLAGS = ${CFLAGS}
emacs: $(emacs_bytecode)
install-emacs: install emacs
emacs: $(emacs_bytecode)
install-emacs: install emacs
- install -d $(DESTDIR)/$(emacs_lispdir)
- install -m0644 $(emacs_sources) $(emacs_bytecode) $(DESTDIR)$(emacs_lispdir)
+ $(call quiet_mkdir, $(DESTDIR)/$(emacs_lispdir))
+ $(call quiet_install_data, $(emacs_sources) $(emacs_bytecode) $(DESTDIR)$(emacs_lispdir))
@echo ""
@echo "The notmuch emacs client is now installed."
@echo ""
@echo ""
@echo "The notmuch emacs client is now installed."
@echo ""
$(call quiet,CXX,$(LDFLAGS)) $^ $(FINAL_LDFLAGS) -shared -Wl,-soname=$(SONAME) -o $@
$(dir)/libnotmuch.so: $(dir)/$(SONAME)
$(call quiet,CXX,$(LDFLAGS)) $^ $(FINAL_LDFLAGS) -shared -Wl,-soname=$(SONAME) -o $@
$(dir)/libnotmuch.so: $(dir)/$(SONAME)
+ $(call quiet_symlink, $(SONAME) $@)
install: install-$(dir)
install-$(dir):
install: install-$(dir)
install-$(dir):
- install -d $(DESTDIR)$(libdir)/
- install $(dir)/$(SONAME) $(DESTDIR)$(libdir)/
- install $(dir)/notmuch.h $(DESTDIR)$(prefix)/include/
- ln -sf $(SONAME) $(DESTDIR)$(libdir)/libnotmuch.so
+ $(call quiet_mkdir, $(DESTDIR)$(libdir)/)
+ $(call quiet_install_data, $(dir)/$(SONAME) $(DESTDIR)$(libdir)/)
+ $(call quiet_install_data, $(dir)/notmuch.h $(DESTDIR)$(prefix)/include/)
+ $(call quiet_symlink, $(SONAME) $(DESTDIR)$(libdir)/libnotmuch.so)
SRCS := $(SRCS) $(libnotmuch_c_srcs) $(libnotmuch_cxx_srcs)
CLEAN := $(CLEAN) $(libnotmuch_modules) $(dir)/$(SONAME) $(dir)/libnotmuch.so *.so
SRCS := $(SRCS) $(libnotmuch_c_srcs) $(libnotmuch_cxx_srcs)
CLEAN := $(CLEAN) $(libnotmuch_modules) $(dir)/$(SONAME) $(dir)/libnotmuch.so *.so