2021-11-06 18:20 UTC-0300 ~ Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> > Em Sat, Nov 06, 2021 at 06:05:07PM -0300, Arnaldo Carvalho de Melo escreveu: >> Em Sat, Nov 06, 2021 at 05:12:48PM -0300, Arnaldo Carvalho de Melo escreveu: >>> Em Sat, Nov 06, 2021 at 04:29:16PM -0300, Arnaldo Carvalho de Melo escreveu: >>>> Em Fri, Nov 05, 2021 at 11:38:50AM -0700, Andrii Nakryiko escreveu: >>>>> On Thu, Nov 4, 2021 at 7:02 PM Quentin Monnet <quentin@xxxxxxxxxxxxx> wrote: >>>>>> >>>>>> API headers from libbpf should not be accessed directly from the >>>>>> library's source directory. Instead, they should be exported with "make >>>>>> install_headers". Let's adjust perf's Makefile to install those headers >>>>>> locally when building libbpf. >>>>>> >>>>>> Signed-off-by: Quentin Monnet <quentin@xxxxxxxxxxxxx> >>>>>> --- >>>>>> Note: Sending to bpf-next because it's directly related to libbpf, and >>>>>> to similar patches merged through bpf-next, but maybe Arnaldo prefers to >>>>>> take it? >>>>> >>>>> Arnaldo would know better how to thoroughly test it, so I'd prefer to >>>>> route this through perf tree. Any objections, Arnaldo? >>>> >>>> Preliminary testing passed for 'BUILD_BPF_SKEL=1' with without >>>> LIBBPF_DYNAMIC=1 (using the system's libbpf-devel to build perf), so far >>>> so good, so I tentatively applied it, will see with the full set of >>>> containers. >>> >>> Because all the preliminary tests used O= to have that OUTPUT variable >>> set, when we do simply: >>> >>> make -C tools/perf >> >> So I'll have to remove it now as my container builds test both O= and >> in-place builds (make -C tools/perf), I know many people (Jiri for >> instance) don't use O=. >> >> I tried to fix this but run out of time today, visits arriving soon, so >> I'll try to come back to this tomorrow early morning, to push what I >> have in to Linus, that is blocked by this now :-\ > > What I have, with your patch, is at: > > git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tmp.perf/core > > It has both patches, as its needed for the BUILD_BPF_SKEL=1 mode to > build correctly with/without LIBBPF_DYNAMIC=1. Hi Arnaldo, thanks for the review and testing. Apologies, I missed that the recipe for the $(LIBBPF_OUTPUT) directory was located under the "ifdef BUILD_BPF_SKEL". I'm sending a v2 that will handle this case better. Quentin