From 54b3202f8da0761c7d5a3410313f0a32eb63ef8b Mon Sep 17 00:00:00 2001 From: Paul Smith Date: Sun, 2 Apr 2023 10:29:37 -0400 Subject: [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. --- src/main.c | 2 +- tests/scripts/features/jobserver | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) 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"); -- cgit v1.2.1