Skip to contentSkip to conversation

Makefile: Make checkstack work with O= builds

PATCH In review Stephen Boyd 2 participants 2 messages Dec 22, 2012 – Jan 13, 2013

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Makefile: Make checkstack work with O= builds

The vmlinux doesn't always live in the same directory as the source files and so 'make O=obj checkstack' fails with a missing vmlinux file. Fix checkstack so that this is possible.

---

It would also be nice if this depended on vmlinux and modules being built already but I couldn't figure that part out.

 Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Makefile +1 -1
index 4fe0559..54a386b 100644
@@ -1318,7 +1318,7 @@ else
 CHECKSTACK_ARCH := $(ARCH)
 endif
 checkstack:
-	$(OBJDUMP) -d vmlinux $$(find . -name '*.ko') | \
+	$(OBJDUMP) -d $(objtree)/vmlinux $$(find $(objtree) -name '*.ko') | \
 	$(PERL) $(src)/scripts/checkstack.pl $(CHECKSTACK_ARCH)
 
 kernelrelease:
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
#1 lore raw
Quoted 3 lines · Stephen Boyd

The vmlinux doesn't always live in the same directory as the source files and so 'make O=obj checkstack' fails with a missing vmlinux file. Fix checkstack so that this is possible.

It works for me even without your patch. With O=<dir>, a second make is run in <dir>, so $(objtree) is equivalent to . for the top-level Makefile. Can you post the exact command your run and the error message you get?

Thanks,
Michal