.gitignore: ignore vim swap files
[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