As Guo explained, upstream gcc does not support abi-v1 (only abi-v2), but
ck610 needs abi-v1 [0] [1]
To simplify things, we make the whole C-SKY architecture require gcc-9
or later, and add a single exception in gcc to force the ck610 to use
the C-SKY port.
Note that this does not change the default gcc version to be used for
C-SKY: the C-SKY port is still always the default one; the gcc-9 version
is only proposed as an alternative (except for ck610, of course).
[0] http://lists.busybox.net/pipermail/buildroot/2019-July/254386.html
[1] package/Makefile.in#73
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Guo Ren <guoren@kernel.org>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Romain Naour <romain.naour@gmail.com>
Acked-by: Guo Ren <guoren@kernel.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
config BR2_csky
bool "csky"
select BR2_ARCH_HAS_MMU_MANDATORY
+ # Most variants are supported by gcc-9+, except one that is
+ # handled as a special exception in package/gcc/Config.in.host
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
help
csky is processor IP from china.
http://www.c-sky.com/
Specific CPU variant to use
config BR2_ck610
+ # Not supported by upstream gcc <= 9, and handled as a special
+ # exception in package/gcc/Config.in.host
bool "ck610"
config BR2_ck807
# powerpc spe support has been deprecated since gcc 8.x.
# https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
depends on !BR2_powerpc_SPE
+ # C-SKY sk610 needs abiv1, which is not supported in
+ # upstream gcc
+ depends on !BR2_ck610
select BR2_TOOLCHAIN_GCC_AT_LEAST_9
endchoice