Message ID | 20211109150146.529428-1-masahiroy@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Commit | 0706f74f719e6e72c3a862ab2990796578fa73cc |
Headers | show |
Series | [1/2] MIPS: fix *-pkg builds for loongson2ef platform | expand |
On Wed, Nov 10, 2021 at 12:01:45AM +0900, Masahiro Yamada wrote: > Since commit 805b2e1d427a ("kbuild: include Makefile.compiler only when > compiler is needed"), package builds for the loongson2f platform fail. > > $ make ARCH=mips CROSS_COMPILE=mips64-linux- lemote2f_defconfig bindeb-pkg > [ snip ] > sh ./scripts/package/builddeb > arch/mips/loongson2ef//Platform:36: *** only binutils >= 2.20.2 have needed option -mfix-loongson2f-nop. Stop. > cp: cannot stat '': No such file or directory > make[5]: *** [scripts/Makefile.package:87: intdeb-pkg] Error 1 > make[4]: *** [Makefile:1558: intdeb-pkg] Error 2 > make[3]: *** [debian/rules:13: binary-arch] Error 2 > dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 > make[2]: *** [scripts/Makefile.package:83: bindeb-pkg] Error 2 > make[1]: *** [Makefile:1558: bindeb-pkg] Error 2 > make: *** [Makefile:350: __build_one_by_one] Error 2 > > The reason is because "make image_name" fails. > > $ make ARCH=mips CROSS_COMPILE=mips64-linux- image_name > arch/mips/loongson2ef//Platform:36: *** only binutils >= 2.20.2 have needed option -mfix-loongson2f-nop. Stop. > > In general, adding $(error ...) in the parse stage is troublesome, > and it is pointless to check toolchains even if we are not building > anything. Do not include Kbuild.platform in such cases. > > Fixes: 805b2e1d427a ("kbuild: include Makefile.compiler only when compiler is needed") > Reported-by: Jason Self <jason@bluehome.net> > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> > --- > > arch/mips/Makefile | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/mips/Makefile b/arch/mips/Makefile > index e036fc025ccc..ace7f033de07 100644 > --- a/arch/mips/Makefile > +++ b/arch/mips/Makefile > @@ -253,7 +253,9 @@ endif > # > # Board-dependent options and extra files > # > +ifdef need-compiler > include $(srctree)/arch/mips/Kbuild.platforms > +endif > > ifdef CONFIG_PHYSICAL_START > load-y = $(CONFIG_PHYSICAL_START) > -- > 2.30.2 applied to mips-next. Thomas.
diff --git a/arch/mips/Makefile b/arch/mips/Makefile index e036fc025ccc..ace7f033de07 100644 --- a/arch/mips/Makefile +++ b/arch/mips/Makefile @@ -253,7 +253,9 @@ endif # # Board-dependent options and extra files # +ifdef need-compiler include $(srctree)/arch/mips/Kbuild.platforms +endif ifdef CONFIG_PHYSICAL_START load-y = $(CONFIG_PHYSICAL_START)
Since commit 805b2e1d427a ("kbuild: include Makefile.compiler only when compiler is needed"), package builds for the loongson2f platform fail. $ make ARCH=mips CROSS_COMPILE=mips64-linux- lemote2f_defconfig bindeb-pkg [ snip ] sh ./scripts/package/builddeb arch/mips/loongson2ef//Platform:36: *** only binutils >= 2.20.2 have needed option -mfix-loongson2f-nop. Stop. cp: cannot stat '': No such file or directory make[5]: *** [scripts/Makefile.package:87: intdeb-pkg] Error 1 make[4]: *** [Makefile:1558: intdeb-pkg] Error 2 make[3]: *** [debian/rules:13: binary-arch] Error 2 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 make[2]: *** [scripts/Makefile.package:83: bindeb-pkg] Error 2 make[1]: *** [Makefile:1558: bindeb-pkg] Error 2 make: *** [Makefile:350: __build_one_by_one] Error 2 The reason is because "make image_name" fails. $ make ARCH=mips CROSS_COMPILE=mips64-linux- image_name arch/mips/loongson2ef//Platform:36: *** only binutils >= 2.20.2 have needed option -mfix-loongson2f-nop. Stop. In general, adding $(error ...) in the parse stage is troublesome, and it is pointless to check toolchains even if we are not building anything. Do not include Kbuild.platform in such cases. Fixes: 805b2e1d427a ("kbuild: include Makefile.compiler only when compiler is needed") Reported-by: Jason Self <jason@bluehome.net> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> --- arch/mips/Makefile | 2 ++ 1 file changed, 2 insertions(+)