From: Ben Hutchings Date: Sat, 4 Mar 2017 01:44:15 +0000 (+0000) Subject: Kbuild.include: addtree: Remove quotes before matching path X-Git-Tag: archive/raspbian/4.9.82-1+deb9u3+rpi1_jessie~8^2~56 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=f8f073c23e3bb3d4b43b17fbf26d50701fdcc45b;p=linux-4.9.git Kbuild.include: addtree: Remove quotes before matching path systemtap currently fails to build modules when the kernel source and object trees are separate. systemtap adds something like -I"/usr/share/systemtap/runtime" to EXTRA_CFLAGS, and addtree should not adjust this as it's specifying an absolute directory. But since make has no understanding of shell quoting, it does anyway. For a long time this didn't matter, because addtree would still emit the original -I option after the adjusted one. However, commit db547ef19064 ("Kbuild: don't add obj tree in additional includes") changed it to remove the original -I option. Remove quotes (both double and single) before matching against the excluded patterns. References: https://bugs.debian.org/856474 Reported-by: Jack Henschel Reported-by: Ritesh Raj Sarraf Fixes: db547ef19064 ("Kbuild: don't add obj tree in additional includes") Cc: stable@vger.kernel.org # 4.8+ Signed-off-by: Ben Hutchings Gbp-Pq: Topic bugfix/all Gbp-Pq: Name kbuild-include-addtree-remove-quotes-before-matching-path.patch --- diff --git a/scripts/Kbuild.include b/scripts/Kbuild.include index e9c8ecea1b5a..b133c7e76d1a 100644 --- a/scripts/Kbuild.include +++ b/scripts/Kbuild.include @@ -207,7 +207,7 @@ hdr-inst := -f $(srctree)/scripts/Makefile.headersinst obj # Prefix -I with $(srctree) if it is not an absolute path. # skip if -I has no parameter addtree = $(if $(patsubst -I%,%,$(1)), \ -$(if $(filter-out -I/% -I./% -I../%,$(1)),$(patsubst -I%,-I$(srctree)/%,$(1)),$(1))) +$(if $(filter-out -I/% -I./% -I../%,$(subst $(quote),,$(subst $(squote),,$(1)))),$(patsubst -I%,-I$(srctree)/%,$(1)),$(1))) # Find all -I options and call addtree flags = $(foreach o,$($(1)),$(if $(filter -I%,$(o)),$(call addtree,$(o)),$(o)))