make lzo compressed initramfs selectable, too
[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 !USE_GLIBC
164 depends !USE_EGLIBC
165 help
166 This will install binaries stripped using sstrip
167
168 endchoice
169
170 config USE_MKLIBS
171 bool "Strip unnecessary functions from libraries"
172 help
173 Reduces libraries to only those functions that are necessary for using all
174 selected packages (including those selected as <M>)
175 Note that this will make the system libraries incompatible with most of the packages
176 that are not selected during the build process
177
178 config STRIP_KERNEL_EXPORTS
179 depends LINUX_2_6
180 bool "Strip unnecessary exports from the kernel image"
181 help
182 Reduces kernel size by stripping unused kernel exports from the kernel image
183 Note that this might make the kernel incompatible with any kernel modules that
184 were not selected at the time the kernel image was created
185
186 comment "Package build options"
187
188 config DEBUG
189 bool
190 prompt "Compile packages with debugging info"
191 default n
192 help
193 Disables stripping and adds -g3 to the CFLAGS
194
195 config DEBUG_DIR
196 bool "Install debugging binaries into a staging directory"
197 default n
198 help
199 This will install all compiled package binaries into build_dir/target-*/debug-*/,
200 useful for cross-debugging via gdb/gdbserver
201
202 config IPV6
203 bool
204 prompt "Enable IPv6 support in packages"
205 default n
206 help
207 Enable IPV6 support in packages (passes --enable-ipv6 to configure scripts).
208
209 comment "Kernel build options"
210
211 config KERNEL_KALLSYMS
212 bool "Compile the kernel with symbol table information"
213 default n
214 help
215 This will give you more information in stack traces from kernel oopses
216
217 config KERNEL_PROFILING
218 bool "Compile the kernel with profiling enabled"
219 default n
220 help
221 Enable the extended profiling support mechanisms used by profilers such
222 as OProfile.
223
224 config KERNEL_DEBUG_FS
225 bool "Compile the kernel with Debug Filesystem enabled"
226 depends LINUX_2_6
227 default y
228 help
229 debugfs is a virtual file system that kernel developers use to put
230 debugging files into. Enable this option to be able to read and
231 write to these files.
232
233 endmenu
234
235 menuconfig DEVEL
236 bool "Advanced configuration options (for developers)"
237 default n
238
239 config BROKEN
240 bool
241 prompt "Show broken platforms / packages" if DEVEL
242 default n
243
244 config DOWNLOAD_FOLDER
245 string
246 prompt "Download folder" if DEVEL
247 default ""
248
249 config LOCALMIRROR
250 string
251 prompt "Local mirror for source packages" if DEVEL
252
253 config AUTOREBUILD
254 bool
255 prompt "Automatic rebuild of packages" if DEVEL
256 default y
257 help
258 Automatically rebuild packages when their files change
259
260 config BUILD_SUFFIX
261 string
262 prompt "Build suffix to append to the BUILD_DIR variable" if DEVEL
263 default ""
264 help
265 Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix
266
267 config TARGET_ROOTFS_DIR
268 string
269 prompt "Override the default TARGET_ROOTFS_DIR variable" if DEVEL
270 default ""
271 help
272 Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with custom path.
273 Use this option to re-define the location of the target root file system directory.
274
275 config CCACHE
276 bool
277 prompt "Use ccache" if DEVEL
278 default n
279 help
280 Compiler cache; see http://ccache.samba.org/
281
282 config EXTERNAL_KERNEL_TREE
283 string
284 prompt "Use external kernel tree" if DEVEL
285 default ""
286
287 config KERNEL_GIT_CLONE_URI
288 string
289 prompt "Enter git repository to clone" if DEVEL
290 default ""
291 help
292 Enter the full git repository path i.e.:
293 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
294 This will create a git clone of the kernel in your build
295 directory.
296
297 config KERNEL_GIT_LOCAL_REPOSITORY
298 string
299 prompt "Enter path to local reference repository" if DEVEL
300 default ""
301 help
302 Enter a full pathname to a local reference git repository.
303 In this instance, the --refererence option of git clone will
304 be used thus creating a quick local clone of your repo.
305
306
307 menuconfig TARGET_OPTIONS
308 bool "Target Options" if DEVEL
309
310 config TARGET_OPTIMIZATION
311 string
312 prompt "Target Optimizations" if TARGET_OPTIONS
313 default DEFAULT_TARGET_OPTIMIZATION
314 help
315 Optimizations to use when building for the target host.
316
317 config SOFT_FLOAT
318 bool
319 prompt "Use software floating point by default" if TARGET_OPTIONS
320 default y
321 depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU
322 help
323 If your target CPU does not have a Floating Point Unit (FPU) or a
324 kernel FPU emulator, but you still wish to support floating point
325 functions, then everything will need to be compiled with soft floating
326 point support (-msoft-float).
327
328 Most people will answer N.
329
330
331 source "toolchain/Config.in"
332
333 source "target/imagebuilder/Config.in"
334 source "target/sdk/Config.in"
335 source "target/toolchain/Config.in"
336
337 source "tmp/.config-package.in"
338
339