Re: powerpc: 32BIT vs. 64BIT (PPC32 vs. PPC64)
From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2018-07-31 09:57:38
Also in:
linux-kbuild
Masahiro Yamada [off-list ref] writes:
2018-07-07 23:59 GMT+09:00 Randy Dunlap [off-list ref]:quoted
On 07/07/2018 05:13 AM, Nicholas Piggin wrote:quoted
On Fri, 6 Jul 2018 21:58:29 -0700 Randy Dunlap [off-list ref] wrote:quoted
On 07/06/2018 06:45 PM, Benjamin Herrenschmidt wrote:quoted
On Thu, 2018-07-05 at 14:30 -0700, Randy Dunlap wrote:quoted
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.quoted
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.quoted
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...Yes, this mostly works and is similar to a patch (my patch) on my test machine. And they both work for allmodconfig, which is my primary build target. And they both have one little quirk that is confusing when the build target is defconfig: When ARCH=ppc32, the terminal output (stdout) is: (using O=PPC32) make[1]: Entering directory '/home/rdunlap/lnx/lnx-418-rc3/PPC32' GEN ./Makefile *** Default configuration is based on 'ppc64_defconfig' <<<<< NOTE <<<<< # # configuration written to .config # make[1]: Leaving directory '/home/rdunlap/lnx/lnx-418-rc3/PPC32'Maybe, we can set one of ppc32 defconfigs to KBUILD_DEFCONFIG if ARCH is ppc32 ?
We could, but as I said in another reply I'd rather we didn't play tricks with ARCH. I've merged a patch to add three new allmodconfig targets for ppc32, ppc64le and ppc64_book3e: https://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=54457&state=* cheers