Makefiles: Eliminate the useless quiet_* functions.
authorCarl Worth <cworth@cworth.org>
Tue, 6 Apr 2010 17:00:30 +0000 (10:00 -0700)
committerCarl Worth <cworth@cworth.org>
Tue, 6 Apr 2010 21:36:31 +0000 (14:36 -0700)
With the original quiet function, there's an actual purpose (hiding
excessively long compiler command lines so that warnings and errors
from the compiler can be seen).

But with things like quiet_symlink there's nothing quieter. In fact
"SYMLINK" is longer than "ln -sf". So all this is doing is hiding the
actual command from the user for no real benefit.

The only actual reason we implemented the quiet_* functions was to be
able to neatly right-align the command name and left-align the arguments.

Let's give up on that, and just left-align everything, simplifying the
Makefiles considerably. Now, the only instances of a captialized command
name in the output is if there's some actually shortening of the command
itself.

Makefile.local
configure
emacs/Makefile.local
lib/Makefile.local

index ecb9ae0d81b11dd8f4f1f532be277d3f51244ee1..da31982c42dc73ef0de59df4c5f5a92b737b4042 100644 (file)
@@ -103,28 +103,20 @@ release-verify-newer: release-verify-version
 # 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:=)"  %12s $@\n" "$1 $2"; $($1)
-quiet_args = @printf $(quiet_DOC)$(eval quiet_DOC:=)"  %12s$2\n" $1; $($1) $2
+quiet = @printf $(quiet_DOC)$(eval quiet_DOC:=)"$1 $@\n"; $($(shell echo $1 | sed -e s'/ .*//'))
 endif
 # The user has explicitly enabled quiet compilation.
 ifeq ($(V),0)
-quiet = @printf "  %12s $@\n" "$1 $2"; $($1)
-quiet_args = @printf "  %12s$2\n" $1; $($1) $2
+quiet = @printf "$1 $@\n"; $($(shell echo $1 | sed -e s'/ .*//'))
 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,INSTALL-BIN,$1)
-quiet_install_data = $(call quiet_args,INSTALL-DATA,$1)
-quiet_symlink = $(call quiet_args,SYMLINK,$1)
+quiet ?= $($(shell echo $1 | sed -e s'/ .*//'))
 
 %.o: %.cc $(global_deps)
-       $(call quiet,CXX,$(CXXFLAGS)) -c $(FINAL_CXXFLAGS) $< -o $@
+       $(call quiet,CXX $(CXXFLAGS)) -c $(FINAL_CXXFLAGS) $< -o $@
 
 %.o: %.c $(global_deps)
-       $(call quiet,CC,$(CFLAGS)) -c $(FINAL_CFLAGS) $< -o $@
+       $(call quiet,CC $(CFLAGS)) -c $(FINAL_CFLAGS) $< -o $@
 
 %.elc: %.el
        $(call quiet,EMACS) --directory emacs -batch -f batch-byte-compile $<
@@ -173,22 +165,22 @@ notmuch_client_srcs =             \
 notmuch_client_modules = $(notmuch_client_srcs:.c=.o)
 
 notmuch: $(notmuch_client_modules) lib/libnotmuch.a
-       $(call quiet,CC,$(LDFLAGS)) $^ $(FINAL_LDFLAGS) -o $@
+       $(call quiet,CC $(CFLAGS)) $^ $(FINAL_LDFLAGS) -o $@
 
 notmuch-shared: $(notmuch_client_modules) lib/libnotmuch.so
-       $(call quiet,CC,$(LDFLAGS)) -Llib -lnotmuch $(notmuch_client_modules) $(FINAL_LDFLAGS) -o $@
+       $(call quiet,CC $(CFLAGS)) -Llib -lnotmuch $(notmuch_client_modules) $(FINAL_LDFLAGS) -o $@
 
 notmuch.1.gz: notmuch.1
-       $(call quiet,gzip) --stdout $^ > $@
+       gzip --stdout $^ > $@
 
 .PHONY: install
 install: all notmuch.1.gz
-       $(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-shared $(DESTDIR)$(prefix)/bin/notmuch)
-       $(call quiet_install_data, notmuch.1.gz $(DESTDIR)$(prefix)/share/man/man1/)
+       mkdir -p $(DESTDIR)$(prefix)/bin/
+       mkdir -p $(DESTDIR)$(libdir)/
+       mkdir -p $(DESTDIR)$(prefix)/include/
+       mkdir -p $(DESTDIR)$(prefix)/share/man/man1
+       install notmuch-shared $(DESTDIR)$(prefix)/bin/notmuch
+       install -m0644 notmuch.1.gz $(DESTDIR)$(prefix)/share/man/man1/
 ifeq ($(MAKECMDGOALS), install)
        @echo ""
        @echo "Notmuch is now installed."
@@ -204,18 +196,18 @@ endif
 
 .PHONY: install-desktop
 install-desktop:
-       $(call quiet,MKDIR) $(DESTDIR)$(desktop_dir)
+       mkdir -p $(DESTDIR)$(desktop_dir)
        desktop-file-install --mode 0644 --dir $(DESTDIR)$(desktop_dir) notmuch.desktop
 
 .PHONY: install-bash
 install-bash:
