Yes, -j1 is the right and obvious solution but I think you have .NOTPARALLEL completely backwards. Here's what the manual says:
If .NOTPARALLEL is mentioned as a target, then this invocation of make will be run serially, even if the ā-jā option is given ... Any prerequisites on this target are ignored. On Wed, Jan 23, 2019 at 5:10 PM Laszlo Ersek <ler...@redhat.com> wrote: > On 01/23/19 15:45, David Boyce wrote: > > And don't forget that many clever things can be done with --exec, e.g. > > "--exec .NOTPARALLEL:". But -j1 seems simpler in this case. > > > > On Wed, Jan 23, 2019 at 8:51 AM Paul Smith <psm...@gnu.org> wrote: > > > >> On Wed, 2019-01-23 at 11:24 +0100, Laszlo Ersek wrote: > >>> Would it be safe / robust to filter out "-j" and "--jobserver-fds=3,4" > >>> as well, manually? (E.g. by sticking a shell script between the outer > >>> and inner make processes.) > >> > >> Why not simply add "-j1" explicitly to the inner-make invocation? That > >> will disable the job server. > >> > >>> In particular, "--jobserver-fds" is not documented in end-user > >>> documentation, apparently, so I get a feeling this option could > >>> change at any time, as an implementation detail of distributing jobs. > >> > >> In fact it DID change, in GNU make 4.2, to be --jobserver-auth. At the > >> same time this new option was published in the documentation and made > >> an official part of the GNU make interface. > > Awesome, thank you both. Appending "-j1" to the command line of the > inner make seems a lot simpler than spelling out the pre-requisites of > .NOTPARALLEL. > > (In fact it crossed my mind that .NOTPARALLEL could be extended to a > prerequisite-less form, like .SECONDARY: it would then apply to all > targets. But, "-j1" should work fine.) > > Thank you! > Laszlo > _______________________________________________ Help-make mailing list Help-make@gnu.org https://lists.gnu.org/mailman/listinfo/help-make