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