On Tue, Dec 24, 2024 at 03:59:57PM +0800, Jiayuan Chen wrote: > Currently, when we run the BPF selftests with the following command: > 'make -C tools/testing/selftests TARGETS=bpf SKIP_TARGETS=""' > > The command generates untracked files and directories with make version > less than 4.4: > ''' > Untracked files: > (use "git add <file>..." to include in what will be committed) > tools/testing/selftests/bpfFEATURE-DUMP.selftests > tools/testing/selftests/bpffeature/ > ''' > We lost slash after word "bpf". > > The reason is slash appending code is as follow: > ''' > OUTPUT := $(OUTPUT)/ > $(eval include ../../../build/Makefile.feature) > OUTPUT := $(patsubst %/,%,$(OUTPUT)) > ''' > > This way of assigning values to OUTPUT will never be effective for the > variable OUTPUT provided via the command argument [1] and bpf makefile > is called from parent Makfile(tools/testing/selftests/Makefile) like: > ''' > all: > ... > $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET > ''' > > According to GNU make, we can use override Directive to fix this issue [2]. > > [1]: https://www.gnu.org/software/make/manual/make.html#Overriding > [2]: https://www.gnu.org/software/make/manual/make.html#Override-Directive > Fixes: dc3a8804d790 ("selftests/bpf: Adapt OUTPUT appending logic to lower versions of Make") > > Signed-off-by: Jiayuan Chen <mrpre@xxxxxxx> lgtm, tested with make 4.3 Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx> jirka > > --- > v1->v2: fix patchwork check fail. > --- > --- > tools/testing/selftests/bpf/Makefile | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests/bpf/Makefile > index 9e870e519c30..eb4d21651aa7 100644 > --- a/tools/testing/selftests/bpf/Makefile > +++ b/tools/testing/selftests/bpf/Makefile > @@ -202,9 +202,9 @@ ifeq ($(shell expr $(MAKE_VERSION) \>= 4.4), 1) > $(let OUTPUT,$(OUTPUT)/,\ > $(eval include ../../../build/Makefile.feature)) > else > -OUTPUT := $(OUTPUT)/ > +override OUTPUT := $(OUTPUT)/ > $(eval include ../../../build/Makefile.feature) > -OUTPUT := $(patsubst %/,%,$(OUTPUT)) > +override OUTPUT := $(patsubst %/,%,$(OUTPUT)) > endif > endif > > -- > 2.43.5 >