emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master 9df2852: Add new "make help" target


From: Stefan Kangas
Subject: [Emacs-diffs] master 9df2852: Add new "make help" target
Date: Thu, 29 Aug 2019 05:59:12 -0400 (EDT)

branch: master
commit 9df285250bc30b5ba86a19c817eea0c56164e022
Author: Stefan Kangas <address@hidden>
Commit: Stefan Kangas <address@hidden>

    Add new "make help" target
    
    * GNUmakefile: Add new "help" target that shows a brief summary of
    common make targets.  (Bug#12411)
    * INSTALL
    * etc/NEWS: Announce it.
---
 GNUmakefile | 33 +++++++++++++++++++++++++++++++++
 INSTALL     |  3 +++
 etc/NEWS    |  2 ++
 3 files changed, 38 insertions(+)

diff --git a/GNUmakefile b/GNUmakefile
index a67624e..274109c 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -32,6 +32,38 @@
 # But run 'autogen.sh' first, if the source was checked out directly
 # from the repository.
 
+# Display help.
+
+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 
"http://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 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
+
+.PHONY: help
+
+else
+
 # If a Makefile already exists, just use it.
 
 ifeq ($(wildcard Makefile),Makefile)
@@ -82,3 +114,4 @@ bootstrap: Makefile
 
 endif
 endif
+endif
diff --git a/INSTALL b/INSTALL
index 6934022..86f9e00 100644
--- a/INSTALL
+++ b/INSTALL
@@ -109,6 +109,9 @@ sections if you need to.
   (provided you have the 'gzip' program) those installed Lisp source (.el)
   files that have corresponding .elc versions, as well as the Info files.
 
+  You can read a brief summary about common make targets:
+
+                make help
 
 ADDITIONAL DISTRIBUTION FILES
 
diff --git a/etc/NEWS b/etc/NEWS
index cd9a094..ddaee02 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -129,6 +129,8 @@ This is intended mostly to help developers.
 ** Emacs now requires GTK 2.24 and GTK 3.10 for the GTK 2 and GTK 3
 builds respectively.
 
+** New make target 'help' shows a summary of common make targets.
+
 
 * Startup Changes in Emacs 27.1
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]