mirror of
https://git.busybox.net/buildroot.git
synced 2024-12-04 10:53:30 +08:00
44c04a2b4a
As suggested by Yann E. Morin, there is a better way than our current big Config.in.common to define the gcc mtune, mcpu, march, etc. values. We can split the setting of those values in each architecture file, which makes a lot more sense. Therefore, the Config.in file now creates empty kconfig variables BR2_ARCH, BR2_ENDIAN, BR2_GCC_TARGET_TUNE, BR2_GCC_TARGET_ARCH, BR2_GCC_TARGET_ABI and BR2_GCC_TARGET_CPU. The values of those variables are set by the individual Config.in.<arch> files. This is possible because such files are now only conditionally included depending on the top-level architecture that has been selected. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
236 lines
6.4 KiB
Plaintext
236 lines
6.4 KiB
Plaintext
# i386/x86_64 cpu features
|
|
config BR2_X86_CPU_HAS_MMX
|
|
bool
|
|
config BR2_X86_CPU_HAS_SSE
|
|
bool
|
|
config BR2_X86_CPU_HAS_SSE2
|
|
bool
|
|
config BR2_X86_CPU_HAS_SSE3
|
|
bool
|
|
config BR2_X86_CPU_HAS_SSSE3
|
|
bool
|
|
|
|
choice
|
|
prompt "Target Architecture Variant"
|
|
depends on BR2_i386 || BR2_x86_64
|
|
default BR2_x86_i586 if BR2_i386
|
|
default BR2_x86_generic if BR2_x86_64
|
|
help
|
|
Specific CPU variant to use
|
|
|
|
config BR2_x86_generic
|
|
bool "generic"
|
|
config BR2_x86_i386
|
|
bool "i386"
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_i486
|
|
bool "i486"
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_i586
|
|
bool "i586"
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_i686
|
|
bool "i686"
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_pentiumpro
|
|
bool "pentium pro"
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_pentium_mmx
|
|
bool "pentium MMX"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_pentium_m
|
|
bool "pentium mobile"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_pentium2
|
|
bool "pentium2"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_pentium3
|
|
bool "pentium3"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_pentium4
|
|
bool "pentium4"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
select BR2_X86_CPU_HAS_SSE2
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_prescott
|
|
bool "prescott"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
select BR2_X86_CPU_HAS_SSE2
|
|
select BR2_X86_CPU_HAS_SSE3
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_nocona
|
|
bool "nocona"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
select BR2_X86_CPU_HAS_SSE2
|
|
select BR2_X86_CPU_HAS_SSE3
|
|
config BR2_x86_core2
|
|
bool "core2"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
select BR2_X86_CPU_HAS_SSE2
|
|
select BR2_X86_CPU_HAS_SSE3
|
|
select BR2_X86_CPU_HAS_SSSE3
|
|
config BR2_x86_atom
|
|
bool "atom"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
select BR2_X86_CPU_HAS_SSE2
|
|
select BR2_X86_CPU_HAS_SSE3
|
|
select BR2_X86_CPU_HAS_SSSE3
|
|
config BR2_x86_k6
|
|
bool "k6"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_k6_2
|
|
bool "k6-2"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_athlon
|
|
bool "athlon"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_athlon_4
|
|
bool "athlon-4"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_opteron
|
|
bool "opteron"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
select BR2_X86_CPU_HAS_SSE2
|
|
config BR2_x86_opteron_sse3
|
|
bool "opteron w/ SSE3"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
select BR2_X86_CPU_HAS_SSE2
|
|
select BR2_X86_CPU_HAS_SSE3
|
|
config BR2_x86_barcelona
|
|
bool "barcelona"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
select BR2_X86_CPU_HAS_SSE2
|
|
select BR2_X86_CPU_HAS_SSE3
|
|
config BR2_x86_geode
|
|
bool "geode"
|
|
# Don't include MMX support because there several variant of geode
|
|
# processor, some with MMX support, some without.
|
|
# See: http://en.wikipedia.org/wiki/Geode_%28processor%29
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_c3
|
|
bool "Via/Cyrix C3 (Samuel/Ezra cores)"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_c32
|
|
bool "Via C3-2 (Nehemiah cores)"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
select BR2_X86_CPU_HAS_SSE
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_winchip_c6
|
|
bool "IDT Winchip C6"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
depends on !BR2_x86_64
|
|
config BR2_x86_winchip2
|
|
bool "IDT Winchip 2"
|
|
select BR2_X86_CPU_HAS_MMX
|
|
depends on !BR2_x86_64
|
|
endchoice
|
|
|
|
config BR2_ARCH
|
|
default "i386" if BR2_x86_i386
|
|
default "i486" if BR2_x86_i486
|
|
default "i586" if BR2_x86_i586
|
|
default "i586" if BR2_x86_pentium_mmx
|
|
default "i586" if BR2_x86_geode
|
|
default "i586" if BR2_x86_c3
|
|
default "i686" if BR2_x86_c32
|
|
default "i586" if BR2_x86_winchip_c6
|
|
default "i586" if BR2_x86_winchip2
|
|
default "i686" if BR2_x86_i686
|
|
default "i686" if BR2_x86_pentium2
|
|
default "i686" if BR2_x86_pentium3
|
|
default "i686" if BR2_x86_pentium4
|
|
default "i686" if BR2_x86_pentium_m
|
|
default "i686" if BR2_x86_pentiumpro
|
|
default "i686" if BR2_x86_prescott
|
|
default "i686" if BR2_x86_nocona && BR2_i386
|
|
default "i686" if BR2_x86_core2 && BR2_i386
|
|
default "i686" if BR2_x86_atom && BR2_i386
|
|
default "i686" if BR2_x86_opteron && BR2_i386
|
|
default "i686" if BR2_x86_opteron_sse3 && BR2_i386
|
|
default "i686" if BR2_x86_barcelona && BR2_i386
|
|
default "i686" if BR2_x86_k6
|
|
default "i686" if BR2_x86_k6_2
|
|
default "i686" if BR2_x86_athlon
|
|
default "i686" if BR2_x86_athlon_4
|
|
default "x86_64" if BR2_x86_64
|
|
|
|
config BR2_ENDIAN
|
|
default "LITTLE"
|
|
|
|
config BR2_GCC_TARGET_TUNE
|
|
default i386 if BR2_x86_i386
|
|
default i486 if BR2_x86_i486
|
|
default i586 if BR2_x86_i586
|
|
default pentium-mmx if BR2_x86_pentium_mmx
|
|
default i686 if BR2_x86_i686
|
|
default pentiumpro if BR2_x86_pentiumpro
|
|
default pentium-m if BR2_x86_pentium_m
|
|
default pentium2 if BR2_x86_pentium2
|
|
default pentium3 if BR2_x86_pentium3
|
|
default pentium4 if BR2_x86_pentium4
|
|
default prescott if BR2_x86_prescott
|
|
default nocona if BR2_x86_nocona
|
|
default core2 if BR2_x86_core2
|
|
default atom if BR2_x86_atom
|
|
default k8 if BR2_x86_opteron
|
|
default k8-sse3 if BR2_x86_opteron_sse3
|
|
default barcelona if BR2_x86_barcelona
|
|
default k6 if BR2_x86_k6
|
|
default k6-2 if BR2_x86_k6_2
|
|
default athlon if BR2_x86_athlon
|
|
default athlon-4 if BR2_x86_athlon_4
|
|
default winchip-c6 if BR2_x86_winchip_c6
|
|
default winchip2 if BR2_x86_winchip2
|
|
default c3 if BR2_x86_c3
|
|
default c3-2 if BR2_x86_c32
|
|
default geode if BR2_x86_geode
|
|
default generic if BR2_x86_generic
|
|
|
|
config BR2_GCC_TARGET_ARCH
|
|
default i386 if BR2_x86_i386
|
|
default i486 if BR2_x86_i486
|
|
default i586 if BR2_x86_i586
|
|
default pentium-mmx if BR2_x86_pentium_mmx
|
|
default i686 if BR2_x86_i686
|
|
default pentiumpro if BR2_x86_pentiumpro
|
|
default pentium-m if BR2_x86_pentium_m
|
|
default pentium2 if BR2_x86_pentium2
|
|
default pentium3 if BR2_x86_pentium3
|
|
default pentium4 if BR2_x86_pentium4
|
|
default prescott if BR2_x86_prescott
|
|
default nocona if BR2_x86_nocona
|
|
default core2 if BR2_x86_core2
|
|
default atom if BR2_x86_atom
|
|
default k8 if BR2_x86_opteron
|
|
default k8-sse3 if BR2_x86_opteron_sse3
|
|
default barcelona if BR2_x86_barcelona
|
|
default k6 if BR2_x86_k6
|
|
default k6-2 if BR2_x86_k6_2
|
|
default athlon if BR2_x86_athlon
|
|
default athlon-4 if BR2_x86_athlon_4
|
|
default winchip-c6 if BR2_x86_winchip_c6
|
|
default winchip2 if BR2_x86_winchip2
|
|
default c3 if BR2_x86_c3
|
|
default c3-2 if BR2_x86_c32
|
|
default geode if BR2_x86_geode
|