704ba3dd24b2bc4af2fc9e880e0faa5f2ef15935
[openwrt/openwrt.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 config TARGET_ROOTFS_INITRAMFS
17 bool "ramdisk"
18 default y if USES_INITRAMFS
19 depends LINUX_2_6
20 help
21 Embed the rootfs into the kernel (initramfs)
22
23 choice
24 prompt "ramdisk compression"
25 depends TARGET_ROOTFS_INITRAMFS
26 depends !LINUX_2_6_21
27 depends !LINUX_2_6_25
28 depends !LINUX_2_6_27
29 depends !LINUX_2_6_28
30 default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
31 default TARGET_INITRAMFS_COMPRESSION_NONE
32 help
33 Select ramdisk compression.
34
35 config TARGET_INITRAMFS_COMPRESSION_NONE
36 bool "NONE"
37
38 config TARGET_INITRAMFS_COMPRESSION_GZIP
39 bool "GZIP"
40
41 config TARGET_INITRAMFS_COMPRESSION_BZIP2
42 bool "BZIP2"
43
44 config TARGET_INITRAMFS_COMPRESSION_LZMA
45 bool "LZMA"
46
47 config TARGET_INITRAMFS_COMPRESSION_LZO
48 bool "LZO"
49 endchoice
50
51 config TARGET_ROOTFS_JFFS2
52 bool "jffs2"
53 default y if USES_JFFS2
54 depends !TARGET_ROOTFS_INITRAMFS
55 help
56 Build a jffs2 root filesystem
57
58 config TARGET_ROOTFS_SQUASHFS
59 bool "squashfs"
60 default y if USES_SQUASHFS
61 depends !TARGET_ROOTFS_INITRAMFS
62 help
63 Build a squashfs-lzma root filesystem
64
65 config TARGET_ROOTFS_TGZ
66 bool "tgz"
67 default y if USES_TGZ
68 depends !TARGET_ROOTFS_INITRAMFS
69 help
70 Build a compressed tar archive of the the root filesystem
71
72 config TARGET_ROOTFS_CPIOGZ
73 bool "cpiogz"
74 default y if USES_CPIOGZ
75 depends !TARGET_ROOTFS_INITRAMFS
76 help
77 Build a compressed cpio archive of the the root filesystem
78
79 config TARGET_ROOTFS_EXT2FS
80 bool "ext2"
81 default y if USES_EXT2
82 depends !TARGET_ROOTFS_INITRAMFS
83 help
84 Ext2 file system with some free space for uml images
85
86 config TARGET_ROOTFS_ISO
87 bool "iso"
88 default n
89 depends TARGET_ROOTFS_INITRAMFS && TARGET_x86
90 help
91 Create some bootable ISO image
92
93 comment "Image Options"
94
95 source "target/linux/*/image/Config.in"
96
97 config TARGET_ROOTFS_FSPART
98 int "Filesystem part size (in MB)"
99 depends X86_GRUB_IMAGES || TARGET_ROOTFS_EXT2FS || TARGET_rb532 || TARGET_olpc
100 default 48
101 help
102 Allows you to change the filesystem partition size
103
104 config TARGET_ROOTFS_MAXINODE
105 int "Maximum number of inodes in filesystem"
106 depends TARGET_ROOTFS_EXT2FS
107 default 6000
108 help
109 Allows you to change the maximum number of inodes in the filesystem
110
111 endmenu
112
113 menu "Global build settings"
114
115 config ALL
116 bool "Select all packages by default"
117 default n
118
119 comment "General build options"
120
121 config CLEAN_IPKG
122 bool
123 prompt "Disable ipkg/opkg installation on the target"
124 default n
125 help
126 This removes all ipkg data from the target directory before building the root fs
127
128 config LARGEFILE
129 bool
130 prompt "Enable large file (files > 2 GB) support"
131 default y
132 help
133 Enable large file (files > 2 GB) support.
134
135 config SHADOW_PASSWORDS
136 bool
137 prompt "Enable shadow password support"
138 default y
139 help
140 Enable shadow password support.
141
142 choice
143 prompt "Binary stripping method"
144 default USE_STRIP if EXTERNAL_TOOLCHAIN
145 default USE_STRIP if USE_GLIBC || USE_EGLIBC
146 default USE_SSTRIP
147 help
148 Select the binary stripping method you wish to use.
149
150 config NO_STRIP
151 bool "none"
152 help
153 This will install unstripped binaries (useful for native compiling/debugging)
154
155 config USE_STRIP
156 bool "strip"
157 help
158 This will install binaries stripped using strip from binutils
159
160
161 config USE_SSTRIP
162 bool "sstrip"
163 depends !DEBUG
164 depends !USE_GLIBC
165 depends !USE_EGLIBC
166 help
167 This will install binaries stripped using sstrip
168
169 endchoice
170
171 config USE_MKLIBS
172 bool "Strip unnecessary functions from libraries"
173 help
174 Reduces libraries to only those functions that are necessary for using all
175 selected packages (including those selected as <M>)
176 Note that this will make the system libraries incompatible with most of the packages
177 that are not selected during the build process
178
179 config STRIP_KERNEL_EXPORTS
180 depends LINUX_2_6
181 bool "Strip unnecessary exports from the kernel image"
182 help
183 Reduces kernel size by stripping unused kernel exports from the kernel image
184 Note that this might make the kernel incompatible with any kernel modules that
185 were not selected at the time the kernel image was created
186
187 comment "Package build options"
188
189 config DEBUG
190 bool
191 prompt "Compile packages with debugging info"
192 default n
193 help
194 Adds -g3 to the CFLAGS
195
196 config DEBUG_DIR
197 bool "Install debugging binaries into a staging directory"
198 default n
199 help
200 This will install all compiled package binaries into build_dir/target-*/debug-*/,
201 useful for cross-debugging via gdb/gdbserver
202
203 config IPV6
204 bool
205 prompt "Enable IPv6 support in packages"
206 default n
207 help
208 Enable IPV6 support in packages (passes --enable-ipv6 to configure scripts).
209
210 comment "Kernel build options"
211
212 config KERNEL_KALLSYMS
213 bool "Compile the kernel with symbol table information"
214 default n
215 help
216 This will give you more information in stack traces from kernel oopses
217
218 config KERNEL_PROFILING
219 bool "Compile the kernel with profiling enabled"
220 default n
221 help
222 Enable the extended profiling support mechanisms used by profilers such
223 as OProfile.
224
225 config KERNEL_DEBUG_FS
226 bool "Compile the kernel with Debug Filesystem enabled"
227 depends LINUX_2_6
228 default y
229 help
230 debugfs is a virtual file system that kernel developers use to put
231 debugging files into. Enable this option to be able to read and
232 write to these files.
233
234 endmenu
235
236 menuconfig DEVEL
237 bool "Advanced configuration options (for developers)"
238 default n
239
240 config BROKEN
241 bool
242 prompt "Show broken platforms / packages" if DEVEL
243 default n
244
245 config DOWNLOAD_FOLDER
246 string
247 prompt "Download folder" if DEVEL
248 default ""
249
250 config LOCALMIRROR
251 string
252 prompt "Local mirror for source packages" if DEVEL
253
254 config AUTOREBUILD
255 bool
256 prompt "Automatic rebuild of packages" if DEVEL
257 default y
258 help
259 Automatically rebuild packages when their files change
260
261 config BUILD_SUFFIX
262 string
263 prompt "Build suffix to append to the BUILD_DIR variable" if DEVEL
264 default ""
265 help
266 Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix
267
268 config TARGET_ROOTFS_DIR
269 string
270 prompt "Override the default TARGET_ROOTFS_DIR variable" if DEVEL
271 default ""
272 help
273 Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with custom path.
274 Use this option to re-define the location of the target root file system directory.
275
276 config CCACHE
277 bool
278 prompt "Use ccache" if DEVEL
279 default n
280 help
281 Compiler cache; see http://ccache.samba.org/
282
283 config EXTERNAL_KERNEL_TREE
284 string
285 prompt "Use external kernel tree" if DEVEL
286 default ""
287
288 config KERNEL_GIT_CLONE_URI
289 string
290 prompt "Enter git repository to clone" if DEVEL
291 default ""
292 help
293 Enter the full git repository path i.e.:
294 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
295 This will create a git clone of the kernel in your build
296 directory.
297
298 config KERNEL_GIT_LOCAL_REPOSITORY
299 string
300 prompt "Enter path to local reference repository" if DEVEL
301 default ""
302 help
303 Enter a full pathname to a local reference git repository.
304 In this instance, the --refererence option of git clone will
305 be used thus creating a quick local clone of your repo.
306
307
308 menuconfig TARGET_OPTIONS
309 bool "Target Options" if DEVEL
310
311 config TARGET_OPTIMIZATION
312 string
313 prompt "Target Optimizations" if TARGET_OPTIONS
314 default DEFAULT_TARGET_OPTIMIZATION
315 help
316 Optimizations to use when building for the target host.
317
318 config SOFT_FLOAT
319 bool
320 prompt "Use software floating point by default" if TARGET_OPTIONS
321 default y
322 depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU
323 help
324 If your target CPU does not have a Floating Point Unit (FPU) or a
325 kernel FPU emulator, but you still wish to support floating point
326 functions, then everything will need to be compiled with soft floating
327 point support (-msoft-float).
328
329 Most people will answer N.
330
331
332 source "toolchain/Config.in"
333
334 source "target/imagebuilder/Config.in"
335 source "target/sdk/Config.in"
336 source "target/toolchain/Config.in"
337
338 source "tmp/.config-package.in"
339
340