Prefer $(info) to @echo
Have GNU Make output some diagnostics directly, instead of forking and execing a shell to do it. * GNUmakefile (help): * doc/lispref/two-volume.make (vol2.pdf, elisp2med-init) (elisp2-init): * doc/misc/Makefile.in (echo-info, echo-sources): * lib-src/Makefile.in (archlibdir, install, check): * src/verbose.mk.in (AM_V_AR, AM_V_CC, AM_V_CXX, AM_V_CCLD) (AM_V_CXXLD, AM_V_ELC, AM_V_ELN, AM_V_GEN, AM_V_GLOBALS) (AM_V_RC): * test/Makefile.in (subdirs, subdir-targets): Prefer $(info) to @echo. * GNUmakefile (MAKECMDGOALS, configure, Makefile): Prefer $(warning) to @echo >&2. * src/verbose.mk.in (AM_V_ELN): Output target, like the others.
This commit is contained in:
parent
a34650acff
commit
eaa44ca40e
6 changed files with 56 additions and 56 deletions
62
GNUmakefile
62
GNUmakefile
|
@ -36,31 +36,31 @@
|
|||
|
||||
ifeq (help,$(filter help,$(MAKECMDGOALS)))
|
||||
help:
|
||||
@echo "NOTE: This is a brief summary of some common make targets."
|
||||
@echo "For more detailed information, please read the files INSTALL,"
|
||||
@echo "INSTALL.REPO, Makefile or visit this URL:"
|
||||
@echo "https://www.gnu.org/prep/standards/html_node/Standard-Targets.html"
|
||||
@echo ""
|
||||
@echo "make all -- compile and build Emacs"
|
||||
@echo "make install -- install Emacs"
|
||||
@echo "make TAGS -- update tags tables"
|
||||
@echo "make clean -- delete built files but preserve configuration"
|
||||
@echo "make mostlyclean -- like 'make clean', but leave those files that"
|
||||
@echo " usually do not need to be recompiled"
|
||||
@echo "make distclean -- delete all build and configuration files,"
|
||||
@echo " leave only files included in source distribution"
|
||||
@echo "make maintainer-clean -- delete almost everything that can be regenerated"
|
||||
@echo "make extraclean -- like maintainer-clean, and also delete"
|
||||
@echo " backup and autosave files"
|
||||
@echo "make bootstrap -- delete all compiled files to force a new bootstrap"
|
||||
@echo " from a clean slate, then build in the normal way"
|
||||
@echo "make uninstall -- remove files installed by 'make install'"
|
||||
@echo "make check -- run the Emacs test suite"
|
||||
@echo "make docs -- generate Emacs documentation in info format"
|
||||
@echo "make html -- generate documentation in html format"
|
||||
@echo "make ps -- generate documentation in ps format"
|
||||
@echo "make pdf -- generate documentation in pdf format "
|
||||
@exit
|
||||
$(info $ NOTE: This is a brief summary of some common make targets.)
|
||||
$(info $ For more detailed information, please read the files INSTALL,)
|
||||
$(info $ INSTALL.REPO, Makefile or visit this URL:)
|
||||
$(info $ https://www.gnu.org/prep/standards/html_node/Standard-Targets.html)
|
||||
$(info $ )
|
||||
$(info $ make all -- compile and build Emacs)
|
||||
$(info $ make install -- install Emacs)
|
||||
$(info $ make TAGS -- update tags tables)
|
||||
$(info $ make clean -- delete built files but preserve configuration)
|
||||
$(info $ make mostlyclean -- like 'make clean', but leave those files that)
|
||||
$(info $ usually do not need to be recompiled)
|
||||
$(info $ make distclean -- delete all build and configuration files,)
|
||||
$(info $ leave only files included in source distribution)
|
||||
$(info $ make maintainer-clean -- delete almost everything that can be regenerated)
|
||||
$(info $ make extraclean -- like maintainer-clean, and also delete)
|
||||
$(info $ backup and autosave files)
|
||||
$(info $ make bootstrap -- delete all compiled files to force a new bootstrap)
|
||||
$(info $ from a clean slate, then build in the normal way)
|
||||
$(info $ make uninstall -- remove files installed by 'make install')
|
||||
$(info $ make check -- run the Emacs test suite)
|
||||
$(info $ make docs -- generate Emacs documentation in info format)
|
||||
$(info $ make html -- generate documentation in html format)
|
||||
$(info $ make ps -- generate documentation in ps format)
|
||||
$(info $ make pdf -- generate documentation in pdf format )
|
||||
@:
|
||||
|
||||
.PHONY: help
|
||||
|
||||
|
@ -79,7 +79,7 @@ else
|
|||
ifeq ($(filter-out %clean,$(or $(MAKECMDGOALS),default)),)
|
||||
|
||||
$(MAKECMDGOALS):
|
||||
@echo >&2 'No Makefile; skipping $@.'
|
||||
$(warning No Makefile; skipping $@.)
|
||||
|
||||
else
|
||||
|
||||
|
@ -97,18 +97,18 @@ default $(ORDINARY_GOALS): Makefile
|
|||
.NOTPARALLEL:
|
||||
|
||||
configure:
|
||||
@echo >&2 'There seems to be no "configure" file in this directory.'
|
||||
@echo >&2 Running ./autogen.sh ...
|
||||
$(warning There seems to be no "configure" file in this directory.)
|
||||
$(warning Running ./autogen.sh ...)
|
||||
./autogen.sh
|
||||
@echo >&2 '"configure" file built.'
|
||||
|
||||
Makefile: configure
|
||||
@echo >&2 'There seems to be no Makefile in this directory.'
|
||||
$(warning There seems to be no Makefile in this directory.)
|
||||
ifeq ($(configure),default)
|
||||
@echo >&2 'Running ./configure ...'
|
||||
$(warning Running ./configure ...)
|
||||
./configure
|
||||
else
|
||||
@echo >&2 'Running ./configure '$(configure)'...'
|
||||
$(warning Running ./configure $(configure)...)
|
||||
./configure $(configure)
|
||||
endif
|
||||
@echo >&2 'Makefile built.'
|
||||
|
|
|
@ -35,7 +35,7 @@ vol1.pdf: elisp1med-fns-ready elisp1med-aux-ready elisp1med-toc-ready
|
|||
$(tex1)
|
||||
#
|
||||
vol2.pdf: elisp2med-fns-ready elisp2med-aux-ready elisp2med-toc-ready
|
||||
@echo "Final TeX run for volume 2..."
|
||||
$(info Final TeX run for volume 2...)
|
||||
cp elisp2med-toc-ready elisp2-toc-ready.toc
|
||||
cp elisp2med-fns-ready vol2.fns
|
||||
cp elisp2med-aux-ready vol2.aux
|
||||
|
@ -123,7 +123,7 @@ elisp1med-init: elisp1-fns-ready elisp1-aux-ready elisp1init-toc-ready $(texinfo
|
|||
mv vol1.toc elisp1med-toc
|
||||
#
|
||||
elisp2med-init: elisp2-fns-ready elisp2-aux-ready elisp2init-toc-ready $(texinfodir)/texinfo.tex
|
||||
@echo "Final TeX run for volume 2..."
|
||||
$(info Final TeX run for volume 2...)
|
||||
cp elisp2init-toc-ready elisp2-toc-ready.toc
|
||||
cp elisp2-fns-ready vol2.fns
|
||||
cp elisp2-aux-ready vol2.aux
|
||||
|
@ -211,7 +211,7 @@ elisp1-init: elisp.texi
|
|||
touch $@
|
||||
#
|
||||
elisp2-init: elisp.texi
|
||||
@echo "Initial TeX run for volume 2..."
|
||||
$(info Initial TeX run for volume 2...)
|
||||
rm -f vol2.aux vol2.toc
|
||||
$(tex2)
|
||||
texindex vol2.??
|
||||
|
|
|
@ -130,12 +130,12 @@ info: $(INFO_TARGETS)
|
|||
|
||||
## Used by top-level Makefile.
|
||||
## Base file names of output info files.
|
||||
INFO_BASES = $(patsubst %.info,%,$(notdir $(INFO_INSTALL)))
|
||||
echo-info:
|
||||
@echo "$(INFO_INSTALL) " | \
|
||||
sed -e 's|[^ ]*/||g' -e 's/\.info//g' -e "s/ */.info /g"
|
||||
@: $(info $(addsuffix .info,$(INFO_BASES)))
|
||||
|
||||
echo-sources:
|
||||
@echo ${SOURCES}
|
||||
@: $(info $(SOURCES))
|
||||
|
||||
dvi: $(DVI_TARGETS)
|
||||
|
||||
|
|
|
@ -297,8 +297,8 @@ maybe-blessmail: $(BLESSMAIL_TARGET)
|
|||
## up if chown or chgrp fails, as the package responsible for
|
||||
## installing Emacs can fix this problem later.
|
||||
$(DESTDIR)${archlibdir}: all
|
||||
@echo
|
||||
@echo "Installing utilities run internally by Emacs."
|
||||
$(info $ )
|
||||
$(info Installing utilities run internally by Emacs.)
|
||||
umask 022 && ${MKDIR_P} "$(DESTDIR)${archlibdir}"
|
||||
exp_archlibdir=`cd "$(DESTDIR)${archlibdir}" && /bin/pwd` && \
|
||||
if [ "$$exp_archlibdir" != "`/bin/pwd`" ]; then \
|
||||
|
@ -339,8 +339,8 @@ $(DESTDIR)${archlibdir}: all
|
|||
.PHONY: bootstrap-clean check tags
|
||||
|
||||
install: $(DESTDIR)${archlibdir}
|
||||
@echo
|
||||
@echo "Installing utilities for users to run."
|
||||
$(info $ )
|
||||
$(info Installing utilities for users to run.)
|
||||
umask 022 && ${MKDIR_P} "$(DESTDIR)${bindir}"
|
||||
for file in ${INSTALLABLES} ; do \
|
||||
$(INSTALL_PROGRAM) $(INSTALL_STRIP) $${file} \
|
||||
|
@ -375,7 +375,7 @@ bootstrap-clean maintainer-clean: distclean
|
|||
|
||||
## Test the contents of the directory.
|
||||
check:
|
||||
@echo "We don't have any tests for the lib-src/ directory yet."
|
||||
$(info We don't have any tests for the lib-src/ directory yet.)
|
||||
|
||||
tagsfiles = $(wildcard ${srcdir}/*.[ch])
|
||||
|
||||
|
|
|
@ -33,26 +33,26 @@ AM_V_GLOBALS =
|
|||
AM_V_NO_PD =
|
||||
AM_V_RC =
|
||||
else
|
||||
AM_V_AR = @echo " AR " $@;
|
||||
AM_V_AR = @$(info $ AR $@)
|
||||
AM_V_at = @
|
||||
AM_V_CC = @echo " CC " $@;
|
||||
AM_V_CXX = @echo " CXX " $@;
|
||||
AM_V_CCLD = @echo " CCLD " $@;
|
||||
AM_V_CXXLD = @echo " CXXLD " $@;
|
||||
AM_V_CC = @$(info $ CC $@)
|
||||
AM_V_CXX = @$(info $ CXX $@)
|
||||
AM_V_CCLD = @$(info $ CCLD $@)
|
||||
AM_V_CXXLD = @$(info $ CXXLD $@)
|
||||
ifeq ($(HAVE_NATIVE_COMP),yes)
|
||||
ifeq ($(NATIVE_DISABLED),1)
|
||||
AM_V_ELC = @echo " ELC " $@;
|
||||
AM_V_ELC = @$(info $ ELC $@)
|
||||
AM_V_ELN =
|
||||
else
|
||||
AM_V_ELC = @echo " ELC+ELN " $@;
|
||||
AM_V_ELN = @echo " ELN " $@;
|
||||
AM_V_ELC = @$(info $ ELC+ELN $@)
|
||||
AM_V_ELN = @$(info $ ELN $@)
|
||||
endif
|
||||
else
|
||||
AM_V_ELC = @echo " ELC " $@;
|
||||
AM_V_ELC = @$(info $ ELC $@)
|
||||
AM_V_ELN =
|
||||
endif
|
||||
AM_V_GEN = @echo " GEN " $@;
|
||||
AM_V_GLOBALS = @echo " GEN " globals.h;
|
||||
AM_V_GEN = @$(info $ GEN $@)
|
||||
AM_V_GLOBALS = @$(info $ GEN globals.h)
|
||||
AM_V_NO_PD = --no-print-directory
|
||||
AM_V_RC = @echo " RC " $@;
|
||||
AM_V_RC = @$(info $ RC $@)
|
||||
endif
|
||||
|
|
|
@ -375,10 +375,10 @@ check-declare:
|
|||
.PHONY: subdirs subdir-targets generate-test-jobs
|
||||
|
||||
subdirs:
|
||||
@echo $(SUBDIRS)
|
||||
@: $(info $(SUBDIRS))
|
||||
|
||||
subdir-targets:
|
||||
@echo $(SUBDIR_TARGETS)
|
||||
@: $(info $(SUBDIR_TARGETS))
|
||||
|
||||
generate-test-jobs:
|
||||
@$(MAKE) -C infra generate-test-jobs SUBDIRS="$(SUBDIRS)"
|
||||
|
|
Loading…
Add table
Reference in a new issue