mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-28 05:36:32 +00:00
arch: Refactor BR2_SOFT_FLOAT into per-architecture options
As we are going to introduced a more advanced support of floating point options for the ARM architecture, we need to adjust how the soft-float option is handled. We replace the current hidden option BR2_PREFER_SOFT_FLOAT option and the visible BR2_SOFT_FLOAT option by: * A global hidden BR2_SOFT_FLOAT option, defined in arch/Config.in, that tells whether the architecture-specific code is using software emulated floating point. This hidden option can be used throughout Buildroot to determine whether soft float is used or not. * Per-architecture visible BR2_<arch>_SOFT_FLOAT options, for the architecture for which it makes sense, which allows users to select soft float emulation when needed. This change will allow each architecture to have a different way of presenting its floating point capabilities. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
parent
d774551787
commit
9b3e72b4fd
@ -1,6 +1,9 @@
|
|||||||
config BR2_ARCH_IS_64
|
config BR2_ARCH_IS_64
|
||||||
bool
|
bool
|
||||||
|
|
||||||
|
config BR2_SOFT_FLOAT
|
||||||
|
bool
|
||||||
|
|
||||||
choice
|
choice
|
||||||
prompt "Target Architecture"
|
prompt "Target Architecture"
|
||||||
default BR2_i386
|
default BR2_i386
|
||||||
|
@ -79,6 +79,16 @@ endchoice
|
|||||||
config BR2_ARM_EABI
|
config BR2_ARM_EABI
|
||||||
def_bool y
|
def_bool y
|
||||||
|
|
||||||
|
config BR2_ARM_SOFT_FLOAT
|
||||||
|
bool "Use soft-float"
|
||||||
|
default y
|
||||||
|
select BR2_SOFT_FLOAT
|
||||||
|
help
|
||||||
|
If your target CPU does not have a Floating Point Unit (FPU)
|
||||||
|
or a kernel FPU emulator, but you still wish to support
|
||||||
|
floating point functions, then everything will need to be
|
||||||
|
compiled with soft floating point support (-msoft-float).
|
||||||
|
|
||||||
config BR2_ARM_ENABLE_NEON
|
config BR2_ARM_ENABLE_NEON
|
||||||
bool "Enable NEON SIMD extension support"
|
bool "Enable NEON SIMD extension support"
|
||||||
depends on BR2_ARM_CPU_MAYBE_HAS_NEON
|
depends on BR2_ARM_CPU_MAYBE_HAS_NEON
|
||||||
|
@ -52,6 +52,16 @@ config BR2_MIPS_NABI64
|
|||||||
depends on BR2_ARCH_IS_64
|
depends on BR2_ARCH_IS_64
|
||||||
endchoice
|
endchoice
|
||||||
|
|
||||||
|
config BR2_MIPS_SOFT_FLOAT
|
||||||
|
bool "Use soft-float"
|
||||||
|
default y
|
||||||
|
select BR2_SOFT_FLOAT
|
||||||
|
help
|
||||||
|
If your target CPU does not have a Floating Point Unit (FPU)
|
||||||
|
or a kernel FPU emulator, but you still wish to support
|
||||||
|
floating point functions, then everything will need to be
|
||||||
|
compiled with soft floating point support (-msoft-float).
|
||||||
|
|
||||||
config BR2_ARCH
|
config BR2_ARCH
|
||||||
default "mips" if BR2_mips
|
default "mips" if BR2_mips
|
||||||
default "mipsel" if BR2_mipsel
|
default "mipsel" if BR2_mipsel
|
||||||
|
@ -88,6 +88,15 @@ config BR2_powerpc_SPE
|
|||||||
depends on BR2_powerpc_8540 || BR2_powerpc_8548
|
depends on BR2_powerpc_8540 || BR2_powerpc_8548
|
||||||
endchoice
|
endchoice
|
||||||
|
|
||||||
|
config BR2_POWERPC_SOFT_FLOAT
|
||||||
|
bool "Use soft-float"
|
||||||
|
select BR2_SOFT_FLOAT
|
||||||
|
help
|
||||||
|
If your target CPU does not have a Floating Point Unit (FPU)
|
||||||
|
or a kernel FPU emulator, but you still wish to support
|
||||||
|
floating point functions, then everything will need to be
|
||||||
|
compiled with soft floating point support (-msoft-float).
|
||||||
|
|
||||||
config BR2_ARCH
|
config BR2_ARCH
|
||||||
default "powerpc" if BR2_powerpc
|
default "powerpc" if BR2_powerpc
|
||||||
|
|
||||||
|
@ -90,27 +90,6 @@ config BR2_USE_MMU
|
|||||||
If your target has a MMU, you should say Y here. If you
|
If your target has a MMU, you should say Y here. If you
|
||||||
are unsure, just say Y.
|
are unsure, just say Y.
|
||||||
|
|
||||||
config BR2_PREFER_SOFT_FLOAT
|
|
||||||
bool
|
|
||||||
default y if BR2_arm
|
|
||||||
default y if BR2_armeb
|
|
||||||
default y if BR2_avr32
|
|
||||||
default y if BR2_mips
|
|
||||||
default y if BR2_mipsel
|
|
||||||
|
|
||||||
config BR2_SOFT_FLOAT
|
|
||||||
bool "Use software floating point by default"
|
|
||||||
depends on BR2_arm || BR2_armeb || BR2_avr32 || BR2_mips || BR2_mipsel || BR2_powerpc
|
|
||||||
# External toolchains will automatically do soft float or hard
|
|
||||||
# float depending on their configuration
|
|
||||||
depends on BR2_TOOLCHAIN_BUILDROOT || BR2_TOOLCHAIN_CTNG
|
|
||||||
default $(BR2_PREFER_SOFT_FLOAT)
|
|
||||||
help
|
|
||||||
If your target CPU does not have a Floating Point Unit (FPU) or a
|
|
||||||
kernel FPU emulator, but you still wish to support floating point
|
|
||||||
functions, then everything will need to be compiled with soft
|
|
||||||
floating point support (-msoft-float).
|
|
||||||
|
|
||||||
config BR2_TARGET_OPTIMIZATION
|
config BR2_TARGET_OPTIMIZATION
|
||||||
string "Target Optimizations"
|
string "Target Optimizations"
|
||||||
default "-pipe"
|
default "-pipe"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user