On Thu, Sep 10, 2026 at 11:12:24PM +0200, Maxime Chevallier wrote:
> Hi Bobby,
> 
> On 9/10/26 19:10, Bobby Eshleman wrote:
> > On Wed, Sep 09, 2026 at 09:11:54AM +0200, Maxime Chevallier (Netdev 
> > Foundation) wrote:
> >> After the blamed commit, running a out-of-tree build for ynltool fails :
> >>
> >>   # make -C tools/net/ynl/ynltool O=/tmp/o1
> >>   make: Entering directory 'tools/net/ynl/ynltool'
> >>   make: *** No rule to make target '/tmp/o1/json_writer.o', needed by 
> >> '/tmp/o1/ynltool'.  Stop.
> >>
> >> ynltool's Makefile correctly accounts for $(OUTPUT) to get the list of
> >> object files to generate :
> >>
> >> OBJS := $(patsubst %.c,$(OUTPUT)%.o,$(SRCS))
> >>
> >> but it never actually set $(OUTPUT) before the blamed commit, meaning
> >> that out-of-tree buils of ynltool were always actually in-tree.
> >>
> >> Now, the O= parameter is correctly accounted for, and the %o: %c rule 
> >> fails.
> >>
> >> Let's update the %o: %c rule to also use $(OUTPUT).
> >>
> >> Reported-by: Bobby Eshleman <[email protected]>
> >> Closes: 
> >> https://lore.kernel.org/all/[email protected]/
> >> Fixes: 917f713b4ec4 ("tools: ynl: Allow cross-compiling ynl and associated 
> >> tools")
> >> Signed-off-by: Maxime Chevallier (Netdev Foundation) 
> >> <[email protected]>
> 
> [...]
> 
> > Reviewed-by: Bobby Eshleman <[email protected]>
> 
> Thanks :)
> 
> Nicolai noted that there's another improvement to be made, as we don't
> account for modifications made to .h files. The diff would be :
> 
> -include $(wildcard *.d)
> +include $(wildcard $(OUTPUT)*.d)
> 
> See [1].
> 
> May I keep your review tag if I add the above diff in v2 ?
> 
> Thanks,
> 
> Maxime

Yes, np, feel free to carry it forward!

Best,
Bobby

Reply via email to