On Fri, 2024-07-19 at 16:21 -0700, Tony Ambardar wrote:

[...]


>  define GCC_BPF_BUILD_RULE
> -     $(call msg,GCC-BPF,$(TRUNNER_BINARY),$2)
> -     $(Q)$(BPF_GCC) $3 -DBPF_NO_PRESERVE_ACCESS_INDEX -Wno-attributes -O2 -c 
> $1 -o $2
> +     $(call msg,GCC-BPF,$1,$3)
> +     $(Q)$(BPF_GCC) $4 -DBPF_NO_PRESERVE_ACCESS_INDEX -Wno-attributes -O2 -c 
> $2 -o $3
>  endef
>  
>  SKEL_BLACKLIST := btf__% test_pinning_invalid.c test_sk_assign.c
> @@ -534,7 +535,7 @@ $(TRUNNER_BPF_OBJS): $(TRUNNER_OUTPUT)/%.bpf.o:           
>                 \
>                    $(wildcard $(BPFDIR)/bpf_*.h)                      \
>                    $(wildcard $(BPFDIR)/*.bpf.h)                      \
>                    | $(TRUNNER_OUTPUT) $$(BPFOBJ)
> -     $$(call $(TRUNNER_BPF_BUILD_RULE),$$<,$$@,                      \
> +     $$(call $(TRUNNER_BPF_BUILD_RULE),$(TRUNNER_BINARY),$$<,$$@,    \

At first I found it quite confusing that we use TRUNNER_BINARY variable in this 
define,
but can't use it in the CLANG_BPF_BUILD_RULE and co.
However, it looks like this is because of the eval in the (eval (call ...)) 
pair,
used to invoke DEFINE_TEST_RUNNER_RULES.

Suggested patch works and is probably the simplest fix.

Acked-by: Eduard Zingerman <[email protected]>

>                                         $(TRUNNER_BPF_CFLAGS)         \
>                                         $$($$<-CFLAGS)                \
>                                         $$($$<-$2-CFLAGS))


Reply via email to