Nicholas Piggin <npiggin@xxxxxxxxx> writes: > On Fri, 6 Jul 2018 21:58:29 -0700 > Randy Dunlap <rdunlap@xxxxxxxxxxxxx> wrote: > >> On 07/06/2018 06:45 PM, Benjamin Herrenschmidt wrote: >> > On Thu, 2018-07-05 at 14:30 -0700, Randy Dunlap wrote: >> >> Hi, >> >> >> >> Is there a good way (or a shortcut) to do something like: >> >> >> >> $ make ARCH=powerpc O=PPC32 [other_options] allmodconfig >> >> to get a PPC32/32BIT allmodconfig >> >> >> >> and also be able to do: >> >> >> >> $make ARCH=powerpc O=PPC64 [other_options] allmodconfig >> >> to get a PPC64/64BIT allmodconfig? >> > >> > Hrm... O= is for the separate build dir, so there much be something >> > else. >> > >> > You mean having ARCH= aliases like ppc/ppc32 and ppc64 ? >> >> Yes. >> >> > That would be a matter of overriding some .config defaults I suppose, I >> > don't know how this is done on other archs. >> > >> > I see the aliasing trick in the Makefile but that's about it. >> > >> >> Note that arch/x86, arch/sh, and arch/sparc have ways to do >> >> some flavor(s) of this (from Documentation/kbuild/kbuild.txt; >> >> sh and sparc based on a recent "fix" patch from me): >> > >> > I fail to see what you are actually talking about here ... sorry. Do >> > you have concrete examples on x86 or sparc ? From what I can tell the >> > "i386" or "sparc32/sparc64" aliases just change SRCARCH in Makefile and >> > 32 vs 64-bit is just a Kconfig option... >> >> Yes, your summary is mostly correct. >> >> I'm just looking for a way to do cross-compile builds that are close to >> ppc32 allmodconfig and ppc64 allmodconfig. > > Would there a problem with adding ARCH=ppc32 / ppc64 matching? This > seems to work... It's a cute trick but I'd rather avoid it. It overloads ARCH which can be confusing to people and tools. For example I'd have to special case it in kisskb. I think we can achieve a similar result by having more PHONY defconfig targets. eg, we can do ppc32_allmodconfig like below. And if there's interest we could do a 4xx_allmodconfig etc. diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile index 2ea575cb3401..2556c2182789 100644 --- a/arch/powerpc/Makefile +++ b/arch/powerpc/Makefile @@ -354,6 +354,11 @@ mpc86xx_smp_defconfig: $(call merge_into_defconfig,mpc86xx_basic_defconfig,\ 86xx-smp 86xx-hw fsl-emb-nonhw) +PHONY += ppc32_allmodconfig +ppc32_allmodconfig: + $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/book3s_32.config \ + -f $(srctree)/Makefile allmodconfig + define archhelp @echo '* zImage - Build default images selected by kernel config' @echo ' zImage.* - Compressed kernel image (arch/$(ARCH)/boot/zImage.*)' diff --git a/arch/powerpc/configs/book3s_32.config b/arch/powerpc/configs/book3s_32.config new file mode 100644 index 000000000000..8721eb7b1294 --- /dev/null +++ b/arch/powerpc/configs/book3s_32.config @@ -0,0 +1,2 @@ +CONFIG_PPC64=n +CONFIG_PPC_BOOK3S_32=y cheers -- 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