1 if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
3 comment "uClibc Options"
6 prompt "uClibc C library Version"
7 default BR2_UCLIBC_VERSION_0_9_33
9 Select the version of uClibc you wish to use.
11 config BR2_UCLIBC_VERSION_0_9_31
12 bool "uClibc 0.9.31.x"
15 config BR2_UCLIBC_VERSION_0_9_32
16 bool "uClibc 0.9.32.x"
17 depends on !(BR2_arc || BR2_avr32 || BR2_sh || BR2_xtensa)
19 config BR2_UCLIBC_VERSION_0_9_33
20 bool "uClibc 0.9.33.x"
21 depends on !(BR2_arc || BR2_avr32 || BR2_xtensa)
23 config BR2_UCLIBC_VERSION_0_9_33_ARC
24 bool "uClibc 0.9.33.x-arc"
27 config BR2_UCLIBC_VERSION_SNAPSHOT
32 config BR2_USE_UCLIBC_SNAPSHOT
33 string "Date (yyyymmdd) of snapshot or 'snapshot' for latest"
35 depends on BR2_UCLIBC_VERSION_SNAPSHOT
37 Use latest snapshot or one from a specific date?
39 config BR2_UCLIBC_VERSION_STRING
41 default 0.9.31.1 if BR2_UCLIBC_VERSION_0_9_31
42 default 0.9.32.1 if BR2_UCLIBC_VERSION_0_9_32
43 default 0.9.33.2 if BR2_UCLIBC_VERSION_0_9_33
44 default 0.9.33-arc if BR2_UCLIBC_VERSION_0_9_33_ARC
45 default BR2_USE_UCLIBC_SNAPSHOT if BR2_UCLIBC_VERSION_SNAPSHOT
47 config BR2_UCLIBC_CONFIG
48 string "uClibc configuration file to use?"
49 default "package/uclibc/uClibc-0.9.31.config" if BR2_UCLIBC_VERSION_0_9_31
50 default "package/uclibc/uClibc-0.9.32.config" if BR2_UCLIBC_VERSION_0_9_32
51 default "package/uclibc/uClibc-0.9.33.config" if BR2_UCLIBC_VERSION_0_9_33
52 default "package/uclibc/uClibc-snapshot.config" if BR2_UCLIBC_VERSION_0_9_33_ARC
53 default "package/uclibc/uClibc-snapshot.config" if BR2_UCLIBC_VERSION_SNAPSHOT
55 Some people may wish to use their own modified uClibc configuration
56 file and will specify their config file location with this option.
57 See also docs/README in this package.
58 If unsure, use the default.
60 config BR2_TOOLCHAIN_BUILDROOT_LARGEFILE
61 bool "Enable large file (files > 2 GB) support"
64 Enable this option if you want your toolchain to support
65 files bigger than 2 GB.
67 config BR2_TOOLCHAIN_BUILDROOT_INET_IPV6
68 bool "Enable IPv6 support"
71 Enable this option if you want your toolchain to support
74 config BR2_TOOLCHAIN_BUILDROOT_INET_RPC
75 bool "Enable RPC support"
76 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
78 Enable this option if you want your toolchain to support
79 RPC (needed for NFS, for example).
81 config BR2_TOOLCHAIN_BUILDROOT_WCHAR
82 bool "Enable WCHAR support"
85 Enable this option if you want your toolchain to support
86 wide characters (i.e characters longer than 8 bits, needed
89 config BR2_TOOLCHAIN_BUILDROOT_LOCALE
90 bool "Enable toolchain locale/i18n support"
91 select BR2_TOOLCHAIN_BUILDROOT_WCHAR
92 select BR2_ENABLE_LOCALE
94 Enable this option if you want your toolchain to support
95 localization and internationalization.
98 prompt "Thread library implementation"
99 default BR2_PTHREADS_NATIVE if !(BR2_avr32 || BR2_xtensa)
100 default BR2_PTHREADS_OLD
102 Use this option to select the thread library implementation
103 that should be used in your toolchain. Not all thread
104 variants work with all versions of uClibc, the "linuxthreads
105 (stable/old)" may be a working fallback if you need
108 config BR2_PTHREADS_NONE
114 depends on !BR2_xtensa
115 select BR2_TOOLCHAIN_HAS_THREADS
117 config BR2_PTHREADS_OLD
118 bool "linuxthreads (stable/old)"
119 select BR2_TOOLCHAIN_HAS_THREADS
121 config BR2_PTHREADS_NATIVE
122 bool "Native POSIX Threading (NPTL)"
123 select BR2_TOOLCHAIN_HAS_THREADS
125 depends on !BR2_avr32
127 depends on !BR2_xtensa
128 depends on !BR2_x86_i386
131 config BR2_PTHREAD_DEBUG
132 bool "Thread library debugging"
133 depends on BR2_PTHREADS || BR2_PTHREADS_OLD || BR2_PTHREADS_NATIVE
134 select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
136 Build the thread library with debugging enabled.
138 config BR2_TOOLCHAIN_BUILDROOT_USE_SSP
139 bool "Enable stack protection support"
140 select BR2_TOOLCHAIN_HAS_SSP
142 Enable stack smashing protection support using GCCs
143 -fstack-protector-all option in uClibc.
145 See http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt
148 config BR2_UCLIBC_INSTALL_UTILS
149 bool "Compile and install uClibc utilities"
153 Enabling this option will compile and install the getconf,
154 ldconfig and ldd uClibc utilities for the target.
156 You can save ~32 KiB in target space by disabling them since
157 they're normally not needed.
159 config BR2_UCLIBC_INSTALL_TEST_SUITE
160 bool "Compile and install uClibc tests"
161 select BR2_PACKAGE_MAKE
163 Enabling this option will compile and install the uClibc test suite.
164 This is useful if you want to check if the uClibc library is working
165 for your architecture and/or help developing uClibc.
167 The test suite will be installed into /root/uClibc directory. To run
168 the test suite enter the /root/uClibc/test directory and type
169 "make UCLIBC_ONLY=1 CC=/bin/true check".
171 See the /root/uClibc/test/README for additional information.
173 This is not needed at all for normal builds, so you can safely say no
174 if you do not plan to dig into your C library.
176 # Mapping from the Buildroot architecture configuration options to the
177 # uClibc architecture names.
178 config BR2_UCLIBC_TARGET_ARCH
180 default arc if BR2_arcle || BR2_arceb
181 default arm if BR2_arm || BR2_armeb
182 default avr32 if BR2_avr32
183 default bfin if BR2_bfin
184 default m68k if BR2_m68k
185 default mips if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
186 default powerpc if BR2_powerpc
188 default sparc if BR2_sparc
189 default xtensa if BR2_xtensa
190 default i386 if BR2_i386
191 default x86_64 if BR2_x86_64
193 # This is only useful for uClibc <= 0.9.32. It can be removed once
194 # Buildroot will support only uClibc >= 0.9.33 on ARM.
195 config BR2_UCLIBC_ARM_TYPE
197 depends on BR2_UCLIBC_TARGET_ARCH = "arm"
198 default GENERIC_ARM if BR2_fa526
199 default ARM7TDMI if BR2_arm7tdmi
200 default ARM720T if BR2_arm720t
201 default ARM920T if BR2_arm920t
202 default ARM922T if BR2_arm922t
203 default ARM926T if BR2_arm926t
204 default ARM10T if BR2_arm10t
205 default ARM1136JF_S if BR2_arm1136jf_s
206 default ARM1176JZ_S if BR2_arm1176jz_s
207 default ARM1176JZF_S if BR2_arm1176jzf_s
208 default ARM_SA1100 if BR2_strongarm
209 default ARM_XSCALE if BR2_xscale
210 default ARM_IWMMXT if BR2_iwmmxt
211 default ARM_CORTEXA8 if BR2_cortex_a8
212 default ARM_CORTEXA9 if BR2_cortex_a9
214 config BR2_UCLIBC_ARM_BX
216 depends on BR2_UCLIBC_TARGET_ARCH = "arm"
217 default y if (BR2_ARM_CPU_HAS_THUMB || BR2_ARM_CPU_HAS_THUMB2)
219 config BR2_UCLIBC_MIPS_ABI
221 depends on BR2_UCLIBC_TARGET_ARCH = "mips"
222 default O32 if BR2_MIPS_OABI32
223 default N32 if BR2_MIPS_NABI32
224 default N64 if BR2_MIPS_NABI64
226 config BR2_UCLIBC_MIPS_ISA
228 depends on BR2_UCLIBC_TARGET_ARCH = "mips"
229 default 1 if BR2_mips_1
230 default 2 if BR2_mips_2
231 default 3 if BR2_mips_3
232 default 4 if BR2_mips_4
233 default MIPS32 if BR2_mips_32
234 default MIPS32R2 if BR2_mips_32r2
235 default MIPS64 if BR2_mips_64
237 config BR2_UCLIBC_SH_TYPE
239 depends on BR2_UCLIBC_TARGET_ARCH = "sh"
240 default SHA2 if BR2_sh2
241 default SH3 if BR2_sh3 || BR2_sh3eb
242 default SH4 if BR2_sh4 || BR2_sh4eb
244 config BR2_UCLIBC_SPARC_TYPE
246 depends on BR2_UCLIBC_TARGET_ARCH = "sparc"
247 default V7 if BR2_sparc_v7 || BR2_sparc_sparchfleon || BR2_sparc_sparcsfleon
248 default V8 if BR2_sparc_v8 || BR2_sparc_sparchfleonv8 || BR2_sparc_sparcsfleonv8
250 config BR2_UCLIBC_POWERPC_TYPE
252 depends on BR2_UCLIBC_TARGET_ARCH = "powerpc"
253 default CLASSIC if !BR2_powerpc_8540 && !BR2_powerpc_8548
254 default E500 if BR2_powerpc_8540 || BR2_powerpc_8548
256 config BR2_UCLIBC_X86_TYPE
258 depends on BR2_UCLIBC_TARGET_ARCH = "i386"
259 default 386 if BR2_x86_i386
260 default 486 if BR2_x86_i486
261 default 586 if BR2_x86_i586
262 default 586MMX if BR2_x86_pentium_mmx
263 default 686 if BR2_x86_i686 || BR2_x86_pentiumpro
264 default PENTIUMII if BR2_x86_pentium2
265 default PENTIUMIII if BR2_x86_pentium3
266 default PENTIUM4 if BR2_x86_pentium4 || BR2_x86_pentium_m || \
267 BR2_x86_nocona || BR2_x86_core2
269 endif # BR2_TOOLCHAIN_BUILDROOT_UCLIBC