On Wed, Feb 01, 2023 at 02:21:16PM -0700, Nathan Chancellor wrote: SNIP > > > Should we do this and the hostprogs migration as a follow up? There > > > isn't that much use of hostprogs in tools, but I like that your change > > > will show HOSTCC rather than CC during compilation. If we use > > > hostprogs can we just avoid the overrides altogether? > > > > right, I think so.. we can now remove it for the BINARY target and > > then for the rest of 'prepare' once they are converted to hostprogs.. > > not sure how 'hostprogs' will work for library, will need to check > > > > I'll try to send the format patch with the fix below tomorrow > > > > Nathan, any chance you could test it? > > > Sure thing, would you happen to have a single patch file of what I > should test? I am a little confused from reading the thread (unless what > you want tested has not been sent yet). I meant the change below, but I posted the formal patch now: https://lore.kernel.org/bpf/20230202112839.1131892-1-jolsa@xxxxxxxxxx/T/#u thanks, jirka > > Cheers, > Nathan > > > > > --- > > > > diff --git a/tools/bpf/resolve_btfids/Build b/tools/bpf/resolve_btfids/Build > > > > index ae82da03f9bf..077de3829c72 100644 > > > > --- a/tools/bpf/resolve_btfids/Build > > > > +++ b/tools/bpf/resolve_btfids/Build > > > > @@ -1,3 +1,5 @@ > > > > +hostprogs := resolve_btfids > > > > + > > > > resolve_btfids-y += main.o > > > > resolve_btfids-y += rbtree.o > > > > resolve_btfids-y += zalloc.o > > > > @@ -7,4 +9,4 @@ resolve_btfids-y += str_error_r.o > > > > > > > > $(OUTPUT)%.o: ../../lib/%.c FORCE > > > > $(call rule_mkdir) > > > > - $(call if_changed_dep,cc_o_c) > > > > + $(call if_changed_dep,host_cc_o_c) > > > > diff --git a/tools/bpf/resolve_btfids/Makefile b/tools/bpf/resolve_btfids/Makefile > > > > index daed388aa5d7..de513fd08535 100644 > > > > --- a/tools/bpf/resolve_btfids/Makefile > > > > +++ b/tools/bpf/resolve_btfids/Makefile > > > > @@ -22,6 +22,9 @@ HOST_OVERRIDES := AR="$(HOSTAR)" CC="$(HOSTCC)" LD="$(HOSTLD)" ARCH="$(HOSTARCH) > > > > EXTRA_CFLAGS="$(HOSTCFLAGS) $(KBUILD_HOSTCFLAGS)" > > > > > > > > RM ?= rm > > > > +HOSTCC ?= gcc > > > > +HOSTLD ?= ld > > > > +HOSTAR ?= ar > > > > CROSS_COMPILE = > > > > > > > > OUTPUT ?= $(srctree)/tools/bpf/resolve_btfids/ > > > > @@ -64,7 +67,7 @@ $(BPFOBJ): $(wildcard $(LIBBPF_SRC)/*.[ch] $(LIBBPF_SRC)/Makefile) | $(LIBBPF_OU > > > > LIBELF_FLAGS := $(shell $(HOSTPKG_CONFIG) libelf --cflags 2>/dev/null) > > > > LIBELF_LIBS := $(shell $(HOSTPKG_CONFIG) libelf --libs 2>/dev/null || echo -lelf) > > > > > > > > -CFLAGS += -g \ > > > > +HOSTCFLAGS += -g \ > > > > -I$(srctree)/tools/include \ > > > > -I$(srctree)/tools/include/uapi \ > > > > -I$(LIBBPF_INCLUDE) \ > > > > @@ -73,7 +76,7 @@ CFLAGS += -g \ > > > > > > > > LIBS = $(LIBELF_LIBS) -lz > > > > > > > > -export srctree OUTPUT CFLAGS Q > > > > +export srctree OUTPUT HOSTCFLAGS Q HOSTCC HOSTLD HOSTAR > > > > include $(srctree)/tools/build/Makefile.include > > > > > > > > $(BINARY_IN): fixdep FORCE prepare | $(OUTPUT)