diff options
author | Kaleb KEITHLEY <kkeithle@f16node1.kkeithle.usersys.redhat.com> | 2011-11-29 09:36:50 -0500 |
---|---|---|
committer | Anand Avati <avati@gluster.com> | 2011-11-30 04:57:08 -0800 |
commit | fbf6ce560dd6e72fc9d404e32d313732077a250f (patch) | |
tree | 401e3724d25fa1ec47c70f19c91a9b128d73a0a5 /libglusterfs/src | |
parent | 1b3571d38fc789100e2c053750eca1109494596b (diff) |
bz 3826, fix for parallel make in fedora build system
builds of glusterfs in the fedora build system often fail due to a
race condition between running yacc and starting to compile the y.tab.c
produced by yacc
This patch changes the automake Makefile.am to generate the parser files
without incurring the race condition
This works on jenkins, the fedora build system, and my f16 vm/guest
machines. (Finding the right combination that works on all three was an
exercise to say the least. I'm open to other suggestions for avoiding
the race condition.)
Run autogen.sh to (re)generate the Makefile.ins. Then run configure to
produce all Makefiles, followed by `make -j X` where X>1
see also https://bugzilla.redhat.com/show_bug.cgi?id=756510
BUG: 3826
Change-Id: I06ba0d0a1d59f0f44c0dd2cd9d227ca08d99e205
Reviewed-on: http://review.gluster.com/763
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-by: Anand Avati <avati@gluster.com>
Diffstat (limited to 'libglusterfs/src')
-rw-r--r-- | libglusterfs/src/Makefile.am | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libglusterfs/src/Makefile.am b/libglusterfs/src/Makefile.am index a950e67d1fa..98be5b2d906 100644 --- a/libglusterfs/src/Makefile.am +++ b/libglusterfs/src/Makefile.am @@ -35,10 +35,13 @@ noinst_HEADERS = common-utils.h defaults.h dict.h glusterfs.h hashfn.h \ EXTRA_DIST = graph.l graph.y -graph.lex.c: graph.l y.tab.h +graph.lex.c: graph.l yacc.stamp $(LEX) -t $(srcdir)/graph.l > $@ +yacc.stamp: y.tab.c y.tab.h + touch $@ + y.tab.c y.tab.h: graph.y $(YACC) -d $(srcdir)/graph.y -CLEANFILES = graph.lex.c y.tab.c y.tab.h +CLEANFILES = graph.lex.c y.tab.c y.tab.h yacc.stamp |