From a53b30cc94f6202459afe4a573a61513b54135ed Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Wed, 8 Mar 2023 14:33:05 +0100 Subject: [PATCH] 6.1-stable patches added patches: kbuild-port-silent-mode-detection-to-future-gnu-make.patch --- ...nt-mode-detection-to-future-gnu-make.patch | 73 +++++++++++++++++++ queue-6.1/series | 1 + 2 files changed, 74 insertions(+) create mode 100644 queue-6.1/kbuild-port-silent-mode-detection-to-future-gnu-make.patch diff --git a/queue-6.1/kbuild-port-silent-mode-detection-to-future-gnu-make.patch b/queue-6.1/kbuild-port-silent-mode-detection-to-future-gnu-make.patch new file mode 100644 index 00000000000..0d6b246e7e7 --- /dev/null +++ b/queue-6.1/kbuild-port-silent-mode-detection-to-future-gnu-make.patch @@ -0,0 +1,73 @@ +From 4bf73588165ba7d32131a043775557a54b6e1db5 Mon Sep 17 00:00:00 2001 +From: Dmitry Goncharov +Date: Mon, 5 Dec 2022 16:48:19 -0500 +Subject: kbuild: Port silent mode detection to future gnu make. + +From: Dmitry Goncharov + +commit 4bf73588165ba7d32131a043775557a54b6e1db5 upstream. + +Port silent mode detection to the future (post make-4.4) versions of gnu make. + +Makefile contains the following piece of make code to detect if option -s is +specified on the command line. + +ifneq ($(findstring s,$(filter-out --%,$(MAKEFLAGS))),) + +This code is executed by make at parse time and assumes that MAKEFLAGS +does not contain command line variable definitions. +Currently if the user defines a=s on the command line, then at build only +time MAKEFLAGS contains " -- a=s". +However, starting with commit dc2d963989b96161472b2cd38cef5d1f4851ea34 +MAKEFLAGS contains command line definitions at both parse time and +build time. + +This '-s' detection code then confuses a command line variable +definition which contains letter 's' with option -s. + +$ # old make +$ make net/wireless/ocb.o a=s + CALL scripts/checksyscalls.sh + DESCEND objtool +$ # this a new make which defines makeflags at parse time +$ ~/src/gmake/make/l64/make net/wireless/ocb.o a=s +$ + +We can see here that the letter 's' from 'a=s' was confused with -s. + +This patch checks for presence of -s using a method recommended by the +make manual here +https://www.gnu.org/software/make/manual/make.html#Testing-Flags. + +Link: https://lists.gnu.org/archive/html/bug-make/2022-11/msg00190.html +Reported-by: Jan Palus +Signed-off-by: Dmitry Goncharov +Signed-off-by: Masahiro Yamada +Signed-off-by: Greg Kroah-Hartman +--- + Makefile | 13 ++++++++++--- + 1 file changed, 10 insertions(+), 3 deletions(-) + +--- a/Makefile ++++ b/Makefile +@@ -93,10 +93,17 @@ endif + + # If the user is running make -s (silent mode), suppress echoing of + # commands ++# make-4.0 (and later) keep single letter options in the 1st word of MAKEFLAGS. + +-ifneq ($(findstring s,$(filter-out --%,$(MAKEFLAGS))),) +- quiet=silent_ +- KBUILD_VERBOSE = 0 ++ifeq ($(filter 3.%,$(MAKE_VERSION)),) ++silence:=$(findstring s,$(firstword -$(MAKEFLAGS))) ++else ++silence:=$(findstring s,$(filter-out --%,$(MAKEFLAGS))) ++endif ++ ++ifeq ($(silence),s) ++quiet=silent_ ++KBUILD_VERBOSE = 0 + endif + + export quiet Q KBUILD_VERBOSE diff --git a/queue-6.1/series b/queue-6.1/series index b6c5171737b..752568ac001 100644 --- a/queue-6.1/series +++ b/queue-6.1/series @@ -885,3 +885,4 @@ brd-use-radix_tree_maybe_preload-instead-of-radix_tree_preload.patch sbitmap-advance-the-queue-index-before-waking-up-a-queue.patch wait-return-number-of-exclusive-waiters-awaken.patch sbitmap-try-each-queue-to-wake-up-at-least-one-waiter.patch +kbuild-port-silent-mode-detection-to-future-gnu-make.patch -- 2.47.3