source: trunk/Config.in @ 25769

Last change on this file since 25769 was 25769, checked in by nbd, 5 years ago

kernel: make AIO support configurable (disabled by default)

  • Property svn:eol-style set to native
File size: 12.1 KB
Line 
1# Copyright (C) 2006-2010 OpenWrt.org
2#
3# This is free software, licensed under the GNU General Public License v2.
4# See /LICENSE for more information.
5#
6
7mainmenu "OpenWrt Configuration"
8
9config HAVE_DOT_CONFIG
10        bool
11        default y
12
13source "target/Config.in"
14
15menu "Target Images"
16
17        menuconfig TARGET_ROOTFS_INITRAMFS
18                bool "ramdisk"
19                default y if USES_INITRAMFS
20                help
21                  Embed the rootfs into the kernel (initramfs)
22
23                choice
24                        prompt "Compression"
25                        default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
26                        default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
27                        default TARGET_INITRAMFS_COMPRESSION_NONE
28                        depends TARGET_ROOTFS_INITRAMFS
29                        help
30                          Select ramdisk compression.
31
32                        config TARGET_INITRAMFS_COMPRESSION_NONE
33                                bool "none"
34
35                        config TARGET_INITRAMFS_COMPRESSION_GZIP
36                                bool "gzip"
37
38                        config TARGET_INITRAMFS_COMPRESSION_BZIP2
39                                bool "bzip2"
40
41                        config TARGET_INITRAMFS_COMPRESSION_LZMA
42                                bool "lzma"
43
44                        config TARGET_INITRAMFS_COMPRESSION_LZO
45                                bool "lzo"
46
47                        config TARGET_INITRAMFS_COMPRESSION_XZ
48                                bool "xz"
49                                depends LINUX_2_6_38
50                endchoice
51
52        comment "Root filesystem archives"
53
54        config TARGET_ROOTFS_CPIOGZ
55                bool "cpio.gz"
56                default y if USES_CPIOGZ
57                help
58                  Build a compressed cpio archive of the the root filesystem
59
60        config TARGET_ROOTFS_TARGZ
61                bool "tar.gz"
62                default y if USES_TARGZ
63                help
64                  Build a compressed tar archive of the the root filesystem
65
66        comment "Root filesystem images"
67
68        config TARGET_ROOTFS_EXT4FS
69                bool "ext4"
70                default y if USES_EXT4
71                depends !TARGET_ROOTFS_INITRAMFS
72                help
73                  Ext4 file system with some free space for uml images
74
75        config TARGET_ROOTFS_ISO
76                bool "iso"
77                default n
78                depends TARGET_ROOTFS_INITRAMFS && TARGET_x86
79                help
80                  Create some bootable ISO image
81
82        config TARGET_ROOTFS_JFFS2
83                bool "jffs2"
84                default y if USES_JFFS2
85                depends !TARGET_ROOTFS_INITRAMFS
86                help
87                  Build a jffs2 root filesystem
88
89        config TARGET_ROOTFS_SQUASHFS
90                bool "squashfs"
91                default y if USES_SQUASHFS
92                depends !TARGET_ROOTFS_INITRAMFS
93                help
94                  Build a squashfs-lzma root filesystem
95
96        config TARGET_ROOTFS_UBIFS
97                bool "ubifs"
98                default y if USES_UBIFS
99                depends !TARGET_ROOTFS_INITRAMFS && USES_UBIFS
100                help
101                  Build a ubifs root filesystem
102
103        comment "Image Options"
104
105        source "target/linux/*/image/Config.in"
106
107        config TARGET_ROOTFS_PARTSIZE
108                int "Root filesystem partition size (in MB)"
109                depends X86_GRUB_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532
110                default 48
111                help
112                    Allows you to change the root filesystem partition size
113
114        config TARGET_ROOTFS_MAXINODE
115                int "Maximum number of inodes in root filesystem"
116                depends TARGET_ROOTFS_EXT4FS
117                default 6000
118                help
119                    Allows you to change the maximum number of inodes in the root filesystem
120
121endmenu
122
123menu "Global build settings"
124
125        config ALL
126                bool "Select all packages by default"
127                default n
128
129        comment "General build options"
130
131        config DISPLAY_SUPPORT
132                bool "Show packages that require graphics support (local or remote)"
133                default n
134
135        config BUILD_PATENTED
136                default y
137                bool "Compile with support for patented functionality"
138                help
139                  When this option is disabled, software which provides patented functionality will not be built.
140                  In case software provides optional support for patented functionality,
141                  this optional support will get disabled for this package.
142
143        config BUILD_NLS
144                default n
145                bool "Compile with full language support"
146                help
147                  When this option is enabled, packages are built with the full versions of iconv and GNU gettext
148                  instead of the default OpenWrt stubs.
149
150        config SHADOW_PASSWORDS
151                bool
152                prompt "Enable shadow password support"
153                default y
154                help
155                  Enable shadow password support.
156
157        config CLEAN_IPKG
158                bool
159                prompt "Remove ipkg/opkg status data files in final images"
160                default n
161                help
162                        This removes all ipkg/opkg status data files from the target directory before building the root fs
163
164        config COLLECT_KERNEL_DEBUG
165                bool
166                prompt "Collect kernel debug information"
167                select KERNEL_DEBUG_INFO
168                default n
169                help
170                        This collects debugging symbols from the kernel and all compiled modules.
171                        Useful for release builds, so that kernel issues can be debugged offline later.
172
173        comment "Kernel build options"
174
175        config KERNEL_DEBUG_FS
176                bool "Compile the kernel with Debug FileSystem enabled"
177                default y
178                help
179                  debugfs is a virtual file system that kernel developers use to put
180                  debugging files into. Enable this option to be able to read and
181                  write to these files.
182
183        config KERNEL_PROFILING
184                bool "Compile the kernel with profiling enabled"
185                default n
186                help
187                  Enable the extended profiling support mechanisms used by profilers such
188                  as OProfile.
189
190        config KERNEL_KALLSYMS
191                bool "Compile the kernel with symbol table information"
192                default n
193                help
194                  This will give you more information in stack traces from kernel oopses
195
196        config KERNEL_DEBUG_KERNEL
197                bool
198                default n
199
200        config KERNEL_DEBUG_INFO
201                bool "Compile the kernel with debug information"
202                default n
203                select KERNEL_DEBUG_KERNEL
204                help
205                  This will compile your kernel and modules with debug information.
206
207        config KERNEL_DEBUG_LL
208                bool
209                default n
210                depends on arm
211                help
212                  ARM low level debugging
213
214        config KERNEL_EARLY_PRINTK
215                bool "Compile the kernel with early printk"
216                default n
217                depends on arm
218                select KERNEL_DEBUG_KERNEL
219                select KERNEL_DEBUG_LL if arm
220                help
221                  Compile the kernel with early printk support.
222                  This is only useful for debugging purposes to send messages
223                  over the serial console in early boot.
224                  Enable this to debug early boot problems.
225
226        config KERNEL_AIO
227                bool "Compile the kernel with asynchronous IO support"
228                default n
229                help
230                  This will give you more information in stack traces from kernel oopses
231
232        comment "Package build options"
233
234        config DEBUG
235                bool
236                prompt "Compile packages with debugging info"
237                default n
238                help
239                  Adds -g3 to the CFLAGS
240
241        config IPV6
242                bool
243                prompt "Enable IPv6 support in packages"
244                default y
245                help
246                  Enable IPV6 support in packages (passes --enable-ipv6 to configure scripts).
247
248        config PKG_BUILD_PARALLEL
249                bool
250                prompt "Compile certain packages parallelized"
251                default n
252                help
253                  This adds a -jX option to certain packages that are known to
254                  behave well for parallel build.
255
256                  Note that this may overcommit CPU resources depending on the
257                  -j level of the main make process, the number of package
258                  submake jobs selected below and the number of actual CPUs present.
259                  Example: If the main make is passed a -j4 and the submake -j
260                  is also set to 4, we may end up with 16 parallel make processes
261                  in the worst case.
262
263                  You get maximum build performance, if you set the package build
264                  jobs to the number of CPUs (cores) available and also start the main
265                  make process with -jX, where X is the number of CPUs (cores).
266                  However, make sure you have enough RAM available for
267                  NR_CPUS to the power of two (NR_CPUS^2) make jobs.
268
269                  If you are unsure, select N.
270
271        config PKG_BUILD_JOBS
272                int
273                prompt "Number of package submake jobs (2-512)"
274                range 2 512
275                default 2
276                depends on PKG_BUILD_PARALLEL
277                help
278                  The number of jobs (-jX) to pass to packages submake.
279
280        config PKG_DEFAULT_PARALLEL
281                bool
282                prompt "Parallelize the default package build rule (May break build)"
283                depends on PKG_BUILD_PARALLEL
284                default n
285                help
286                  Always set the default package build rules to parallel build.
287
288                  WARNING: This may break build or kill your cat, as it builds
289                  packages with multiple jobs that are probably not tested in
290                  a parallel build environment.
291
292                  Only say Y, if you don't mind fixing broken packages.
293                  Before reporting build bugs, set this to N and re-run the build.
294
295        config TOOLCHAIN_PARALLEL
296                bool
297                prompt "Parallelize the toolchain build (May break build)"
298                depends on PKG_BUILD_PARALLEL
299                default n
300                help
301                  Build the toolchain with parallel make jobs.
302                  This speeds up the toolchain build on SMP machines, but may
303                  break the build for certain toolchain versions.
304
305                  If you say Y, toolchain build might break.
306                  Before reporting build bugs, set this to N and re-run the build.
307
308        comment "Stripping options"
309
310        choice
311                prompt "Binary stripping method"
312                default USE_STRIP   if EXTERNAL_TOOLCHAIN
313                default USE_STRIP   if USE_GLIBC || USE_EGLIBC
314                default USE_SSTRIP
315                help
316                  Select the binary stripping method you wish to use.
317
318                config NO_STRIP
319                        bool "none"
320                        help
321                          This will install unstripped binaries (useful for native compiling/debugging)
322
323                config USE_STRIP
324                        bool "strip"
325                        help
326                          This will install binaries stripped using strip from binutils
327
328
329                config USE_SSTRIP
330                        bool "sstrip"
331                        depends !DEBUG
332                        depends !USE_GLIBC
333                        depends !USE_EGLIBC
334                        help
335                          This will install binaries stripped using sstrip
336        endchoice
337
338        config STRIP_ARGS
339                string
340                prompt "Strip arguments"
341                depends USE_STRIP
342                default "--strip-unneeded --remove-section=.comment --remove-section=.note" if DEBUG
343                default "--strip-all"
344                help
345                  Specifies arguments passed to the strip command when stripping binaries
346
347        config STRIP_KERNEL_EXPORTS
348                bool "Strip unnecessary exports from the kernel image"
349                help
350                  Reduces kernel size by stripping unused kernel exports from the kernel image
351                  Note that this might make the kernel incompatible with any kernel modules that
352                  were not selected at the time the kernel image was created
353
354        config USE_MKLIBS
355                bool "Strip unnecessary functions from libraries"
356                help
357                  Reduces libraries to only those functions that are necessary for using all
358                  selected packages (including those selected as <M>)
359                  Note that this will make the system libraries incompatible with most of the packages
360                  that are not selected during the build process
361
362endmenu
363
364menuconfig DEVEL
365        bool "Advanced configuration options (for developers)"
366        default n
367
368        config BROKEN
369                bool "Show broken platforms / packages" if DEVEL
370                default n
371
372        config DOWNLOAD_FOLDER
373                string "Download folder" if DEVEL
374                default ""
375
376        config LOCALMIRROR
377                string "Local mirror for source packages" if DEVEL
378                default ""
379
380        config AUTOREBUILD
381                bool "Automatic rebuild of packages" if DEVEL
382                default y
383                help
384                  Automatically rebuild packages when their files change
385
386        config BUILD_SUFFIX
387                string "Build suffix to append to the BUILD_DIR variable" if DEVEL
388                default ""
389                help
390                  Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix
391
392        config TARGET_ROOTFS_DIR
393                string "Override the default TARGET_ROOTFS_DIR variable" if DEVEL
394                default ""
395                help
396                  Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with custom path.
397                  Use this option to re-define the location of the target root file system directory.
398
399        config CCACHE
400                bool "Use ccache" if DEVEL
401                default n
402                help
403                  Compiler cache; see http://ccache.samba.org/
404
405        config EXTERNAL_KERNEL_TREE
406                string "Use external kernel tree" if DEVEL
407                default ""
408
409        config KERNEL_GIT_CLONE_URI
410                string "Enter git repository to clone" if DEVEL
411                default ""
412                help
413                  Enter the full git repository path i.e.:
414                  git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
415                  This will create a git clone of the kernel in your build
416                  directory.
417
418        config KERNEL_GIT_LOCAL_REPOSITORY
419                string "Enter path to local reference repository" if DEVEL
420                default ""
421                help
422                  Enter a full pathname to a local reference git repository.
423                  In this instance, the --refererence option of git clone will
424                  be used thus creating a quick local clone of your repo.
425
426menuconfig TARGET_OPTIONS
427        bool "Target Options"  if DEVEL
428
429        config TARGET_OPTIMIZATION
430                string "Target Optimizations" if TARGET_OPTIONS
431                default DEFAULT_TARGET_OPTIMIZATION
432                help
433                  Optimizations to use when building for the target host.
434
435        config SOFT_FLOAT
436                bool "Use software floating point by default" if TARGET_OPTIONS
437                default y
438                depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU
439                help
440                  If your target CPU does not have a Floating Point Unit (FPU) or a
441                  kernel FPU emulator, but you still wish to support floating point
442                  functions, then everything will need to be compiled with soft floating
443                  point support (-msoft-float).
444
445                  Most people will answer N.
446
447source "toolchain/Config.in"
448
449source "target/imagebuilder/Config.in"
450source "target/sdk/Config.in"
451source "target/toolchain/Config.in"
452
453source "tmp/.config-package.in"
Note: See TracBrowser for help on using the repository browser.