On 04/22/16 10:48, Nicolas Pitre wrote: > 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. Hi, Yes, this patch helps, but I think there is still a problem. I think that trim needs to be done after CONFIG_BUILD_DOCSRC and possibly after CONFIG_SAMPLES are built. At least CONFIG_BUILD_DOCSRC seems to cause this error: Setup is 16508 bytes (padded to 16896 bytes). System is 6125 kB CRC 8aa70f94 Kernel: arch/x86/boot/bzImage is ready (#9) ERROR: "cn_del_callback" [Documentation/connector/cn_test.ko] undefined! ERROR: "cn_add_callback" [Documentation/connector/cn_test.ko] undefined! ERROR: "cn_netlink_send" [Documentation/connector/cn_test.ko] undefined! ../scripts/Makefile.modpost:91: recipe for target '__modpost' failed make[2]: *** [__modpost] Error 1 If I'm reading it incorrectly, just yell at me. :) > ----- >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 <nico@xxxxxxxxxx> > > 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 > -- -- ~Randy -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html