On Wed, Nov 27, 2024 at 11:17:46AM +0100, Björn Töpel wrote: > From: Björn Töpel <bjorn@xxxxxxxxxxxx> > > There are a number of tools (bpftool, selftests), that require a > "bootstrap" build. Here, a bootstrap build is a build host variant of > a target. E.g., assume that you're performing a bpftool cross-build on > x86 to riscv, a bootstrap build would then be an x86 variant of > bpftool. The typical way to perform the host build variant, is to pass > "ARCH=" in a sub-make. However, if a variable has been set with a > command argument, then ordinary assignments in the makefile are > ignored. > > This side-effect results in that ARCH, and variables depending on ARCH > are not set. > > Workaround by overriding ARCH to the host arch, if ARCH is empty. > > Fixes: 8859b0da5aac ("tools/bpftool: Fix cross-build") > Reviewed-by: Jean-Philippe Brucker <jean-philippe@xxxxxxxxxx> > Tested-by: Alexandre Ghiti <alexghiti@xxxxxxxxxxxx> > Reviewed-by: Namhyung Kim <namhyung@xxxxxxxxxx> > Acked-by: Quentin Monnet <qmo@xxxxxxxxxx> > Signed-off-by: Björn Töpel <bjorn@xxxxxxxxxxxx> Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx> jirka > --- > v2: Proper tree tag "bpf". > Collected *-by tags. > > Andrii, > > Apologies for missing out the tree tag in the patch. Here's a respin, > and thanks for routing it via the BPF tree. > > > Björn > > --- > tools/scripts/Makefile.arch | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tools/scripts/Makefile.arch b/tools/scripts/Makefile.arch > index f6a50f06dfc4..eabfe9f411d9 100644 > --- a/tools/scripts/Makefile.arch > +++ b/tools/scripts/Makefile.arch > @@ -7,8 +7,8 @@ HOSTARCH := $(shell uname -m | sed -e s/i.86/x86/ -e s/x86_64/x86/ \ > -e s/sh[234].*/sh/ -e s/aarch64.*/arm64/ \ > -e s/riscv.*/riscv/ -e s/loongarch.*/loongarch/) > > -ifndef ARCH > -ARCH := $(HOSTARCH) > +ifeq ($(strip $(ARCH)),) > +override ARCH := $(HOSTARCH) > endif > > SRCARCH := $(ARCH) > > base-commit: 3448ad23b34e43a2526bd0f9e1221e8de876adec > -- > 2.45.2 > >