Message ID | 20230119082447.152020-1-masahiroy@kernel.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | powerpc: add crtsavres.o to always-y instead of extra-y | expand |
On Thu, Jan 19, 2023 at 05:24:47PM +0900, Masahiro Yamada wrote: > crtsavres.o is linked to modules, but as commit d0e628cd817f ("kbuild: > doc: clarify the difference between extra-y and always-y") explained, > 'make modules' does not build extra-y. > > The following command fails: > > $ make ARCH=powerpc LLVM=1 mrproper ps3_defconfig modules > [snip] > LD [M] arch/powerpc/platforms/cell/spufs/spufs.ko > ld.lld: error: cannot open arch/powerpc/lib/crtsavres.o: No such file or directory > make[1]: *** [scripts/Makefile.modfinal:61: arch/powerpc/platforms/cell/spufs/spufs.ko] Error 1 > make: *** [Makefile:1924: modules] Error 2 > > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> Reviewed-by: Nathan Chancellor <nathan@kernel.org> > --- > > arch/powerpc/lib/Makefile | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/powerpc/lib/Makefile b/arch/powerpc/lib/Makefile > index c53618c34b70..aa34854bc9f5 100644 > --- a/arch/powerpc/lib/Makefile > +++ b/arch/powerpc/lib/Makefile > @@ -43,7 +43,7 @@ obj-$(CONFIG_FUNCTION_ERROR_INJECTION) += error-inject.o > # so it is only needed for modules, and only for older linkers which > # do not support --save-restore-funcs > ifndef CONFIG_LD_IS_BFD > -extra-$(CONFIG_PPC64) += crtsavres.o > +always-$(CONFIG_PPC64) += crtsavres.o > endif > > obj-$(CONFIG_PPC_BOOK3S_64) += copyuser_power7.o copypage_power7.o \ > -- > 2.34.1 >
diff --git a/arch/powerpc/lib/Makefile b/arch/powerpc/lib/Makefile index c53618c34b70..aa34854bc9f5 100644 --- a/arch/powerpc/lib/Makefile +++ b/arch/powerpc/lib/Makefile @@ -43,7 +43,7 @@ obj-$(CONFIG_FUNCTION_ERROR_INJECTION) += error-inject.o # so it is only needed for modules, and only for older linkers which # do not support --save-restore-funcs ifndef CONFIG_LD_IS_BFD -extra-$(CONFIG_PPC64) += crtsavres.o +always-$(CONFIG_PPC64) += crtsavres.o endif obj-$(CONFIG_PPC_BOOK3S_64) += copyuser_power7.o copypage_power7.o \
crtsavres.o is linked to modules, but as commit d0e628cd817f ("kbuild: doc: clarify the difference between extra-y and always-y") explained, 'make modules' does not build extra-y. The following command fails: $ make ARCH=powerpc LLVM=1 mrproper ps3_defconfig modules [snip] LD [M] arch/powerpc/platforms/cell/spufs/spufs.ko ld.lld: error: cannot open arch/powerpc/lib/crtsavres.o: No such file or directory make[1]: *** [scripts/Makefile.modfinal:61: arch/powerpc/platforms/cell/spufs/spufs.ko] Error 1 make: *** [Makefile:1924: modules] Error 2 Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> --- arch/powerpc/lib/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)