123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- # This file is part of the OpenADK project. OpenADK is copyrighted
- # material, please see the LICENCE file in the top-level directory.
- menu "Toolchain settings"
- visible if !ADK_CHOOSE_APPLIANCE
- config ADK_VENDOR
- string "Vendor name"
- default "openadk"
- help
- Vendor string is used for toolchain.
- choice
- prompt "GCC version"
- config ADK_TOOLCHAIN_GCC_4_4_7
- bool "4.4.7"
- depends on ADK_TARGET_ARCH_AVR32
- config ADK_TOOLCHAIN_GCC_4_5_4
- bool "4.5.4"
- depends on ADK_TARGET_ARCH_BFIN
- config ADK_TOOLCHAIN_GCC_4_7_4
- bool "4.7.4"
- depends on ADK_TARGET_ARCH_CRIS || ADK_TARGET_ARCH_C6X
- config ADK_TOOLCHAIN_GCC_4_8_0_ARC
- bool "4.8.0-arc"
- depends on ADK_TARGET_ARCH_ARC
- config ADK_TOOLCHAIN_GCC_4_9_2
- bool "4.9.2"
- depends on !ADK_TARGET_ARCH_BFIN
- depends on !ADK_TARGET_ARCH_ARC
- depends on !ADK_TARGET_ARCH_AVR32
- depends on !ADK_TARGET_ARCH_CRIS
- depends on !ADK_TARGET_ARCH_C6X
- config ADK_TOOLCHAIN_GCC_4_8_4
- bool "4.8.4"
- depends on !ADK_TARGET_ARCH_BFIN
- depends on !ADK_TARGET_ARCH_AARCH64
- depends on !ADK_TARGET_ARCH_ARC
- depends on !ADK_TARGET_ARCH_AVR32
- depends on !ADK_TARGET_ARCH_CRIS
- depends on !ADK_TARGET_ARCH_TILE
- depends on !ADK_TARGET_ARCH_C6X
- config ADK_TOOLCHAIN_GCC_GIT
- bool "git"
- depends on !ADK_TARGET_ARCH_BFIN
- depends on !ADK_TARGET_ARCH_ARC
- depends on !ADK_TARGET_ARCH_AVR32
- depends on !ADK_TARGET_ARCH_CRIS
- endchoice
- choice
- prompt "Binutils version"
- config ADK_TOOLCHAIN_BINUTILS_2_20_1
- bool "2.20.1"
- depends on ADK_TARGET_ARCH_AVR32
- config ADK_TOOLCHAIN_BINUTILS_2_22
- bool "2.22"
- depends on ADK_TARGET_ARCH_BFIN \
- || ADK_TARGET_ARCH_CRIS
- config ADK_TOOLCHAIN_BINUTILS_2_23_ARC
- bool "2.23-arc"
- depends on ADK_TARGET_ARCH_ARC
- config ADK_TOOLCHAIN_BINUTILS_2_25
- bool "2.25"
- depends on !ADK_TARGET_ARCH_BFIN
- depends on !ADK_TARGET_ARCH_ARC
- depends on !ADK_TARGET_ARCH_AVR32
- depends on !ADK_TARGET_ARCH_CRIS
- config ADK_TOOLCHAIN_BINUTILS_2_24
- bool "2.24"
- depends on !ADK_TARGET_ARCH_BFIN
- depends on !ADK_TARGET_ARCH_ARC
- depends on !ADK_TARGET_ARCH_AVR32
- depends on !ADK_TARGET_ARCH_CRIS
- config ADK_TOOLCHAIN_BINUTILS_GIT
- bool "git"
- depends on !ADK_TARGET_ARCH_BFIN
- depends on !ADK_TARGET_ARCH_ARC
- depends on !ADK_TARGET_ARCH_AVR32
- depends on !ADK_TARGET_ARCH_CRIS
- endchoice
- config ADK_TARGET_CFLAGS_OPT
- string
- default "-Os -pipe" if ADK_TARGET_CFLAGS_OPT_OS
- default "-O2 -pipe" if ADK_TARGET_CFLAGS_OPT_O2
- default "-O3 -pipe" if ADK_TARGET_CFLAGS_OPT_O3
- default "-O0 -pipe" if ADK_TARGET_CFLAGS_OPT_O0
- choice
- prompt "Optimization level"
- bool
- config ADK_TARGET_CFLAGS_OPT_OS
- prompt "optimize for size (-Os)"
- config ADK_TARGET_CFLAGS_OPT_O2
- prompt "optimize for performance (-O2)"
- config ADK_TARGET_CFLAGS_OPT_O3
- prompt "optimize for performance (-O3)"
- config ADK_TARGET_CFLAGS_OPT_O0
- prompt "no optimization (-O0)"
- endchoice
- config ADK_TARGET_ARCH_ARM_WITH_THUMB
- bool "Use THUMB2 only mode"
- select ADK_KERNEL_THUMB2_KERNEL
- depends on ADK_TARGET_ARCH_ARM
- help
- Experimental option. Use with care.
- config ADK_TOOLCHAIN_WITH_SSP
- bool
- config ADK_TARGET_USE_SSP
- bool "Use Stack Smashing Protection for all packages"
- select ADK_TOOLCHAIN_WITH_SSP
- config ADK_TARGET_USE_PIE
- bool "Use Position Independent Executable for packages with have support for it"
- config ADK_TOOLCHAIN_WITH_LTO
- bool
- config ADK_TARGET_USE_LTO
- bool "Use Link Time Optimization for all packages"
- select ADK_TOOLCHAIN_WITH_LTO
- config ADK_TARGET_USE_LD_RELRO
- bool "Use LD read-only (-z relro) relocations for all packages"
- config ADK_TARGET_USE_LD_BIND_NOW
- bool "Use LD bind now (-z now) for all packages"
- config ADK_TARGET_USE_LD_GC
- bool "Use LD garbage collection for all packages"
- config ADK_TOOLCHAIN_WITH_GOLD
- bool
- config ADK_TARGET_USE_GOLD
- bool "Use GOLD as linker for all packages"
- select ADK_TOOLCHAIN_WITH_GOLD
- depends on !ADK_TARGET_ARCH_MIPS
- depends on !ADK_TARGET_ARCH_MIPS64
- config ADK_TARGET_USE_GNU_HASHSTYLE
- bool "Use GNU hashstyle for all packages"
- depends on !ADK_TARGET_ARCH_MIPS
- depends on !ADK_TARGET_ARCH_MIPS64
- help
- Performance optimization for applications with lot of shared library
- dependencies. See http://www.akkadia.org/drepper/dsohowto.pdf
- config ADK_DEBUG
- bool "Compile applications with debug support and do not strip"
- help
- All software for the target will be compiled with:
- -fno-omit-frame-pointer
- -funwind-tables
- -fasynchronous-unwind-tables
- Software will not be stripped.
- Mostly useful for NFS root or big USB/CF or hard disk setups.
- config ADK_DEBUG_STRIP
- bool "strip target binaries/libraries for gdbserver usage"
- depends on ADK_DEBUG
- help
- All packages and C library will be compiled with debug information,
- but stripped for the target.
- config ADK_TARGET_USE_STATIC_LIBS
- bool "Link applications statically by default"
- select BUSYBOX_STATIC
- help
- Useful for debugging of dynamic linker problems. Be aware of the fact, that uClibc and glibc
- still requires libgcc_so.so.1 for pthread_cancel. Glibc also requires libnss_*.so libraries
- at runtime. Full static builds are only supported for musl libc.
- config ADK_STATIC_TOOLCHAIN
- bool "Build the toolchain components statically"
- help
- If you want to create more portable toolchains, build them static.
- config ADK_UCLIBC_TEST
- bool "Build testsuite for C library"
- depends on ADK_TARGET_LIB_UCLIBC_NG || ADK_TARGET_LIB_UCLIBC
- default y
- endmenu
|