1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 config ADK_TARGET_CFLAGS_OPT
6 default "-Os -pipe" if ADK_TARGET_CFLAGS_OPT_OS
7 default "-Og -pipe" if ADK_TARGET_CFLAGS_OPT_OG
8 default "-O1 -pipe" if ADK_TARGET_CFLAGS_OPT_O1
9 default "-O2 -pipe" if ADK_TARGET_CFLAGS_OPT_O2
10 default "-O3 -pipe" if ADK_TARGET_CFLAGS_OPT_O3
11 default "-O0 -pipe" if ADK_TARGET_CFLAGS_OPT_O0
14 bool "Optimization level"
16 config ADK_TARGET_CFLAGS_OPT_OS
17 bool "optimize for size (-Os)"
19 config ADK_TARGET_CFLAGS_OPT_OG
20 bool "optimize, but allow debugging (-Og)"
22 config ADK_TARGET_CFLAGS_OPT_O1
23 bool "optimize for minor performance (-O1)"
25 config ADK_TARGET_CFLAGS_OPT_O2
26 bool "optimize for performance (-O2)"
28 config ADK_TARGET_CFLAGS_OPT_O3
29 bool "optimize for extra performance (-O3)"
31 config ADK_TARGET_CFLAGS_OPT_O0
32 bool "no optimization (-O0)"
36 config ADK_TARGET_CFLAGS_DISABLE_EH
37 bool "Disable exception handling and unwindung via compiler flags"
40 Do not use this optimization flags if you are planning to use C++
41 applications, which are often using exception handling.
43 menu "Compiler language support"
44 config ADK_TOOLCHAIN_WITH_CXX
47 config ADK_TOOLCHAIN_WITH_OBJC
48 bool "enable Objective-C"
50 config ADK_TOOLCHAIN_WITH_FORTRAN
52 select ADK_PACKAGE_LIBGFORTRAN
54 config ADK_TOOLCHAIN_WITH_GO
56 select ADK_PACKAGE_LIBGO
60 menu "Advanced Toolchain options"
62 config ADK_TOOLCHAIN_WITH_SSP
65 config ADK_TARGET_USE_SSP
66 bool "Use Stack Smashing Protection for all packages"
67 select ADK_TOOLCHAIN_WITH_SSP
69 config ADK_TARGET_USE_PIE
70 bool "Use Position Independent Executable for packages with have support for it"
72 config ADK_TOOLCHAIN_WITH_LTO
75 config ADK_TARGET_USE_LTO
76 bool "Use Link Time Optimization for all packages"
77 select ADK_TOOLCHAIN_WITH_LTO
79 config ADK_TARGET_USE_LD_RELRO
80 bool "Use LD read-only (-z relro) relocations for all packages"
82 config ADK_TARGET_USE_LD_BIND_NOW
83 bool "Use LD bind now (-z now) for all packages"
85 config ADK_TARGET_USE_LD_GC
86 bool "Use LD garbage collection for all packages"
88 config ADK_TOOLCHAIN_WITH_GOLD
89 bool "Enable building of GOLD linker"
91 config ADK_TARGET_USE_GOLD
92 bool "Use GOLD as default linker"
93 depends on ADK_TOOLCHAIN_WITH_GOLD
94 depends on ADK_TARGET_LIB_GLIBC # can not be build with GOLD (glibc 2.24 checked)
96 config ADK_TARGET_USE_GNU_HASHSTYLE
97 bool "Use GNU hashstyle for all packages"
98 depends on !ADK_TARGET_ARCH_MIPS
99 depends on !ADK_TARGET_ARCH_MIPS64
101 Performance optimization for applications with lot of shared library
102 dependencies. See http://www.akkadia.org/drepper/dsohowto.pdf
105 bool "Compile applications with debug support and do not strip"
107 All software for the target will be compiled with:
108 -fno-omit-frame-pointer
110 -fasynchronous-unwind-tables
111 Software will not be stripped.
112 Mostly useful for NFS root or big USB/CF or hard disk setups.
114 config ADK_DEBUG_STRIP
115 bool "strip target binaries/libraries for gdbserver usage"
118 All packages and C library will be compiled with debug information,
119 but stripped for the target.
121 config ADK_STATIC_TOOLCHAIN
122 bool "Build the toolchain components statically (portable host binaries)"
124 If you want to create more portable toolchains, build them static.
127 bool "Prelink binaries and libraries in Image"
128 depends on ADK_TARGET_OS_LINUX
130 Do prelinking for faster loading of binaries.
132 config ADK_PRELINK_OPTS
133 string "additional options to pass to prelink"
135 depends on ADK_PRELINK