[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#31157: Advice for help2man does not work for parallel builds

From: Reuben Thomas
Subject: bug#31157: Advice for help2man does not work for parallel builds
Date: Sun, 15 Apr 2018 00:48:59 +0100

In the manual, we are given the following pattern for using help2man without breaking make distcheck:

     foo.1: foo.c $(top_srcdir)/configure.ac
             $(MAKE) $(AM_MAKEFLAGS) foo$(EXEEXT)
             help2man --output=foo.1 ./foo$(EXEEXT)

The problem is that with make -j this can result in two attempts to make a library in parallel (suppose that we have:

    foo_LDADD = libfoo.la
    lib_LTLIBRARIES = libfoo.la

). This can fail, and in any case is wasteful.

I'm using automake 1.15. I can't see anything since then that fixes this problem.

The best workaround I could come up with was to revert the dependency to​

​     foo.1: foo$(EXEEXT)

and then set distcleancheck_listfiles appropriately. Obviously, since this could hide other problems in the build system, it's not ideal.

Am I missing a better solution? If so, it should be added to the manual. If not, this problem should probably be documented. I'm finding that parallel make is becoming a must-have rather than a nice boost, given the proliferation of slow multi-core machines (for example: -j makes it feasible to hack on my phone; without it, builds are painfully slow).


reply via email to

[Prev in Thread] Current Thread [Next in Thread]