-       $(call quiet-mkdir, $(DESTDIR)$(bash_completion_dir))
-       $(call quiet_install_data, contrib/notmuch-completion.bash $(DESTDIR)$(bash_completion_dir)/notmuch)
+       mkdir -p $(DESTDIR)$(bash_completion_dir)
+       install -m0644 contrib/notmuch-completion.bash $(DESTDIR)$(bash_completion_dir)/notmuch
 
 .PHONY: install-zsh
 install-zsh:
-       $(call quiet_mkdir, $(DESTDIR)$(zsh_completion_dir))
-       $(call quiet_install_data, contrib/notmuch-completion.zsh $(DESTDIR)$(zsh_completion_dir)/notmuch)
+       mkdir -p $(DESTDIR)$(zsh_completion_dir)
+       install -m0644 contrib/notmuch-completion.zsh $(DESTDIR)$(zsh_completion_dir)/notmuch
 
 SRCS  := $(SRCS) $(notmuch_client_srcs)
 CLEAN := $(CLEAN) notmuch notmuch-shared $(notmuch_client_modules) notmuch.elc notmuch.1.gz
index df1636d2f576a4031f9b2e8d6cec9e2846120410..d56caaddd91cb2db29d92744f1977d232955feda 100755 (executable)
--- a/configure
+++ b/configure
@@ -279,21 +279,6 @@ CXX = ${CXX}
 # Command to execute emacs from Makefiles
 EMACS = emacs --quick
 
-# Command to execute gzip from Makefiles
-gzip = gzip
-
-# Command to create a directory
-MKDIR = install -d
-
-# Command to install an executable
-INSTALL-BIN = install
-
-# Command to install a non-executable file (documentation, etc.)
-INSTALL-DATA = 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}
 
index 76cc64f9b66711c7894461b1521a794620fd4e76..51d045c3e108a0478fc9ca908b9eb96633a41227 100644 (file)
@@ -14,8 +14,8 @@ emacs: $(emacs_bytecode)
 
 .PHONY: install-emacs
 install-emacs: install emacs
-       $(call quiet_mkdir, $(DESTDIR)/$(emacs_lispdir))
-       $(call quiet_install_data, $(emacs_sources) $(emacs_bytecode) $(DESTDIR)$(emacs_lispdir))
+       mkdir -p $(DESTDIR)/$(emacs_lispdir)
+       install -m0644 $(emacs_sources) $(emacs_bytecode) $(DESTDIR)$(emacs_lispdir)
        @echo ""
        @echo "The notmuch emacs client is now installed."
        @echo ""
index c98fb6734cc3ee98a3056909ebe5fde12fdb1629..03a458b250d05c84f6cef18e66320a3722148466 100644 (file)
@@ -51,23 +51,23 @@ $(dir)/libnotmuch.a: $(libnotmuch_modules)
        $(call quiet,AR) rcs $@ $^
 
 $(dir)/$(LIBNAME): $(libnotmuch_modules)
-       $(call quiet,CXX,$(LDFLAGS)) $^ $(FINAL_LDFLAGS) -shared -Wl,-soname=$(SONAME) -o $@
+       $(call quiet,CXX $(CXXFLAGS)) $^ $(FINAL_LDFLAGS) -shared -Wl,-soname=$(SONAME) -o $@
 
 $(dir)/$(SONAME): $(dir)/$(LIBNAME)
-       $(call quiet_symlink, $(LIBNAME) $@)
+       ln -sf $(LIBNAME) $@
 
 $(dir)/$(LINKER_NAME): $(dir)/$(SONAME)
-       $(call quiet_symlink, $(LIBNAME) $@)
+       ln -sf $(LIBNAME) $@
 
 install: install-$(dir)
 
 install-$(dir):
-       $(call quiet_mkdir, $(DESTDIR)$(libdir)/)
-       $(call quiet_install_data, $(dir)/$(LIBNAME) $(DESTDIR)$(libdir)/)
-       $(call quiet_symlink, $(LIBNAME) $(DESTDIR)$(libdir)/$(SONAME))
-       $(call quiet_symlink, $(LIBNAME) $(DESTDIR)$(libdir)/$(LINKER_NAME))
-       $(call quiet_mkdir, $(DESTDIR)$(prefix)/include/)
-       $(call quiet_install_data, $(dir)/notmuch.h $(DESTDIR)$(prefix)/include/)
+       mkdir -p $(DESTDIR)$(libdir)/
+       install -m0644 $(dir)/$(LIBNAME) $(DESTDIR)$(libdir)/
+       ln -sf $(LIBNAME) $(DESTDIR)$(libdir)/$(SONAME)
+       ln -sf $(LIBNAME) $(DESTDIR)$(libdir)/$(LINKER_NAME)
+       mkdir -p $(DESTDIR)$(prefix)/include/
+       install -m0644 $(dir)/notmuch.h $(DESTDIR)$(prefix)/include/
 
 SRCS  := $(SRCS) $(libnotmuch_c_srcs) $(libnotmuch_cxx_srcs)
 CLEAN := $(CLEAN) $(libnotmuch_modules) $(dir)/$(SONAME) $(dir)/$(LINKER_NAME) $(dir)$(LIBNAME) libnotmuch.a