make the display support feature flag selectable
[openwrt/staging/chunkeey.git] / Config.in
1 # Copyright (C) 2006-2009 OpenWrt.org
2 #
3 # This is free software, licensed under the GNU General Public License v2.
4 # See /LICENSE for more information.
5 #
6
7 mainmenu "OpenWrt Configuration"
8
9 config HAVE_DOT_CONFIG
10 bool
11 default y
12
13 source "target/Config.in"
14
15 menu "Target Images"
16
17 menuconfig TARGET_ROOTFS_INITRAMFS
18 bool "ramdisk"
19 default y if USES_INITRAMFS
20 help
21 Embed the rootfs into the kernel (initramfs)
22
23 choice
24 prompt "Compression"
25 default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
26 default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
27 default TARGET_INITRAMFS_COMPRESSION_NONE
28 depends TARGET_ROOTFS_INITRAMFS
29 depends !LINUX_2_6_25
30 help
31 Select ramdisk compression.
32
33 config TARGET_INITRAMFS_COMPRESSION_NONE
34 bool "none"
35
36 config TARGET_INITRAMFS_COMPRESSION_GZIP
37 bool "gzip"
38
39 config TARGET_INITRAMFS_COMPRESSION_BZIP2
40 bool "bzip2"
41
42 config TARGET_INITRAMFS_COMPRESSION_LZMA
43 bool "lzma"
44
45 config TARGET_INITRAMFS_COMPRESSION_LZO
46 bool "lzo"
47 endchoice
48
49 comment "Root filesystem archives"
50
51 config TARGET_ROOTFS_CPIOGZ
52 bool "cpio.gz"
53 default y if USES_CPIOGZ
54 help
55 Build a compressed cpio archive of the the root filesystem
56
57 config TARGET_ROOTFS_TARGZ
58 bool "tar.gz"
59 default y if USES_TARGZ
60 help
61 Build a compressed tar archive of the the root filesystem
62
63 comment "Root filesystem images"
64
65 config TARGET_ROOTFS_EXT2FS
66 bool "ext2"
67 default y if USES_EXT2
68 depends !TARGET_ROOTFS_INITRAMFS
69 help
70 Ext2 file system with some free space for uml images
71
72 config TARGET_ROOTFS_ISO
73 bool "iso"
74 default n
75 depends TARGET_ROOTFS_INITRAMFS && TARGET_x86
76 help
77 Create some bootable ISO image
78
79 config TARGET_ROOTFS_JFFS2
80 bool "jffs2"
81 default y if USES_JFFS2
82 depends !TARGET_ROOTFS_INITRAMFS
83 help
84 Build a jffs2 root filesystem
85
86 config TARGET_ROOTFS_SQUASHFS
87 bool "squashfs"
88 default y if USES_SQUASHFS
89 depends !TARGET_ROOTFS_INITRAMFS
90 help
91 Build a squashfs-lzma root filesystem
92
93 config TARGET_ROOTFS_UBIFS
94 bool "ubifs"
95 default y if USES_UBIFS
96 depends !TARGET_ROOTFS_INITRAMFS && USES_UBIFS
97 help
98 Build a ubifs root filesystem
99
100 comment "Image Options"
101
102 source "target/linux/*/image/Config.in"
103
104 config TARGET_ROOTFS_PARTSIZE
105 int "Root filesystem partition size (in MB)"
106 depends X86_GRUB_IMAGES || TARGET_ROOTFS_EXT2FS || TARGET_rb532
107 default 48
108 help
109 Allows you to change the root filesystem partition size
110
111 config TARGET_ROOTFS_MAXINODE
112 int "Maximum number of inodes in root filesystem"
113 depends TARGET_ROOTFS_EXT2FS
114 default 6000
115 help
116 Allows you to change the maximum number of inodes in the root filesystem
117
118 endmenu
119
120 menu "Global build settings"
121
122 config ALL
123 bool "Select all packages by default"
124 default n
125
126 comment "General build options"
127
128 config DISPLAY_SUPPORT
129 bool "Show packages that require graphics support (local or remote)"
130 default n
131
132 config BUILD_PATENTED
133 default y
134 bool "Compile with support for patented functionality"
135 help
136 When this option is disabled, software which provides patented functionality will not be built.
137 In case software provides optional support for patented functionality,
138 this optional support will get disabled for this package.
139
140 config LARGEFILE
141 bool
142 prompt "Enable large file (files > 2 GB) support"
143 default y
144 help
145 Enable large file (files > 2 GB) support.
146
147 config SHADOW_PASSWORDS
148 bool
149 prompt "Enable shadow password support"
150 default y
151 help
152 Enable shadow password support.
153
154 config CLEAN_IPKG
155 bool
156 prompt "Remove ipkg/opkg status data files in final images"
157 default n
158 help
159 This removes all ipkg/opkg status data files from the target directory before building the root fs
160
161 config COLLECT_KERNEL_DEBUG
162 bool
163 prompt "Collect kernel debug information"
164 select KERNEL_DEBUG_INFO
165 default n
166 help
167 This collects debugging symbols from the kernel and all compiled modules.
168 Useful for release builds, so that kernel issues can be debugged offline later.
169
170 comment "Kernel build options"
171
172 config KERNEL_DEBUG_FS
173 bool "Compile the kernel with Debug FileSystem enabled"
174 default y
175 help
176 debugfs is a virtual file system that kernel developers use to put
177 debugging files into. Enable this option to be able to read and
178 write to these files.
179
180 config KERNEL_PROFILING
181 bool "Compile the kernel with profiling enabled"
182 default n
183 help
184 Enable the extended profiling support mechanisms used by profilers such
185 as OProfile.
186
187 config KERNEL_KALLSYMS
188 bool "Compile the kernel with symbol table information"
189 default n
190 help
191 This will give you more information in stack traces from kernel oopses
192
193 config KERNEL_DEBUG_KERNEL
194 bool
195 default n
196
197 config KERNEL_DEBUG_INFO
198 bool "Compile the kernel with debug information"
199 default n
200 select KERNEL_DEBUG_KERNEL
201 help
202 This will compile your kernel and modules with debug information.
203
204 config KERNEL_DEBUG_LL
205 bool
206 default n
207 depends on arm
208 help
209 ARM low level debugging
210
211 config KERNEL_EARLY_PRINTK
212 bool "Compile the kernel with early printk"
213 default n
214 depends on arm
215 select KERNEL_DEBUG_KERNEL
216 select KERNEL_DEBUG_LL if arm
217 help
218 Compile the kernel with early printk support.
219 This is only useful for debugging purposes to send messages
220 over the serial console in early boot.
221 Enable this to debug early boot problems.
222
223 comment "Package build options"
224
225 config DEBUG
226 bool
227 prompt "Compile packages with debugging info"
228 default n
229 help
230 Adds -g3 to the CFLAGS
231
232 config IPV6
233 bool
234 prompt "Enable IPv6 support in packages"
235 default y
236 help
237 Enable IPV6 support in packages (passes --enable-ipv6 to configure scripts).
238
239 config PKG_BUILD_PARALLEL
240 bool
241 prompt "Compile certain packages parallelized"
242 default n
243 help
244 This adds a -jX option to certain packages that are known to
245 behave well for parallel build.
246
247 Note that this may overcommit CPU resources depending on the
248 -j level of the main make process, the number of package
249 submake jobs selected below and the number of actual CPUs present.
250 Example: If the main make is passed a -j4 and the submake -j
251 is also set to 4, we may end up with 16 parallel make processes
252 in the worst case.
253
254 You get maximum build performance, if you set the package build
255 jobs to the number of CPUs (cores) available and also start the main
256 make process with -jX, where X is the number of CPUs (cores).
257 However, make sure you have enough RAM available for
258 NR_CPUS to the power of two (NR_CPUS^2) make jobs.
259
260 If you are unsure, select N.
261
262 config PKG_BUILD_JOBS
263 int
264 prompt "Number of package submake jobs (2-512)"
265 range 2 512
266 default 2
267 depends on PKG_BUILD_PARALLEL
268 help
269 The number of jobs (-jX) to pass to packages submake.
270
271 config PKG_DEFAULT_PARALLEL
272 bool
273 prompt "Parallelize the default package build rule (May break build)"
274 depends on PKG_BUILD_PARALLEL
275 default n
276 help
277 Always set the default package build rules to parallel build.
278
279 WARNING: This may break build or kill your cat, as it builds
280 packages with multiple jobs that are probably not tested in
281 a parallel build environment.
282
283 Only say Y, if you don't mind fixing broken packages.
284 Before reporting build bugs, set this to N and re-run the build.
285
286 config TOOLCHAIN_PARALLEL
287 bool
288 prompt "Parallelize the toolchain build (May break build)"
289 depends on PKG_BUILD_PARALLEL
290 default n
291 help
292 Build the toolchain with parallel make jobs.
293 This speeds up the toolchain build on SMP machines, but may
294 break the build for certain toolchain versions.
295
296 If you say Y, toolchain build might break.
297 Before reporting build bugs, set this to N and re-run the build.
298
299 comment "Stripping options"
300
301 choice
302 prompt "Binary stripping method"
303 default USE_STRIP if EXTERNAL_TOOLCHAIN
304 default USE_STRIP if USE_GLIBC || USE_EGLIBC
305 default USE_SSTRIP
306 help
307 Select the binary stripping method you wish to use.
308
309 config NO_STRIP
310 bool "none"
311 help
312 This will install unstripped binaries (useful for native compiling/debugging)
313
314 config USE_STRIP
315 bool "strip"
316 help
317 This will install binaries stripped using strip from binutils
318
319
320 config USE_SSTRIP
321 bool "sstrip"
322 depends !DEBUG
323 depends !USE_GLIBC
324 depends !USE_EGLIBC
325 help
326 This will install binaries stripped using sstrip
327 endchoice
328
329 config STRIP_ARGS
330 string
331 prompt "Strip arguments"
332 depends USE_STRIP
333 default "--strip-unneeded --remove-section=.comment --remove-section=.note" if DEBUG
334 default "--strip-all"
335 help
336 Specifies arguments passed to the strip command when stripping binaries
337
338 config STRIP_KERNEL_EXPORTS
339 bool "Strip unnecessary exports from the kernel image"
340 help
341 Reduces kernel size by stripping unused kernel exports from the kernel image
342 Note that this might make the kernel incompatible with any kernel modules that
343 were not selected at the time the kernel image was created
344
345 config USE_MKLIBS
346 bool "Strip unnecessary functions from libraries"
347 help
348 Reduces libraries to only those functions that are necessary for using all
349 selected packages (including those selected as <M>)
350 Note that this will make the system libraries incompatible with most of the packages
351 that are not selected during the build process
352
353 endmenu
354
355 menuconfig DEVEL
356 bool "Advanced configuration options (for developers)"
357 default n
358
359 config BROKEN
360 bool "Show broken platforms / packages" if DEVEL
361 default n
362
363 config DOWNLOAD_FOLDER
364 string "Download folder" if DEVEL
365 default ""
366
367 config LOCALMIRROR
368 string "Local mirror for source packages" if DEVEL
369 default ""
370
371 config AUTOREBUILD
372 bool "Automatic rebuild of packages" if DEVEL
373 default y
374 help
375 Automatically rebuild packages when their files change
376
377 config BUILD_SUFFIX
378 string "Build suffix to append to the BUILD_DIR variable" if DEVEL
379 default ""
380 help
381 Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix
382
383 config TARGET_ROOTFS_DIR
384 string "Override the default TARGET_ROOTFS_DIR variable" if DEVEL
385 default ""
386 help
387 Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with custom path.
388 Use this option to re-define the location of the target root file system directory.
389
390 config CCACHE
391 bool "Use ccache" if DEVEL
392 default n
393 help
394 Compiler cache; see http://ccache.samba.org/
395
396 config EXTERNAL_KERNEL_TREE
397 string "Use external kernel tree" if DEVEL
398 default ""
399
400 config KERNEL_GIT_CLONE_URI
401 string "Enter git repository to clone" if DEVEL
402 default ""
403 help
404 Enter the full git repository path i.e.:
405 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
406 This will create a git clone of the kernel in your build
407 directory.
408
409 config KERNEL_GIT_LOCAL_REPOSITORY
410 string "Enter path to local reference repository" if DEVEL
411 default ""
412 help
413 Enter a full pathname to a local reference git repository.
414 In this instance, the --refererence option of git clone will
415 be used thus creating a quick local clone of your repo.
416
417 menuconfig TARGET_OPTIONS
418 bool "Target Options" if DEVEL
419
420 config TARGET_OPTIMIZATION
421 string "Target Optimizations" if TARGET_OPTIONS
422 default DEFAULT_TARGET_OPTIMIZATION
423 help
424 Optimizations to use when building for the target host.
425
426 config SOFT_FLOAT
427 bool "Use software floating point by default" if TARGET_OPTIONS
428 default y
429 depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU
430 help
431 If your target CPU does not have a Floating Point Unit (FPU) or a
432 kernel FPU emulator, but you still wish to support floating point
433 functions, then everything will need to be compiled with soft floating
434 point support (-msoft-float).
435
436 Most people will answer N.
437
438 source "toolchain/Config.in"
439
440 source "target/imagebuilder/Config.in"
441 source "target/sdk/Config.in"
442 source "target/toolchain/Config.in"
443
444 source "tmp/.config-package.in"