summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwl <wl>2012-01-03 06:37:36 +0000
committerwl <wl>2012-01-03 06:37:36 +0000
commit27295dc29d7f7a6904f8d288799d81900f263ad5 (patch)
treed7ad424f11a287f541e145031405bc7bad1ce481
parent1784645ef2d757dc90ea9b9ca427f906764d3a84 (diff)
downloadgroff-27295dc29d7f7a6904f8d288799d81900f263ad5.tar.gz
Improve parallel builds.
Some hdtbl and mom examples want PostScript formatting which requires the `DESC' file to be ready; however, the top-level `Makefile.in' doesn't currently enforce the proper order of building of `font/dev' before `contrib/hdtbl', `contrib/mom', and so on. Given that `font/dev' and the contrib examples are in different child processes of the recursive make system, it doesn't seem possible to solve this using clean Makefile dependencies. We now enforce the order by splitting the shell command invoking recursive make in the top level `Makefile.in'. * Makefile.in (ALLDIRS): Remove `OTHERDIRS'. (`$(TARGETS)'): Handle `OTHERDIRS' separately.
-rw-r--r--ChangeLog18
-rw-r--r--Makefile.in13
2 files changed, 26 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 498ad8df..5b8f19d2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,21 @@
+2012-01-03 Ingo Schwarze <schwarze@usta.de>
+
+ Improve parallel builds.
+
+ Some hdtbl and mom examples want PostScript formatting which
+ requires the `DESC' file to be ready; however, the top-level
+ `Makefile.in' doesn't currently enforce the proper order of building
+ of `font/dev' before `contrib/hdtbl', `contrib/mom', and so on.
+
+ Given that `font/dev' and the contrib examples are in different
+ child processes of the recursive make system, it doesn't seem
+ possible to solve this using clean Makefile dependencies. We now
+ enforce the order by splitting the shell command invoking recursive
+ make in the top level `Makefile.in'.
+
+ * Makefile.in (ALLDIRS): Remove `OTHERDIRS'.
+ (`$(TARGETS)'): Handle `OTHERDIRS' separately.
+
2012-01-03 Kristaps Dzonsons <kristaps@bsd.lv>
[mdoc] Add `-isoC-2011'.
diff --git a/Makefile.in b/Makefile.in
index 6d229b19..5b8fe8ef 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,4 +1,4 @@
-# Copyright (C) 1989-2006, 2009-2011
+# Copyright (C) 1989-2006, 2009-2012
# Free Software Foundation, Inc.
# Written by James Clark (jjc@jclark.com)
#
@@ -617,6 +617,8 @@ OTHERDIRS=\
font/devpdf \
contrib/gdiffmk
+# OTHERDIRS is handled specially in the `$(TARGETS)' rule to avoid
+# dependency problems with parallel builds.
ALLDIRS=\
$(INCDIRS) \
$(LIBDIRS) \
@@ -624,8 +626,8 @@ ALLDIRS=\
$(DEVDIRS) \
$(XDEVDIRS) \
$(OTHERDEVDIRS) \
- $(TTYDEVDIRS) \
- $(OTHERDIRS)
+ $(TTYDEVDIRS)
+# $(OTHERDIRS)
EXTRADIRS=\
font/devps/generate \
font/devdvi/generate \
@@ -686,13 +688,14 @@ ENVSETUP=\
fi
do=all
-dodirs=$(ALLDIRS) dot
+dodirs=$(ALLDIRS) $(OTHERDIRS) dot
# Default target for subdir_Makefile
subdir=src/roff/troff
$(TARGETS):
- @$(ENVSETUP); $(MAKE) $(MAKE_K_FLAG) do=$@ $(dodirs)
+ @$(ENVSETUP); $(MAKE) $(MAKE_K_FLAG) do=$@ $(ALLDIRS)
+ @$(ENVSETUP); $(MAKE) $(MAKE_K_FLAG) do=$@ $(OTHERDIRS) dot
dot: FORCE
@$(ENVSETUP); \