perf build: filter all combinations of -flto for libperl
authorHolger Hoffstätte <holger@applied-asynchrony.com>
Fri, 21 Mar 2025 08:20:39 +0000 (09:20 +0100)
committerNamhyung Kim <namhyung@kernel.org>
Mon, 24 Mar 2025 06:12:10 +0000 (23:12 -0700)
commit9480cc14a95e3883f895b5a2baa8f6c0c199c604
treeffeee6e15b2d86757cabc1ed20a985171c65a5de
parent182f12f3193341c3400ae719a34c00a8a1204cff
perf build: filter all combinations of -flto for libperl

When enabling the libperl feature the build uses perl's build flags
(ccopts) but filters out various flags, e.g. for LTO.
While this is conceptually correct, it is insufficient in practice,
since only "-flto=auto" is filtered out. When perl itself is built with
"-flto" this can cause parts of perf being built with LTO and others
without, giving exciting build errors like e.g.:

   ../tools/perf/pmu-events/pmu-events.c:72851:(.text+0xb79): undefined
   reference to `strcmp_cpuid_str' collect2: error: ld returned 1 exit status

Fix this by filtering all matching flag values of -flto{=n,auto,..}.

Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com>
Link: https://lore.kernel.org/r/20250321082038.27901-2-holger@applied-asynchrony.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
tools/perf/Makefile.config