Makefiles: Make the install rules quiet like the compilation rules.

The output from make is looking better all the time, (though the
columns still aren't lined up).
This commit is contained in:
Carl Worth 2010-03-31 23:54:21 -07:00
parent e7131a5983
commit 33d5cc415e
4 changed files with 38 additions and 20 deletions

View file

@ -39,13 +39,21 @@ endif
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)
quiet_args = @printf " $1 $2\n"; $($1) $2
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 $@
@ -105,12 +113,12 @@ notmuch.1.gz: notmuch.1
$(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."
@ -125,18 +133,16 @@ ifeq ($(MAKECMDGOALS), install)
endif
install-desktop:
install -d $(DESTDIR)$(desktop_dir)
$(call quiet,MKDIR) $(DESTDIR)$(desktop_dir)
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-zsh:
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

12
configure vendored
View file

@ -282,6 +282,18 @@ EMACS = emacs --quick
# 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}

View file

@ -6,8 +6,8 @@ emacs_bytecode := $(subst .el,.elc,$(emacs_sources))
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 ""

View file

@ -25,15 +25,15 @@ $(dir)/$(SONAME) : $(libnotmuch_modules)
$(call quiet,CXX,$(LDFLAGS)) $^ $(FINAL_LDFLAGS) -shared -Wl,-soname=$(SONAME) -o $@
$(dir)/libnotmuch.so: $(dir)/$(SONAME)
ln -fs $(SONAME) $@
$(call quiet_symlink, $(SONAME) $@)
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