[PATCH v2 16/17] build: remove last make recursion (for subdir 'man')

Stefano Lattarini <[email protected]>
Newsgroups gmane.comp.sysutils.autoconf.patches
Message-ID <ef573a26aa937f26077179a0e743c50d50b58f1f.1367846278.git.stefano.lattarini@gmail.com>
* Makefile.am (SUBDIRS): Remove (its last component 'man' has just
been removed).
(SUFFIXES): New, defined to empty, to be updated later by included
files.
($(srcdir)/man/local.mk): Include this.
* configure.ac (AC_CONFIG_FILES): Drop 'man/Makefile'.
* lib/freeze.mk (SUFFIXES): Extend with '+=' rather than defining
with '='.
* man/Makefile.am: Rename ...
* man/local.mk: ... like this, and adjust throughout.

Signed-off-by: Stefano Lattarini <[email protected]>
---
 Makefile.am                   |  5 ++--
 configure.ac                  |  1 -
 lib/freeze.mk                 |  2 +-
 man/{Makefile.am => local.mk} | 54 ++++++++++++++++++++++---------------------
 4 files changed, 31 insertions(+), 31 deletions(-)
 rename man/{Makefile.am => local.mk} (50%)

diff --git a/Makefile.am b/Makefile.am
index fe49c64..e1ec0d2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -15,9 +15,6 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Rules in man/ use scripts from both bin/ and tests/, so *it* goes last.
-SUBDIRS = . man
-
 ACLOCAL_AMFLAGS = -I m4
 
 ## All of these will be incrementally updated later, here or in included
@@ -27,6 +24,7 @@ MOSTLYCLEANFILES =
 CLEANFILES =
 DISTCLEANFILES =
 MAINTAINERCLEANFILES =
+SUFFIXES =
 
 EXTRA_DIST = ChangeLog.0 ChangeLog.1 ChangeLog.2 ChangeLog.3 \
 	     BUGS COPYINGv3 COPYING.EXCEPTION \
@@ -132,6 +130,7 @@ distclean-local:
 include $(srcdir)/bin/local.mk
 include $(srcdir)/doc/local.mk
 include $(srcdir)/lib/local.mk
+include $(srcdir)/man/local.mk
 include $(srcdir)/tests/local.mk
 
 # Perl coverage statistics.
diff --git a/configure.ac b/configure.ac
index 7eda742..80e0dbd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -124,7 +124,6 @@ AC_PROG_GNU_M4
 ## Man pages.  ##
 ## ----------- ##
 
-AC_CONFIG_FILES([man/Makefile])
 AM_MISSING_PROG([HELP2MAN], [help2man])
 
 
diff --git a/lib/freeze.mk b/lib/freeze.mk
index f5e3859..77cb7c4 100644
--- a/lib/freeze.mk
+++ b/lib/freeze.mk
@@ -20,7 +20,7 @@
 ## Freeze M4 files.  ##
 ## ----------------- ##
 
-SUFFIXES = .m4 .m4f
+SUFFIXES += .m4 .m4f
 
 AUTOM4TE_CFG = lib/autom4te.cfg
 
diff --git a/man/Makefile.am b/man/local.mk
similarity index 50%
rename from man/Makefile.am
rename to man/local.mk
index b2dddfb..d5c7716 100644
--- a/man/Makefile.am
+++ b/man/local.mk
@@ -15,48 +15,50 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+binsrcdir = $(srcdir)/bin
+mansrcdir = $(srcdir)/man
+
 dist_man_MANS = \
-	$(srcdir)/autoconf.1 \
-	$(srcdir)/autoheader.1 \
-	$(srcdir)/autom4te.1 \
-	$(srcdir)/autoreconf.1 \
-	$(srcdir)/autoscan.1 \
-	$(srcdir)/autoupdate.1 \
-	$(srcdir)/ifnames.1 \
-	$(srcdir)/config.guess.1 \
-	$(srcdir)/config.sub.1
+  $(mansrcdir)/autoconf.1 \
+  $(mansrcdir)/autoheader.1 \
+  $(mansrcdir)/autom4te.1 \
+  $(mansrcdir)/autoreconf.1 \
+  $(mansrcdir)/autoscan.1 \
+  $(mansrcdir)/autoupdate.1 \
+  $(mansrcdir)/ifnames.1 \
+  $(mansrcdir)/config.guess.1 \
+  $(mansrcdir)/config.sub.1
 
