fix from upstream cvs ---------------------------- revision 1.247 date: 2011-09-18 19:39:26 -0400; author: psmith; state: Exp; lines: +5 -3; commitid: 07NxO4T5PiWC82Av; When we re-exec the master makefile in a jobserver environment, ensure that MAKEFLAGS is set properly so the re-exec'd make runs in parallel. See Savannah bug #33873. Index: main.c =================================================================== RCS file: /sources/make/make/main.c,v retrieving revision 1.246 retrieving revision 1.247 diff -u -p -r1.246 -r1.247 --- main.c 29 Aug 2010 23:05:27 -0000 1.246 +++ main.c 18 Sep 2011 23:39:26 -0000 1.247 @@ -2089,6 +2089,11 @@ main (int argc, char **argv, char **envp ++restarts; + /* If we're re-exec'ing the first make, put back the number of + job slots so define_makefiles() will get it right. */ + if (master_job_slots) + job_slots = master_job_slots; + /* Reset makeflags in case they were changed. */ { const char *pv = define_makeflags (1, 1); @@ -2825,9 +2830,6 @@ define_makeflags (int all, int makefile) && (*(unsigned int *) cs->value_ptr == *(unsigned int *) cs->noarg_value)) ADD_FLAG ("", 0); /* Optional value omitted; see below. */ - else if (cs->c == 'j') - /* Special case for `-j'. */ - ADD_FLAG ("1", 1); else { char *buf = alloca (30);