On Fri, 22 Apr 2016, Randy Dunlap wrote:

> on x86_64:
> 
> I'm seeing:
> 
> /bin/sh: scripts/adjust_autoksyms.sh: No such file or directory
> /local/lnx/next/linux-next-20160422/Makefile:937: recipe for target 'vmlinux' 
> failed
> 
> when using O=subdir for the build output directory.
> 
> 
> Is there a missing $(objtree) somewhere?

Rather a $(srctree).  Please try the patch below.

----- >8

Subject: [PATCH] kbuild: fix CONFIG_TRIM_UNUSED_KSYMS=y with a separate output  
directory

This fixes the following:

/bin/sh: scripts/adjust_autoksyms.sh: No such file or directory

Signed-off-by: Nicolas Pitre <n...@linaro.org>

diff --git a/Makefile b/Makefile
index e3af48068c..e9ad498238 100644
--- a/Makefile
+++ b/Makefile
@@ -934,7 +934,7 @@ quiet_cmd_link-vmlinux = LINK    $@
 # execute if the rest of the kernel build went well.
 vmlinux: scripts/link-vmlinux.sh $(vmlinux-deps) FORCE
 ifdef CONFIG_TRIM_UNUSED_KSYMS
-       $(Q)$(CONFIG_SHELL) scripts/adjust_autoksyms.sh \
+       $(Q)$(CONFIG_SHELL) $(srctree)/scripts/adjust_autoksyms.sh \
          "$(MAKE) KBUILD_MODULES=1 -f $(srctree)/Makefile autoksyms_recursive"
 endif
 ifdef CONFIG_HEADERS_CHECK
@@ -949,13 +949,13 @@ endif
        +$(call if_changed,link-vmlinux)
 
 autoksyms_recursive: $(vmlinux-deps)
-       $(Q)$(CONFIG_SHELL) scripts/adjust_autoksyms.sh \
+       $(Q)$(CONFIG_SHELL) $(srctree)/scripts/adjust_autoksyms.sh \
          "$(MAKE) KBUILD_MODULES=1 -f $(srctree)/Makefile autoksyms_recursive"
 PHONY += autoksyms_recursive
 
 # standalone target for easier testing
 include/generated/autoksyms.h: FORCE
-       $(Q)$(CONFIG_SHELL) scripts/adjust_autoksyms.sh true
+       $(Q)$(CONFIG_SHELL) $(srctree)/scripts/adjust_autoksyms.sh true
 
 # Build samples along the rest of the kernel
 ifdef CONFIG_SAMPLES

Reply via email to