From: Paul Smith Date: Sun, 2 Apr 2023 14:29:37 +0000 (-0400) Subject: [SV 63981] Don't warn on explicit -j1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=54b3202f8da0761c7d5a3410313f0a32eb63ef8b;p=thirdparty%2Fmake.git [SV 63981] Don't warn on explicit -j1 If -j1 is given explicitly on the command line don't warn about it. * src/main.c (main): Skip the warning if -j1. * tests/scripts/features/jobserver: Add a test for this behavior. --- diff --git a/src/main.c b/src/main.c index 5d6b9e76..8587de61 100644 --- a/src/main.c +++ b/src/main.c @@ -1830,7 +1830,7 @@ main (int argc, char **argv, char **envp) /* The user provided a -j setting on the command line so use it: we're the master make of a new jobserver group. */ - else if (!restarts) + else if (!restarts && argv_slots != 1) ON (error, NILF, _("warning: -j%d forced in submake: resetting jobserver mode"), argv_slots); diff --git a/tests/scripts/features/jobserver b/tests/scripts/features/jobserver index f8cae542..50d51f80 100644 --- a/tests/scripts/features/jobserver +++ b/tests/scripts/features/jobserver @@ -110,7 +110,7 @@ default: ; @ #MAKEPATH# -f Makefile2 rmfiles('Makefile2'); } -# Ensure enter/leave directory messages appear before jobserver warnings +# SV 63981: Don't generat warnings if the user specifically disabled -j run_make_test(q! all: ; @$(MAKE) -C . -f #MAKEFILE# recurse -j1 @@ -118,7 +118,19 @@ recurse: ; @echo hi !, '-w -j2', "#MAKE#: Entering directory '#PWD#' #MAKE#[1]: Entering directory '#PWD#' -#MAKE#[1]: warning: -j1 forced in submake: resetting jobserver mode +hi +#MAKE#[1]: Leaving directory '#PWD#' +#MAKE#: Leaving directory '#PWD#'"); + +# Ensure enter/leave directory messages appear before jobserver warnings + +run_make_test(q! +all: ; @$(MAKE) -C . -f #MAKEFILE# recurse -j10 +recurse: ; @echo hi +!, + '-w -j2', "#MAKE#: Entering directory '#PWD#' +#MAKE#[1]: Entering directory '#PWD#' +#MAKE#[1]: warning: -j10 forced in submake: resetting jobserver mode hi #MAKE#[1]: Leaving directory '#PWD#' #MAKE#: Leaving directory '#PWD#'\n");