From c368525d5b19183b7918d54b032a0d9f5a3c8e46 Mon Sep 17 00:00:00 2001 From: Chen Tao Date: Sun, 12 Jun 2022 19:42:12 +0900 Subject: kconfig: modify rules for multilibs configuration fix conflict options when compiling multilibs on ARM based architecture. "--with-arch", "--with-cpu", "--with-fpu", "--with-float", and "--with-mode" should not be configured with "--with-multilib-list=list" when configuring multilibs. Signed-off-by: Chen Tao --- config/arch/arm.in | 15 +++++++++------ config/cc/gcc.in | 1 + 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/config/arch/arm.in b/config/arch/arm.in index 07ad5ed2..5b55c2ae 100644 --- a/config/arch/arm.in +++ b/config/arch/arm.in @@ -9,13 +9,13 @@ ## select ARCH_SUPPORTS_FLAT_FORMAT ## select ARCH_SUPPORTS_EITHER_ENDIAN ## select ARCH_DEFAULT_LE -## select ARCH_SUPPORTS_WITH_ARCH -## select ARCH_SUPPORTS_WITH_CPU +## select ARCH_SUPPORTS_WITH_ARCH if !(MULTILIB && ARCH_32) +## select ARCH_SUPPORTS_WITH_CPU if !(MULTILIB && ARCH_32) ## select ARCH_EXCLUSIVE_WITH_CPU -## select ARCH_SUPPORTS_WITH_TUNE -## select ARCH_SUPPORTS_WITH_FLOAT if ARCH_32 -## select ARCH_SUPPORTS_WITH_FPU if ARCH_32 -## select ARCH_SUPPORTS_SOFTFP if ARCH_32 +## select ARCH_SUPPORTS_WITH_TUNE if !(MULTILIB && ARCH_32) +## select ARCH_SUPPORTS_WITH_FLOAT if ARCH_32 && !MULTILIB +## select ARCH_SUPPORTS_WITH_FPU if ARCH_32 && !MULTILIB +## select ARCH_SUPPORTS_SOFTFP if ARCH_32 && !MULTILIB ## select LINUX_REQUIRE_3_7_or_later if ARCH_64 && KERNEL_LINUX ## help The ARM architecture, as defined by: @@ -26,11 +26,13 @@ config ARCH_ARM_MODE string default "arm" if ARCH_ARM_MODE_ARM default "thumb" if ARCH_ARM_MODE_THUMB + depends on !MULTILIB choice bool prompt "Default instruction set mode" default ARCH_ARM_MODE_ARM + depends on !MULTILIB config ARCH_ARM_MODE_ARM bool @@ -49,6 +51,7 @@ endchoice config ARCH_ARM_INTERWORKING bool prompt "Use Thumb-interworking (READ HELP)" + depends on !MULTILIB help Excerpt from the gcc manual: diff --git a/config/cc/gcc.in b/config/cc/gcc.in index 037291fe..ea7103b8 100644 --- a/config/cc/gcc.in +++ b/config/cc/gcc.in @@ -81,6 +81,7 @@ config CC_GCC_MULTILIB_LIST string "List of multilib variants" depends on MULTILIB default "m2,m2e,m4,m4-single,m4-single-only,m2a,m2a-single" if GCC_11_or_later && ARCH_SH + default "aprofile,rmprofile" if ARCH_ARM && ARCH_32 help Architecture-specific option of expanding or restricting the list of the multilib variants to be built. Refer to GCC installation manual -- cgit v1.2.3