aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2012-09-09 15:08:32 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2012-09-09 15:09:11 -0400
commit1e214507e5b5d604ea8d8d4e7e564b673df8c8e0 (patch)
tree3cf40cb5eb639048c775bb709a57a645b786c0a2 /src
parentff0b18cc4979d518490dc267e2038daae6030b61 (diff)
downloadpostgresql-1e214507e5b5d604ea8d8d4e7e564b673df8c8e0.tar.gz
postgresql-1e214507e5b5d604ea8d8d4e7e564b673df8c8e0.zip
Use .NOTPARALLEL in ecpg/Makefile to avoid a gmake parallelism bug.
Investigation shows that some intermittent build failures in ecpg are the result of a gmake bug that was reported quite some time ago: http://savannah.gnu.org/bugs/?30653 Preventing parallel builds of the ecpg subdirectories seems to dodge the bug. Per yesterday's pgsql-hackers discussion, there are some other things in the subdirectory makefiles that seem rather unsafe for parallel builds too, but there's little point in fixing them as long as we have to work around a make bug. Back-patch to 9.1; parallel builds weren't very well supported before that anyway.
Diffstat (limited to 'src')
-rw-r--r--src/interfaces/ecpg/Makefile8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/interfaces/ecpg/Makefile b/src/interfaces/ecpg/Makefile
index e89f2fe0f28..d4b37e97237 100644
--- a/src/interfaces/ecpg/Makefile
+++ b/src/interfaces/ecpg/Makefile
@@ -4,6 +4,14 @@ include $(top_builddir)/src/Makefile.global
SUBDIRS = include pgtypeslib ecpglib compatlib preproc
+# Suppress parallel build of subdirectories to avoid a bug in gmake 3.82, cf
+# http://savannah.gnu.org/bugs/?30653
+# https://bugzilla.redhat.com/show_bug.cgi?id=835424
+# (There are some other parallelism bugs in the subdirectory makefiles
+# themselves, but there's little point in fixing them as long as we have
+# to use this big hammer.)
+.NOTPARALLEL:
+
$(recurse)
all-compatlib-recurse: all-ecpglib-recurse