Root/toolchain/Config.in

1#
2
3menuconfig EXTERNAL_TOOLCHAIN
4    bool
5    prompt "Use external toolchain" if DEVEL
6    help
7      If enabled, OpenWrt will compile using an existing toolchain instead of compiling one
8
9    config NATIVE_TOOLCHAIN
10        bool
11        prompt "Use host's toolchain" if DEVEL
12        depends EXTERNAL_TOOLCHAIN
13        select NO_STRIP
14        help
15          If enabled, OpenWrt will compile using the native toolchain for your host instead of compiling one
16
17    config TARGET_NAME
18        string
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
28
29    config TOOLCHAIN_PREFIX
30        string
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
40
41    config TOOLCHAIN_ROOT
42        string
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
52
53    config TOOLCHAIN_BIN_PATH
54        string
55        prompt "Toolchain program path" if DEVEL
56        depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
57        default "./usr/bin ./bin"
58        help
59          Specify additional directories searched for toolchain binaries (override PATH)
60          Use ./DIR for directories relative to the root above
61
62    config TOOLCHAIN_INC_PATH
63        string
64        prompt "Toolchain include path" if DEVEL
65        depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
66        default "./usr/include ./include"
67        help
68          Specify additional directories searched for header files (override CPPFLAGS)
69          Use ./DIR for directories relative to the root above
70
71    config TOOLCHAIN_LIB_PATH
72        string
73        prompt "Toolchain library path" if DEVEL
74        depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
75        default "./usr/lib ./lib"
76        help
77          Specify additional directories searched for libraries (override LDFLAGS)
78          Use ./DIR for directories relative to the root above
79
80config NEED_TOOLCHAIN
81    bool
82    depends DEVEL
83    default y if !EXTERNAL_TOOLCHAIN
84
85menuconfig TOOLCHAINOPTS
86    bool "Toolchain Options" if DEVEL
87    depends NEED_TOOLCHAIN
88
89menuconfig EXTRA_TARGET_ARCH
90    bool
91    prompt "Enable an extra toolchain target architecture" if TOOLCHAINOPTS
92    depends !sparc
93    default y if powerpc64
94    default n
95    help
96      Some builds may require a 'biarch' toolchain. This option
97      allows you to specify an additional target arch.
98
99      Most people will answer N here.
100
101    config EXTRA_TARGET_ARCH_NAME
102        string
103        default "powerpc64" if powerpc64
104        prompt "Extra architecture name" if EXTRA_TARGET_ARCH
105        help
106          Specify the cpu name (eg powerpc64 or x86_64) of the
107          additional target architecture.
108
109    config EXTRA_TARGET_ARCH_OPTS
110        string
111        default "-m64" if powerpc64
112        prompt "Extra architecture compiler options" if EXTRA_TARGET_ARCH
113        help
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.
117
118          For example, if you're building a compiler that can build
119          both powerpc and powerpc64 binaries, you'll need to
120          specify -m64 here.
121
122comment "Binary tools"
123    depends TOOLCHAINOPTS
124
125source "toolchain/binutils/Config.in"
126
127comment "Compiler"
128    depends TOOLCHAINOPTS
129
130source "toolchain/gcc/Config.in"
131
132comment "C Library"
133    depends TOOLCHAINOPTS
134
135choice
136    prompt "C Library implementation" if TOOLCHAINOPTS
137    default USE_UCLIBC
138    help
139      Select the C library implementation.
140
141    config USE_EGLIBC
142        bool "Use eglibc"
143        depends !avr32
144    
145    config USE_UCLIBC
146        bool "Use uClibc"
147
148    config USE_MUSL
149        bool "Use musl"
150
151endchoice
152
153source "toolchain/eglibc/Config.in"
154source "toolchain/uClibc/Config.in"
155source "toolchain/musl/Config.in"
156
157comment "Debuggers"
158    depends TOOLCHAINOPTS
159
160config GDB
161    bool
162    depends !avr32
163    prompt "Build gdb" if TOOLCHAINOPTS
164    default y
165    help
166        Enable if you want to build the gdb
167
168config INSIGHT
169    bool
170    prompt "Build insight-gdb" if TOOLCHAINOPTS
171    select GDB
172    default n
173    help
174        Enable if you want to build insight-gdb
175
176config USE_UCLIBC
177    bool
178    default y if !TOOLCHAINOPTS && !EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
179
180config USE_EXTERNAL_LIBC
181    bool
182    default y if EXTERNAL_TOOLCHAIN || NATIVE_TOOLCHAIN
183
184source "toolchain/gcc/Config.version"
185
186source "toolchain/eglibc/Config.version"
187source "toolchain/uClibc/Config.version"
188source "toolchain/musl/Config.version"
189
190config LIBC
191    string
192    default "eglibc" if USE_EGLIBC
193    default "uClibc" if USE_UCLIBC
194    default "musl" if USE_MUSL
195
196config LIBC_VERSION
197    string
198    default EGLIBC_VERSION if USE_EGLIBC
199    default UCLIBC_VERSION if USE_UCLIBC
200    default MUSL_VERSION if USE_MUSL
201
202config TARGET_SUFFIX
203    string
204    default "gnueabi" if USE_EGLIBC && (arm || armeb)
205    default "gnu" if USE_EGLIBC && !(arm || armeb)
206    default "uclibcgnueabi" if USE_UCLIBC && (arm || armeb)
207    default "uclibc" if USE_UCLIBC && !(arm || armeb)
208    default "muslgnueabi" if USE_MUSL && (arm || armeb)
209    default "musl" if USE_MUSL && !(arm || armeb)
210

Archive Download this file



interactive