123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453 |
- menu "Target options"
- config BR2_ARCH_IS_64
- bool
- config BR2_KERNEL_64_USERLAND_32
- bool
- config BR2_SOFT_FLOAT
- bool
- config BR2_ARCH_HAS_MMU_MANDATORY
- bool
- config BR2_ARCH_HAS_MMU_OPTIONAL
- bool
- config BR2_ARCH_HAS_FDPIC_SUPPORT
- bool
- choice
- prompt "Target Architecture"
- default BR2_i386
- help
- Select the target architecture family to build for.
- config BR2_arcle
- bool "ARC (little endian)"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- Synopsys' DesignWare ARC Processor Cores are a family of
- 32-bit CPUs that can be used from deeply embedded to high
- performance host applications. Little endian.
- config BR2_arceb
- bool "ARC (big endian)"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- Synopsys' DesignWare ARC Processor Cores are a family of
- 32-bit CPUs that can be used from deeply embedded to high
- performance host applications. Big endian.
- config BR2_arm
- bool "ARM (little endian)"
- # MMU support is set by the subarchitecture file, arch/Config.in.arm
- help
- ARM is a 32-bit reduced instruction set computer (RISC)
- instruction set architecture (ISA) developed by ARM Holdings.
- Little endian.
- http://www.arm.com/
- http://en.wikipedia.org/wiki/ARM
- config BR2_armeb
- bool "ARM (big endian)"
- # MMU support is set by the subarchitecture file, arch/Config.in.arm
- help
- ARM is a 32-bit reduced instruction set computer (RISC)
- instruction set architecture (ISA) developed by ARM Holdings.
- Big endian.
- http://www.arm.com/
- http://en.wikipedia.org/wiki/ARM
- config BR2_aarch64
- bool "AArch64 (little endian)"
- select BR2_ARCH_IS_64
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- Aarch64 is a 64-bit architecture developed by ARM Holdings.
- http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php
- http://en.wikipedia.org/wiki/ARM
- config BR2_aarch64_be
- bool "AArch64 (big endian)"
- select BR2_ARCH_IS_64
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- Aarch64 is a 64-bit architecture developed by ARM Holdings.
- http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php
- http://en.wikipedia.org/wiki/ARM
- config BR2_csky
- bool "csky"
- select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- csky is processor IP from china.
- http://www.c-sky.com/
- http://www.github.com/c-sky
- config BR2_i386
- bool "i386"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- Intel i386 architecture compatible microprocessor
- http://en.wikipedia.org/wiki/I386
- config BR2_m68k
- bool "m68k"
- # MMU support is set by the subarchitecture file, arch/Config.in.m68k
- help
- Motorola 68000 family microprocessor
- http://en.wikipedia.org/wiki/M68k
- config BR2_microblazeel
- bool "Microblaze AXI (little endian)"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- Soft processor core designed for Xilinx FPGAs from Xilinx. AXI
- bus based architecture (little endian)
- http://www.xilinx.com
- http://en.wikipedia.org/wiki/Microblaze
- config BR2_microblazebe
- bool "Microblaze non-AXI (big endian)"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- Soft processor core designed for Xilinx FPGAs from Xilinx. PLB
- bus based architecture (non-AXI, big endian)
- http://www.xilinx.com
- http://en.wikipedia.org/wiki/Microblaze
- config BR2_mips
- bool "MIPS (big endian)"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- MIPS is a RISC microprocessor from MIPS Technologies. Big
- endian.
- http://www.mips.com/
- http://en.wikipedia.org/wiki/MIPS_Technologies
- config BR2_mipsel
- bool "MIPS (little endian)"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- MIPS is a RISC microprocessor from MIPS Technologies. Little
- endian.
- http://www.mips.com/
- http://en.wikipedia.org/wiki/MIPS_Technologies
- config BR2_mips64
- bool "MIPS64 (big endian)"
- select BR2_ARCH_IS_64
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- MIPS is a RISC microprocessor from MIPS Technologies. Big
- endian.
- http://www.mips.com/
- http://en.wikipedia.org/wiki/MIPS_Technologies
- config BR2_mips64el
- bool "MIPS64 (little endian)"
- select BR2_ARCH_IS_64
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- MIPS is a RISC microprocessor from MIPS Technologies. Little
- endian.
- http://www.mips.com/
- http://en.wikipedia.org/wiki/MIPS_Technologies
- config BR2_nios2
- bool "Nios II"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- Nios II is a soft core processor from Altera Corporation.
- http://www.altera.com/
- http://en.wikipedia.org/wiki/Nios_II
- config BR2_or1k
- bool "OpenRISC"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- OpenRISC is a free and open processor for embedded system.
- http://openrisc.io
- config BR2_powerpc
- bool "PowerPC"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- PowerPC is a RISC architecture created by Apple-IBM-Motorola
- alliance. Big endian.
- http://www.power.org/
- http://en.wikipedia.org/wiki/Powerpc
- config BR2_powerpc64
- bool "PowerPC64 (big endian)"
- select BR2_ARCH_IS_64
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- PowerPC is a RISC architecture created by Apple-IBM-Motorola
- alliance. Big endian.
- http://www.power.org/
- http://en.wikipedia.org/wiki/Powerpc
- config BR2_powerpc64le
- bool "PowerPC64 (little endian)"
- select BR2_ARCH_IS_64
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- PowerPC is a RISC architecture created by Apple-IBM-Motorola
- alliance. Little endian.
- http://www.power.org/
- http://en.wikipedia.org/wiki/Powerpc
- config BR2_sh
- bool "SuperH"
- select BR2_ARCH_HAS_MMU_OPTIONAL
- help
- SuperH (or SH) is a 32-bit reduced instruction set computer
- (RISC) instruction set architecture (ISA) developed by
- Hitachi.
- http://www.hitachi.com/
- http://en.wikipedia.org/wiki/SuperH
- config BR2_sparc
- bool "SPARC"
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- SPARC (from Scalable Processor Architecture) is a RISC
- instruction set architecture (ISA) developed by Sun
- Microsystems.
- http://www.oracle.com/sun
- http://en.wikipedia.org/wiki/Sparc
- config BR2_sparc64
- bool "SPARC64"
- select BR2_ARCH_IS_64
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- SPARC (from Scalable Processor Architecture) is a RISC
- instruction set architecture (ISA) developed by Sun
- Microsystems.
- http://www.oracle.com/sun
- http://en.wikipedia.org/wiki/Sparc
- config BR2_x86_64
- bool "x86_64"
- select BR2_ARCH_IS_64
- select BR2_ARCH_HAS_MMU_MANDATORY
- help
- x86-64 is an extension of the x86 instruction set (Intel i386
- architecture compatible microprocessor).
- http://en.wikipedia.org/wiki/X86_64
- config BR2_xtensa
- bool "Xtensa"
- # MMU support is set by the subarchitecture file, arch/Config.in.xtensa
- help
- Xtensa is a Tensilica processor IP architecture.
- http://en.wikipedia.org/wiki/Xtensa
- http://www.tensilica.com/
- endchoice
- # For some architectures or specific cores, our internal toolchain
- # backend is not suitable (like, missing support in upstream gcc, or
- # no ChipCo fork exists...)
- config BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
- bool
- config BR2_ARCH_HAS_TOOLCHAIN_BUILDROOT
- bool
- default y if !BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
- # The following symbols are selected by the individual
- # Config.in.$ARCH files
- config BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8
- bool
- config BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
- bool
- select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8
- config BR2_ARCH_NEEDS_GCC_AT_LEAST_5
- bool
- select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
- config BR2_ARCH_NEEDS_GCC_AT_LEAST_6
- bool
- select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
- config BR2_ARCH_NEEDS_GCC_AT_LEAST_7
- bool
- select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
- # The following string values are defined by the individual
- # Config.in.$ARCH files
- config BR2_ARCH
- string
- config BR2_ENDIAN
- string
- config BR2_GCC_TARGET_ARCH
- string
- config BR2_GCC_TARGET_ABI
- string
- config BR2_GCC_TARGET_NAN
- string
- config BR2_GCC_TARGET_FP32_MODE
- string
- config BR2_GCC_TARGET_CPU
- string
- config BR2_GCC_TARGET_CPU_REVISION
- string
- # The value of this option will be passed as --with-fpu=<value> when
- # building gcc (internal backend) or -mfpu=<value> in the toolchain
- # wrapper (external toolchain)
- config BR2_GCC_TARGET_FPU
- string
- # The value of this option will be passed as --with-float=<value> when
- # building gcc (internal backend) or -mfloat-abi=<value> in the toolchain
- # wrapper (external toolchain)
- config BR2_GCC_TARGET_FLOAT_ABI
- string
- # The value of this option will be passed as --with-mode=<value> when
- # building gcc (internal backend) or -m<value> in the toolchain
- # wrapper (external toolchain)
- config BR2_GCC_TARGET_MODE
- string
- # Must be selected by binary formats that support shared libraries.
- config BR2_BINFMT_SUPPORTS_SHARED
- bool
- # Must match the name of the architecture from readelf point of view,
- # i.e the "Machine:" field of readelf output. See get_machine_name()
- # in binutils/readelf.c for the list of possible values.
- config BR2_READELF_ARCH_NAME
- string
- # Set up target binary format
- choice
- prompt "Target Binary Format"
- default BR2_BINFMT_ELF if BR2_USE_MMU
- default BR2_BINFMT_FDPIC if BR2_ARCH_HAS_FDPIC_SUPPORT
- default BR2_BINFMT_FLAT
- config BR2_BINFMT_ELF
- bool "ELF"
- depends on BR2_USE_MMU
- select BR2_BINFMT_SUPPORTS_SHARED
- help
- ELF (Executable and Linkable Format) is a format for libraries
- and executables used across different architectures and
- operating systems.
- config BR2_BINFMT_FDPIC
- bool "FDPIC"
- depends on BR2_ARCH_HAS_FDPIC_SUPPORT
- select BR2_BINFMT_SUPPORTS_SHARED
- help
- ELF FDPIC binaries are based on ELF, but allow the individual
- load segments of a binary to be located in memory
- independently of each other. This makes this format ideal for
- use in environments where no MMU is available.
- config BR2_BINFMT_FLAT
- bool "FLAT"
- depends on !BR2_USE_MMU
- help
- FLAT binary is a relatively simple and lightweight executable
- format based on the original a.out format. It is widely used
- in environment where no MMU is available.
- endchoice
- # Set up flat binary type
- choice
- prompt "FLAT Binary type"
- default BR2_BINFMT_FLAT_ONE
- depends on BR2_BINFMT_FLAT
- config BR2_BINFMT_FLAT_ONE
- bool "One memory region"
- help
- All segments are linked into one memory region.
- config BR2_BINFMT_FLAT_SHARED
- bool "Shared binary"
- depends on BR2_m68k
- # Even though this really generates shared binaries, there is no libdl
- # and dlopen() cannot be used. So packages that require shared
- # libraries cannot be built. Therefore, we don't select
- # BR2_BINFMT_SUPPORTS_SHARED and therefore force BR2_STATIC_LIBS.
- # Although this adds -static to the compilation, that's not a problem
- # because the -mid-shared-library option overrides it.
- help
- Allow to load and link indiviual FLAT binaries at run time.
- endchoice
- if BR2_arcle || BR2_arceb
- source "arch/Config.in.arc"
- endif
- if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_aarch64_be
- source "arch/Config.in.arm"
- endif
- if BR2_csky
- source "arch/Config.in.csky"
- endif
- if BR2_m68k
- source "arch/Config.in.m68k"
- endif
- if BR2_microblazeel || BR2_microblazebe
- source "arch/Config.in.microblaze"
- endif
- if BR2_mips || BR2_mips64 || BR2_mipsel || BR2_mips64el
- source "arch/Config.in.mips"
- endif
- if BR2_nios2
- source "arch/Config.in.nios2"
- endif
- if BR2_or1k
- source "arch/Config.in.or1k"
- endif
- if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
- source "arch/Config.in.powerpc"
- endif
- if BR2_sh
- source "arch/Config.in.sh"
- endif
- if BR2_sparc || BR2_sparc64
- source "arch/Config.in.sparc"
- endif
- if BR2_i386 || BR2_x86_64
- source "arch/Config.in.x86"
- endif
- if BR2_xtensa
- source "arch/Config.in.xtensa"
- endif
- endmenu # Target options
|