-EXTRA_DIST = $(dist_man_MANS:.1=.x) common.x
-MAINTAINERCLEANFILES = $(dist_man_MANS)
+EXTRA_DIST += $(dist_man_MANS:.1=.x) man/common.x
+MAINTAINERCLEANFILES += $(dist_man_MANS)
 
 # Depend on .version to get version number changes.
-common_dep = $(top_srcdir)/.version $(srcdir)/common.x
-binsrcdir = $(top_srcdir)/bin
-$(srcdir)/autoconf.1:   $(common_dep) $(binsrcdir)/autoconf.as
-$(srcdir)/autoheader.1: $(common_dep) $(binsrcdir)/autoheader.in
-$(srcdir)/autom4te.1:   $(common_dep) $(binsrcdir)/autom4te.in
-$(srcdir)/autoreconf.1: $(common_dep) $(binsrcdir)/autoreconf.in
-$(srcdir)/autoscan.1:   $(common_dep) $(binsrcdir)/autoscan.in
-$(srcdir)/autoupdate.1: $(common_dep) $(binsrcdir)/autoupdate.in
-$(srcdir)/ifnames.1:    $(common_dep) $(binsrcdir)/ifnames.in
+common_dep = $(srcdir)/.version $(srcdir)/man/common.x
+$(mansrcdir)/autoconf.1:   $(common_dep) $(binsrcdir)/autoconf.as
+$(mansrcdir)/autoheader.1: $(common_dep) $(binsrcdir)/autoheader.in
+$(mansrcdir)/autom4te.1:   $(common_dep) $(binsrcdir)/autom4te.in
+$(mansrcdir)/autoreconf.1: $(common_dep) $(binsrcdir)/autoreconf.in
+$(mansrcdir)/autoscan.1:   $(common_dep) $(binsrcdir)/autoscan.in
+$(mansrcdir)/autoupdate.1: $(common_dep) $(binsrcdir)/autoupdate.in
+$(mansrcdir)/ifnames.1:    $(common_dep) $(binsrcdir)/ifnames.in
 
 # Independent from this package.
-$(srcdir)/config.guess.1: $(top_srcdir)/build-aux/config.guess
-$(srcdir)/config.sub.1:   $(top_srcdir)/build-aux/config.sub
+$(mansrcdir)/config.guess.1: $(srcdir)/build-aux/config.guess
+$(mansrcdir)/config.sub.1:   $(srcdir)/build-aux/config.sub
 
 remove_time_stamp = 's/^\(\.TH[^"]*"[^"]*"[^"]*\)"[^"]*"/\1/'
 
-MOSTLYCLEANFILES = $(srcdir)/*.t
+MOSTLYCLEANFILES += $(srcdir)/man/*.t
 
-SUFFIXES = .x .1
+SUFFIXES += .x .1
 
 .x.1:
 	@echo "Updating man page $@"
-	PATH="$(top_builddir)/tests$(PATH_SEPARATOR)$(top_srcdir)/build-aux$(PATH_SEPARATOR)$$PATH"; \
+	PATH="./tests$(PATH_SEPARATOR)$(top_srcdir)/build-aux$(PATH_SEPARATOR)$$PATH"; \
 	export PATH; \
 	$(HELP2MAN) \
 	    --include=$*.x \
-	    --include=$(srcdir)/common.x \
+	    --include=$(srcdir)/man/common.x \
 	    --source='$(PACKAGE_STRING)' \
 	    [email protected] `echo '$*' | sed 's,.*/,,'`
 	if sed $(remove_time_stamp) $@ >[email protected] 2>/dev/null && \
-- 
1.8.3.rc0.19.g7e6a0cc
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.