On Thu, Jan 28, 2021 at 2:27 AM Andrii Nakryiko <andrii.nakryiko@xxxxxxxxx> wrote: > > On Thu, Jan 21, 2021 at 4:32 PM Sedat Dilek <sedat.dilek@xxxxxxxxx> wrote: > > > > When dealing with BPF/BTF/pahole and DWARF v5 I wanted to build bpftool. > > > > While looking into the source code I found duplicate assignments > > in misc tools for the LLVM eco system, e.g. clang and llvm-objcopy. > > > > Move the Clang, LLC and/or LLVM utils definitions to > > tools/scripts/Makefile.include file and add missing > > includes where needed. > > Honestly, I was inspired by commit c8a950d0d3b9 > > ("tools: Factor HOSTCC, HOSTLD, HOSTAR definitions"). > > > > I tested with bpftool and perf on Debian/testing AMD64 and > > LLVM/Clang v11.1.0-rc1. > > > > Build instructions: > > > > [ make and make-options ] > > MAKE="make V=1" > > MAKE_OPTS="HOSTCC=clang HOSTCXX=clang++ HOSTLD=ld.lld CC=clang LD=ld.lld LLVM=1 LLVM_IAS=1" > > MAKE_OPTS="$MAKE_OPTS PAHOLE=/opt/pahole/bin/pahole" > > > > [ clean-up ] > > $MAKE $MAKE_OPTS -C tools/ clean > > > > [ bpftool ] > > $MAKE $MAKE_OPTS -C tools/bpf/bpftool/ > > > > [ perf ] > > PYTHON=python3 $MAKE $MAKE_OPTS -C tools/perf/ > > > > I was careful with respecting the user's wish to override custom compiler, > > linker, GNU/binutils and/or LLVM utils settings. > > > > Some personal notes: > > 1. I have NOT tested with cross-toolchain for other archs (cross compiler/linker etc.). > > 2. This patch is on top of Linux v5.11-rc4. > > > > I hope to get some feedback from especially Linux-bpf folks. > > > > Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx> # tools/build and tools/perf > > Signed-off-by: Sedat Dilek <sedat.dilek@xxxxxxxxx> > > --- > > Hi Sedat, > > If no one objects, we'll take this through bpf-next tree. Can you > please re-send this as a non-RFC patch against the bpf-next tree? Feel > free to add my ack. Thanks. > I am OK with that and will add your ACK. Is [1] bpf-next Git? - Sedat - [1] https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git/ > > Changelog RFC v1->v2: > > - Add Jiri's ACK > > - Adapt to fit Linux v5.11-rc4 > > > > [...]