Re: [PATCH] selftests: Makefile: create OUTPUT dir

From: Anders Roxell
Date: Wed Oct 02 2024 - 02:16:09 EST


On Wed, 25 Sept 2024 at 19:26, Shuah Khan <skhan@xxxxxxxxxxxxxxxxxxx> wrote:
>
> On 9/20/24 04:38, Jakub Kicinski wrote:
> > On Thu, 19 Sep 2024 09:51:47 -0600 Shuah Khan wrote:
> >>> @@ -261,6 +261,7 @@ ifdef INSTALL_PATH
> >>> @ret=1; \
> >>> for TARGET in $(TARGETS) $(INSTALL_DEP_TARGETS); do \
> >>> BUILD_TARGET=$$BUILD/$$TARGET; \
> >>> + mkdir -p $$BUILD_TARGET; \
> >>> $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET install \
> >>> INSTALL_PATH=$(INSTALL_PATH)/$$TARGET \
> >>> SRC_PATH=$(shell readlink -e $$(pwd)) \
> >>
> >> Doesn't the "all" target mkdir work for this case? Why do we need another mkdir here?
> >
> > I was wondering about that, too. Looks like the code from the all
> > target is copy/pasted in the install target except the mkdir line.
> > Best fix would be to make the dependency work, I don't understand
> > why it doesn't already, tho.
>
> I think this could be the issue:
>
> net main Makefile doesn't have handling for subdirs. It looks
> like the way this is handled is by adding an entry to the main
> Makefile:
>
> TARGETS += net/af_unix
> TARGETS += net/forwarding
> TARGETS += net/hsr
> TARGETS += net/mptcp
> TARGETS += net/openvswitch
> TARGETS += net/tcp_ao
> TARGETS += net/netfilter
>
> So the solution would be similar adding net/lib to the main
> Makefile.
>
> Anders, can you try the above and see if it works.

Sadly that didn't help.

>
> Another issue - lib/Makefile
> TEST_GEN_FILES += csum needs to be TEST_GEN_FILES = csum
>
> thanks,
> -- Shuah
>