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