• Nicholas Piggin's avatar
    powerpc/kbuild: Set default generic machine type for 32-bit compile · 4bf4f42a
    Nicholas Piggin authored
    Some 64-bit toolchains uses the wrong ISA variant for compiling 32-bit
    kernels, even with -m32. Debian's powerpc64le is one such case, and
    that is because it is built with --with-cpu=power8.
    
    So when cross compiling a 32-bit kernel with a 64-bit toolchain, set
    -mcpu=powerpc initially, which is the generic 32-bit powerpc machine
    type and scheduling model. CPU and platform code can override this
    with subsequent -mcpu flags if necessary.
    
    This is not done for 32-bit toolchains otherwise it would override
    their defaults, which are presumably set appropriately for the
    environment (moreso than a 64-bit cross compiler).
    
    This fixes a lot of build failures due to incompatible assembly when
    compiling 32-bit kernel with the Debian powerpc64le 64-bit toolchain.
    Signed-off-by: default avatarNicholas Piggin <npiggin@gmail.com>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    4bf4f42a
Makefile 15.2 KB