On October 15, 2026 4:26:33 PM GMT-03:00, Sasha Levin <[email protected]> wrote:
>On Tue, Oct 13, 2026 at 05:21:25PM -0300, Arnaldo Carvalho de Melo wrote:
>> Why is that difficult to run:
>> 
>> make -C tools/perf install-build-deps
>> 
>> To do a recommended perf build deps install?
>> 
>> That would be useful as it is what we expect users to do.
>
>That's what users do, but it wants to install packages.
>
>We need a path for unprivileged builds on bots and CI machines that can't
>install packages, and many of those builds are cross builds, where perf needs
>the target's libelf and libtraceevent rather than the host's.

I see. It's unfortunate as the end result will not be that useful, as it will 
not be testing what people use.

Maybe use make MINIMAL=1 when doing cross builds? 

I think we can make this easier for you somehow, like disabling libtraceevent 
when not available instead of asking for it to be explicitly  opted out?

>> If that is too difficult, for some reason, there is a minimal build in
>> tools/perf/tests/make, that is tested since forever:
>> 
>> # all the NO_* variable combined
>> make_minimal        := NO_PYTHON_MODULE=1
>> make_minimal        += NO_DEMANGLE=1 NO_LIBELF=1 NO_BACKTRACE=1
>> make_minimal        += NO_LIBNUMA=1 NO_LIBBIONIC=1 NO_LIBDW=1
>> make_minimal        += NO_LIBBPF=1
>> make_minimal        += NO_SDT=1 NO_JVMTI=1 NO_LIBZSTD=1
>> make_minimal        += NO_CAPSTONE=1

>I tried make_minimal on perf-tools-next. It still requires libtraceevent, so an
>arm64 cross build without the arm64 libtraceevent installed stops at that
>check. With NO_LIBTRACEEVENT=1 added, it then fails building the Rust test
>workload.

I'll fix that, make_minimal wasn't updated when libtraceevent was made optimal, 
IIRC when it was removed from the kernel sources 

> Natively it still enables aio, libLLVM, libslang, libtraceevent,
>lzma, zlib and Rust when they are installed, so the result depends on the
>machine.
> I'd like to go with Ian's suggestion then: a MINIMAL=1 knob in perf that turns
>off every optional feature, which tests/make can use for make_minimal as well.

Sure, for your use case it makes sense.

- Arnaldo

Reply via email to