3 menuconfig EXTERNAL_TOOLCHAIN
5 prompt "Use external toolchain" if DEVEL
7 If enabled, OpenWrt will compile using an existing toolchain instead of compiling one
9 config NATIVE_TOOLCHAIN
11 prompt "Use host's toolchain" if DEVEL
12 depends EXTERNAL_TOOLCHAIN
15 If enabled, OpenWrt will compile using the native toolchain for your host instead of compiling one
19 prompt "Target name" if DEVEL
20 depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
21 default "arm-unknown-linux-gnu" if arm
22 default "armeb-unknown-linux-gnu" if armeb
23 default "i486-unknown-linux-gnu" if i386
24 default "mips-unknown-linux-gnu" if mips
25 default "mipsel-unknown-linux-gnu" if mipsel
26 default "powerpc-unknown-linux-gnu" if powerpc
27 default "x86_64-unknown-linux-gnu" if x86_64
29 config TOOLCHAIN_PREFIX
31 prompt "Toolchain prefix" if DEVEL
32 depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
33 default "arm-unknown-linux-gnu-" if arm
34 default "armeb-unknown-linux-gnu-" if armeb
35 default "i486-unknown-linux-gnu-" if i386
36 default "mips-unknown-linux-gnu-" if mips
37 default "mipsel-unknown-linux-gnu-" if mipsel
38 default "powerpc-unknown-linux-gnu-" if powerpc
39 default "x86_64-unknown-linux-gnu-" if x86_64
43 prompt "Toolchain root" if DEVEL
44 depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
45 default "/opt/cross/arm-unknown-linux-gnu" if arm
46 default "/opt/cross/armeb-unknown-linux-gnu" if armeb
47 default "/opt/cross/i486-unknown-linux-gnu" if i386
48 default "/opt/cross/mips-unknown-linux-gnu" if mips
49 default "/opt/cross/mipsel-unknown-linux-gnu" if mipsel
50 default "/opt/cross/powerpc-unknown-linux-gnu" if powerpc
51 default "/opt/cross/x86_64-unknown-linux-gnu" if x86_64
53 config TOOLCHAIN_BIN_PATH
55 prompt "Toolchain program path" if DEVEL
56 depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
57 default "./usr/bin ./bin"
59 Specify additional directories searched for toolchain binaries (override PATH)
60 Use ./DIR for directories relative to the root above
62 config TOOLCHAIN_INC_PATH
64 prompt "Toolchain include path" if DEVEL
65 depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
66 default "./usr/include ./include"
68 Specify additional directories searched for header files (override CPPFLAGS)
69 Use ./DIR for directories relative to the root above
71 config TOOLCHAIN_LIB_PATH
73 prompt "Toolchain library path" if DEVEL
74 depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
75 default "./usr/lib ./lib"
77 Specify additional directories searched for libraries (override LDFLAGS)
78 Use ./DIR for directories relative to the root above
83 default y if !EXTERNAL_TOOLCHAIN
85 menuconfig TOOLCHAINOPTS
86 bool "Toolchain Options" if DEVEL
87 depends NEED_TOOLCHAIN
89 menuconfig EXTRA_TARGET_ARCH
91 prompt "Enable an extra toolchain target architecture" if TOOLCHAINOPTS
93 default y if powerpc64
96 Some builds may require a 'biarch' toolchain. This option
97 allows you to specify an additional target arch.
99 Most people will answer N here.
101 config EXTRA_TARGET_ARCH_NAME
103 default "powerpc64" if powerpc64
104 prompt "Extra architecture name" if EXTRA_TARGET_ARCH
106 Specify the cpu name (eg powerpc64 or x86_64) of the
107 additional target architecture.
109 config EXTRA_TARGET_ARCH_OPTS
111 default "-m64" if powerpc64
112 prompt "Extra architecture compiler options" if EXTRA_TARGET_ARCH
114 If you're specifying an addition target architecture,
115 you'll probably need to also provide options to make
116 the compiler use this alternate arch.
118 For example, if you're building a compiler that can build
119 both powerpc and powerpc64 binaries, you'll need to
122 comment "Binary tools"
123 depends TOOLCHAINOPTS
125 source "toolchain/binutils/Config.in"
128 depends TOOLCHAINOPTS
130 source "toolchain/gcc/Config.in"
133 depends TOOLCHAINOPTS
136 prompt "C Library implementation" if TOOLCHAINOPTS
139 Select the C library implementation.
150 source "toolchain/eglibc/Config.in"
151 source "toolchain/uClibc/Config.in"
154 depends TOOLCHAINOPTS
159 prompt "Build gdb" if TOOLCHAINOPTS
162 Enable if you want to build the gdb
166 prompt "Build insight-gdb" if TOOLCHAINOPTS
170 Enable if you want to build insight-gdb
174 default y if !TOOLCHAINOPTS && !EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
176 config USE_EXTERNAL_LIBC
178 default y if EXTERNAL_TOOLCHAIN || NATIVE_TOOLCHAIN
180 source "toolchain/gcc/Config.version"
182 source "toolchain/eglibc/Config.version"
183 source "toolchain/uClibc/Config.version"
187 default "eglibc" if USE_EGLIBC
188 default "uClibc" if USE_UCLIBC
192 default EGLIBC_VERSION if USE_EGLIBC
193 default UCLIBC_VERSION if USE_UCLIBC
197 default "gnueabi" if (USE_EGLIBC) && (arm || armeb)
198 default "gnu" if (USE_EGLIBC) && !(arm || armeb)
199 default "uclibcgnueabi" if USE_UCLIBC && (arm || armeb)
200 default "uclibc" if USE_UCLIBC && !(arm || armeb)