partially revert [18830]: stripped packages are still usefull when debugging with...
[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