Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 1 Jul 2015 19:17:13 +0300
From: Solar Designer <solar@...nwall.com>
To: john-dev@...ts.openwall.com
Subject: Makefile.legacy (was: JtR on Power)

On Wed, Jul 01, 2015 at 05:01:41PM +0200, Frank Dittrich wrote:
> I forgot one more issue with legacy buiilds:
> 
> $ make -s -f Makefile.legacy clean
> $ make -j 2 -s -f Makefile.legacy linux-x86-64-native
> make[1]: warning: jobserver unavailable: using -j1.  Add '+' to parent
> make rule.
> 
> While
> $ make -s -f Makefile.legacy linux-x86-64-native
> (without -j results in unlimited number of processes started by make.
> 
> So, some make magic is required to correctly pass a -j value, and allow
> build without -j.
> (An easy fix would just drop the current attempt of passing on the -j
> value to the subprocesses, limiting make to a single process...)

Oh, I just found this commit:

commit cd510d4bc5c42d7cd1f99064dd7456888b6a7507
Author: Frank Dittrich <frank.dittrich@...lbox.org>
Date:   Wed Jun 11 23:08:10 2014 +0200

    Makefile.legacy: avoid make warnings for generic builds
    
    Compiling: DES benchmark (code version #1)
    make[1]: Entering directory `/home/fd/git/JtR/src'
    make[1]: warning: jobserver unavailable: using -j1.  Add `+' to parent make rule.
    
    Instead of adding '+' to the "parent" make rule I passed -j1 to ./best.sh

And it looks bad to me.  Please revert it.

There's no need to explicitly pass the -j value to the subprocesses:
make manages this on its own (via the MAKEFLAGS env var).

Alexander

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.