]> git.ipfire.org Git - thirdparty/make.git/commitdiff
[SV 63981] Don't warn on explicit -j1
authorPaul Smith <psmith@gnu.org>
Sun, 2 Apr 2023 14:29:37 +0000 (10:29 -0400)
committerPaul Smith <psmith@gnu.org>
Sun, 2 Apr 2023 14:29:37 +0000 (10:29 -0400)
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
tests/scripts/features/jobserver

index 5d6b9e76775eb079d7ade864af9f786c9eb6c645..8587de61427d7354b7faf843ee7cf42f2d7482bd 100644 (file)
@@ -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);
index f8cae542a20ee9a41e9a2c67c55a699f563c0e60..50d51f80f7fbbdd21cde5097cd7457184003eba2 100644 (file)
@@ -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");