[Libguestfs] [PATCH] po-docs: disable parallel build

Richard W.M. Jones rjones at redhat.com
Sat Nov 14 11:10:22 UTC 2015


On Fri, Nov 13, 2015 at 12:59:00PM -0600, Richard Tollerton wrote:
> Automating the master build from scratch requires some annoying hassles
> thanks to 1ea1646e6f224dbc5b3922bb3c65aab4d71a9cb9. This can be worked
> around by running the requisite commands first, i.e.,
> 
>     rm -f po-docs/podfiles && make -C po-docs update-po && make
> 
> But after that, there still appears to be a race in the po-docs
> build (reproduced on -j12 on an E5-1650 v2):
> 
>     make[2]: Entering directory 'libguestfs-git/src/libguestfs/po-docs'
>     Making all in ja
>     make[3]: Entering directory 'libguestfs-git/src/libguestfs/po-docs/ja'
>     make[3]: *** No rule to make target 'guestfish-actions.pod', needed by
>     'guestfish.1'. Stop.
> 
> This appears to go away if you set .NOTPARALLEL in all of po-docs.
> 
> Signed-off-by: Richard Tollerton <rich.tollerton at ni.com>
> ---
>  po-docs/Makefile.am | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/po-docs/Makefile.am b/po-docs/Makefile.am
> index a274898..617e8ad 100644
> --- a/po-docs/Makefile.am
> +++ b/po-docs/Makefile.am
> @@ -88,3 +88,5 @@ podfiles: Makefile
>  	for f in `cat $(top_srcdir)/po/POTFILES-pl`; do echo $(top_srcdir)/$$f; done >> $@-t
>  	LC_ALL=C sort -o $@-t $@-t
>  	mv $@-t $@
> +
> +.NOTPARALLEL:
> -- 
> 2.6.2

The bug that was causing 1ea1646e6 in the first place was subtle, and
I wish I'd written down more detail about exactly why (I thought) it
was impossible to fix ...

Anyway, adding .NOTPARALLEL may be the right fix, but I can't see how
it will help unless we also revert 1ea1646e6.  So at minimum you need
to send a revert commit as well.

Also we might need to add .NOTPARALLEL to po-docs/language.mk too.

Also it needs a big comment explaining exactly why we are doing this,
since what will inevitably happen later is someone will wonder why the
file has .NOTPARALLEL and try to remove it.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-p2v converts physical machines to virtual machines.  Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v




More information about the Libguestfs mailing list