]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
perf build: Fix perf build issues with fixdep
authorJosh Poimboeuf <jpoimboe@kernel.org>
Mon, 20 Oct 2025 20:33:15 +0000 (13:33 -0700)
committerPeter Zijlstra <peterz@infradead.org>
Thu, 23 Oct 2025 07:53:49 +0000 (09:53 +0200)
Commit a808a2b35f66 ("tools build: Fix fixdep dependencies") broke the
perf build ("make -C tools/perf") by introducing two inadvertent
conflicts:

  1) tools/build/Makefile includes tools/build/Makefile.include, which
     defines a phony 'fixdep' target.  This conflicts with the $(FIXDEP)
     file target in tools/build/Makefile when OUTPUT is empty, causing
     make to report duplicate recipes for the same target.

  2) The FIXDEP variable in tools/build/Makefile conflicts with the
     previously existing one in tools/perf/Makefile.perf.

Remove the unnecessary include of tools/build/Makefile.include from
tools/build/Makefile, and rename the FIXDEP variable in
tools/perf/Makefile.perf to FIXDEP_BUILT.

Fixes: a808a2b35f66 ("tools build: Fix fixdep dependencies")
Reported-by: Thorsten Leemhuis <linux@leemhuis.info>
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Thorsten Leemhuis <linux@leemhuis.info>
Link: https://patch.msgid.link/8881bc3321bd9fa58802e4f36286eefe3667806b.1760992391.git.jpoimboe@kernel.org
tools/build/Makefile
tools/perf/Makefile.perf

index a5b3c29b8d70ccf6a6e7eadce6b7140e0eae5b0f..3a5a3808ab2a1dedd40f35ea322913e8a0788130 100644 (file)
@@ -37,8 +37,6 @@ ifneq ($(wildcard $(TMP_O)),)
        $(Q)$(MAKE) -C feature OUTPUT=$(TMP_O) clean >/dev/null
 endif
 
-include $(srctree)/tools/build/Makefile.include
-
 FIXDEP         := $(OUTPUT)fixdep
 FIXDEP_IN      := $(OUTPUT)fixdep-in.o
 
index 47c906b807ef257e729330f5bc732cc639b9f87c..02f87c49801fcbb7bbc375079ec0d9e6971e0c20 100644 (file)
@@ -234,12 +234,12 @@ endif
 # The fixdep build - we force fixdep tool to be built as
 # the first target in the separate make session not to be
 # disturbed by any parallel make jobs. Once fixdep is done
-# we issue the requested build with FIXDEP=1 variable.
+# we issue the requested build with FIXDEP_BUILT=1 variable.
 #
 # The fixdep build is disabled for $(NON_CONFIG_TARGETS)
 # targets, because it's not necessary.
 
-ifdef FIXDEP
+ifdef FIXDEP_BUILT
   force_fixdep := 0
 else
   force_fixdep := $(config)
@@ -286,7 +286,7 @@ $(goals) all: sub-make
 
 sub-make: fixdep
        @./check-headers.sh
-       $(Q)$(MAKE) FIXDEP=1 -f Makefile.perf $(goals)
+       $(Q)$(MAKE) FIXDEP_BUILT=1 -f Makefile.perf $(goals)
 
 else # force_fixdep