procd: update to latest git revision
[openwrt.git] / Config.in
1 # Copyright (C) 2006-2012 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 MODULES
10         bool
11         default y
12
13 config HAVE_DOT_CONFIG
14         bool
15         default y
16
17 source "target/Config.in"
18
19 menu "Target Images"
20
21         menuconfig TARGET_ROOTFS_INITRAMFS
22                 bool "ramdisk"
23                 default y if USES_INITRAMFS
24                 help
25                   Embed the rootfs into the kernel (initramfs)
26
27                 choice
28                         prompt "Compression"
29                         default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
30                         default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
31                         default TARGET_INITRAMFS_COMPRESSION_NONE
32                         depends on TARGET_ROOTFS_INITRAMFS
33                         help
34                           Select ramdisk compression.
35
36                         config TARGET_INITRAMFS_COMPRESSION_NONE
37                                 bool "none"
38
39                         config TARGET_INITRAMFS_COMPRESSION_GZIP
40                                 bool "gzip"
41
42                         config TARGET_INITRAMFS_COMPRESSION_BZIP2
43                                 bool "bzip2"
44
45                         config TARGET_INITRAMFS_COMPRESSION_LZMA
46                                 bool "lzma"
47
48                         config TARGET_INITRAMFS_COMPRESSION_LZO
49                                 bool "lzo"
50
51                         config TARGET_INITRAMFS_COMPRESSION_XZ
52                                 bool "xz"
53                 endchoice
54
55                 config EXTERNAL_CPIO
56                         string
57                         prompt "Use external cpio" if TARGET_ROOTFS_INITRAMFS
58                         default ""
59                         help
60                           Kernel uses specified external cpio as INITRAMFS_SOURCE
61
62         comment "Root filesystem archives"
63
64         config TARGET_ROOTFS_CPIOGZ
65                 bool "cpio.gz"
66                 default y if USES_CPIOGZ
67                 help
68                   Build a compressed cpio archive of the the root filesystem
69
70         config TARGET_ROOTFS_TARGZ
71                 bool "tar.gz"
72                 default y if USES_TARGZ
73                 help
74                   Build a compressed tar archive of the the root filesystem
75
76         comment "Root filesystem images"
77
78         config TARGET_ROOTFS_EXT4FS
79                 bool "ext4"
80                 default y if USES_EXT4
81                 help
82                   Ext4 file system with some free space for uml images
83
84         config TARGET_ROOTFS_ISO
85                 bool "iso"
86                 default n
87                 depends on TARGET_x86_generic
88                 help
89                   Create some bootable ISO image
90
91         config TARGET_ROOTFS_JFFS2
92                 bool "jffs2"
93                 default y if USES_JFFS2
94                 help
95                   Build a jffs2 root filesystem
96
97         config TARGET_ROOTFS_JFFS2_NAND
98                 bool "jffs2 for NAND"
99                 default y if USES_JFFS2_NAND
100                 depends on USES_JFFS2_NAND
101                 help
102                   Build a jffs2 root filesystem for NAND flash
103
104         config TARGET_ROOTFS_SQUASHFS
105                 bool "squashfs"
106                 default y if USES_SQUASHFS
107                 help
108                   Build a squashfs-lzma root filesystem
109
110         config TARGET_ROOTFS_UBIFS
111                 bool "ubifs"
112                 default y if USES_UBIFS
113                 depends on USES_UBIFS
114                 help
115                   Build a ubifs root filesystem
116
117         comment "Image Options"
118
119         source "target/linux/*/image/Config.in"
120
121         config TARGET_ROOTFS_PARTSIZE
122                 int "Root filesystem partition size (in MB)"
123                 depends on X86_GRUB_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532
124                 default 48
125                 help
126                   Allows you to change the root filesystem partition size
127
128         config TARGET_ROOTFS_MAXINODE
129                 int "Maximum number of inodes in root filesystem"
130                 depends on TARGET_ROOTFS_EXT4FS
131                 default 6000
132                 help
133                   Allows you to change the maximum number of inodes in the root filesystem
134
135         config TARGET_ROOTFS_RESERVED_PCT
136                 int "Percentage of reserved blocks in root filesystem"
137                 depends on TARGET_ROOTFS_EXT4FS
138                 default 0
139                 help
140                   Allows you to change the percentage of reserved blocks in the root filesystem
141
142 endmenu
143
144 menu "Global build settings"
145
146         config ALL
147                 bool "Select all packages by default"
148                 default n
149
150         comment "General build options"
151
152         config DISPLAY_SUPPORT
153                 bool "Show packages that require graphics support (local or remote)"
154                 default n
155
156         config BUILD_PATENTED
157                 default y
158                 bool "Compile with support for patented functionality"
159                 help
160                   When this option is disabled, software which provides patented functionality will not be built.
161                   In case software provides optional support for patented functionality,
162                   this optional support will get disabled for this package.
163
164         config BUILD_NLS
165                 default n
166                 bool "Compile with full language support"
167                 help
168                   When this option is enabled, packages are built with the full versions of iconv and GNU gettext
169                   instead of the default OpenWrt stubs. If uClibc is used, it is also built with locale support.
170
171         config BUILD_STATIC_TOOLS
172                 default n
173                 bool "Attempt to link host utilities statically"
174                 help
175                   Linking host utilities like sed or firmware-utils statically increases the portability of the
176                   generated ImageBuilder and SDK tarballs, however it may fail on some Linux distributions.
177
178         config SHADOW_PASSWORDS
179                 bool
180                 prompt "Enable shadow password support"
181                 default y
182                 help
183                   Enable shadow password support.
184
185         config CLEAN_IPKG
186                 bool
187                 prompt "Remove ipkg/opkg status data files in final images"
188                 default n
189                 help
190                   This removes all ipkg/opkg status data files from the target directory before building the root fs
191
192         config COLLECT_KERNEL_DEBUG
193                 bool
194                 prompt "Collect kernel debug information"
195                 select KERNEL_DEBUG_INFO
196                 default n
197                 help
198                   This collects debugging symbols from the kernel and all compiled modules.
199                   Useful for release builds, so that kernel issues can be debugged offline later.
200
201         comment "Kernel build options"
202
203         config KERNEL_DEBUG_FS
204                 bool "Compile the kernel with Debug FileSystem enabled"
205                 default y
206                 help
207                   debugfs is a virtual file system that kernel developers use to put
208                   debugging files into. Enable this option to be able to read and
209                   write to these files.
210
211         config KERNEL_PERF_EVENTS
212                 bool
213                 default n
214
215         config KERNEL_PROFILING
216                 bool "Compile the kernel with profiling enabled"
217                 default n
218                 select KERNEL_PERF_EVENTS
219                 help
220                   Enable the extended profiling support mechanisms used by profilers such
221                   as OProfile.
222
223         config KERNEL_KALLSYMS
224                 bool "Compile the kernel with symbol table information"
225                 default y
226                 help
227                   This will give you more information in stack traces from kernel oopses
228
229         config KERNEL_FTRACE
230                 bool "Compile the kernel with tracing support"
231                 default n
232
233         config KERNEL_FTRACE_SYSCALLS
234                 bool "Trace system calls"
235                 depends on KERNEL_FTRACE
236                 default n
237
238         config KERNEL_ENABLE_DEFAULT_TRACERS
239                 bool "Trace process context switches and events"
240                 depends on KERNEL_FTRACE
241                 default n
242
243         config KERNEL_DEBUG_KERNEL
244                 bool
245                 default n
246
247         config KERNEL_DEBUG_INFO
248                 bool "Compile the kernel with debug information"
249                 default y
250                 select KERNEL_DEBUG_KERNEL
251                 help
252                   This will compile your kernel and modules with debug information.
253
254         config KERNEL_DEBUG_LL_UART_NONE
255                 bool
256                 default n
257                 depends on arm
258
259         config KERNEL_DEBUG_LL
260                 bool
261                 default n
262                 depends on arm
263                 select KERNEL_DEBUG_LL_UART_NONE
264                 help
265                   ARM low level debugging
266
267         config KERNEL_EARLY_PRINTK
268                 bool "Compile the kernel with early printk"
269                 default n
270                 depends on arm
271                 select KERNEL_DEBUG_KERNEL
272                 select KERNEL_DEBUG_LL if arm
273                 help
274                   Compile the kernel with early printk support.
275                   This is only useful for debugging purposes to send messages
276                   over the serial console in early boot.
277                   Enable this to debug early boot problems.
278
279         config KERNEL_AIO
280                 bool "Compile the kernel with asynchronous IO support"
281                 default n
282
283         config KERNEL_DIRECT_IO
284                 bool "Compile the kernel with direct IO support"
285                 default n
286
287         config KERNEL_MAGIC_SYSRQ
288                 bool "Compile the kernel with SysRq support"
289                 default y
290
291         config KERNEL_COREDUMP
292                 bool
293
294         config KERNEL_ELF_CORE
295                 bool "Enable process core dump support"
296                 select KERNEL_COREDUMP
297                 default y
298
299         config KERNEL_PROVE_LOCKING
300                 bool "Enable kernel lock checking"
301                 select KERNEL_DEBUG_KERNEL
302                 default n
303
304         config KERNEL_PRINTK_TIME
305                 bool "Enable printk timestamps"
306                 default y
307
308         config KERNEL_RELAY
309                 bool
310
311         config KERNEL_KEXEC
312                 bool "Enable kexec support"
313
314         #
315         # CGROUP support symbols
316         #
317
318         config KERNEL_CGROUPS
319                 bool "Enable kernel cgroups"
320                 default n
321
322         if KERNEL_CGROUPS
323
324                 config KERNEL_CGROUP_DEBUG
325                         bool "Example debug cgroup subsystem"
326                         default n
327                         help
328                           This option enables a simple cgroup subsystem that
329                           exports useful debugging information about the cgroups
330                           framework.
331
332                 config KERNEL_FREEZER
333                         bool
334                         default y if KERNEL_CGROUP_FREEZER
335
336                 config KERNEL_CGROUP_FREEZER
337                         bool "Freezer cgroup subsystem"
338                         default n
339                         help
340                           Provides a way to freeze and unfreeze all tasks in a
341                           cgroup.
342
343                 config KERNEL_CGROUP_DEVICE
344                         bool "Device controller for cgroups"
345                         default y
346                         help
347                           Provides a cgroup implementing whitelists for devices which
348                           a process in the cgroup can mknod or open.
349
350                 config KERNEL_CPUSETS
351                         bool "Cpuset support"
352                         default n
353                         help
354                           This option will let you create and manage CPUSETs which
355                           allow dynamically partitioning a system into sets of CPUs and
356                           Memory Nodes and assigning tasks to run only within those sets.
357                           This is primarily useful on large SMP or NUMA systems.
358
359                 config KERNEL_PROC_PID_CPUSET
360                         bool "Include legacy /proc/<pid>/cpuset file"
361                         default n
362                         depends on KERNEL_CPUSETS
363
364                 config KERNEL_CGROUP_CPUACCT
365                         bool "Simple CPU accounting cgroup subsystem"
366                         default n
367                         help
368                           Provides a simple Resource Controller for monitoring the
369                           total CPU consumed by the tasks in a cgroup.
370
371                 config KERNEL_RESOURCE_COUNTERS
372                         bool "Resource counters"
373                         default n
374                         help
375                           This option enables controller independent resource accounting
376                           infrastructure that works with cgroups.
377
378                 config KERNEL_MM_OWNER
379                         bool
380                         default y if KERNEL_MEMCG
381
382                 config KERNEL_MEMCG
383                         bool "Memory Resource Controller for Control Groups"
384                         default n
385                         depends on KERNEL_RESOURCE_COUNTERS
386                         help
387                           Provides a memory resource controller that manages both anonymous
388                           memory and page cache. (See Documentation/cgroups/memory.txt)
389
390                           Note that setting this option increases fixed memory overhead
391                           associated with each page of memory in the system. By this,
392                           20(40)bytes/PAGE_SIZE on 32(64)bit system will be occupied by memory
393                           usage tracking struct at boot. Total amount of this is printed out
394                           at boot.
395
396                           Only enable when you're ok with these trade offs and really
397                           sure you need the memory resource controller. Even when you enable
398                           this, you can set "cgroup_disable=memory" at your boot option to
399                           disable memory resource controller and you can avoid overheads.
400                           (and lose benefits of memory resource controller)
401
402                           This config option also selects MM_OWNER config option, which
403                           could in turn add some fork/exit overhead.
404
405                 config KERNEL_MEMCG_SWAP
406                         bool "Memory Resource Controller Swap Extension"
407                         default n
408                         depends on KERNEL_MEMCG
409                         help
410                           Add swap management feature to memory resource controller. When you
411                           enable this, you can limit mem+swap usage per cgroup. In other words,
412                           when you disable this, memory resource controller has no cares to
413                           usage of swap...a process can exhaust all of the swap. This extension
414                           is useful when you want to avoid exhaustion swap but this itself
415                           adds more overheads and consumes memory for remembering information.
416                           Especially if you use 32bit system or small memory system, please
417                           be careful about enabling this. When memory resource controller
418                           is disabled by boot option, this will be automatically disabled and
419                           there will be no overhead from this. Even when you set this config=y,
420                           if boot option "swapaccount=0" is set, swap will not be accounted.
421                           Now, memory usage of swap_cgroup is 2 bytes per entry. If swap page
422                           size is 4096bytes, 512k per 1Gbytes of swap.
423
424                 config KERNEL_MEMCG_SWAP_ENABLED
425                         bool "Memory Resource Controller Swap Extension enabled by default"
426                         default n
427                         depends on KERNEL_MEMCG_SWAP
428                         help
429                           Memory Resource Controller Swap Extension comes with its price in
430                           a bigger memory consumption. General purpose distribution kernels
431                           which want to enable the feature but keep it disabled by default
432                           and let the user enable it by swapaccount boot command line
433                           parameter should have this option unselected.
434                           For those who want to have the feature enabled by default should
435                           select this option (if, for some reason, they need to disable it
436                           then swapaccount=0 does the trick).
437
438
439                 config KERNEL_MEMCG_KMEM
440                         bool "Memory Resource Controller Kernel Memory accounting (EXPERIMENTAL)"
441                         default n
442                         depends on KERNEL_MEMCG
443                         help
444                           The Kernel Memory extension for Memory Resource Controller can limit
445                           the amount of memory used by kernel objects in the system. Those are
446                           fundamentally different from the entities handled by the standard
447                           Memory Controller, which are page-based, and can be swapped. Users of
448                           the kmem extension can use it to guarantee that no group of processes
449                           will ever exhaust kernel resources alone.
450
451                 config KERNEL_CGROUP_PERF
452                         bool "Enable perf_event per-cpu per-container group (cgroup) monitoring"
453                         default n
454                         select KERNEL_PERF_EVENTS
455                         help
456                           This option extends the per-cpu mode to restrict monitoring to
457                           threads which belong to the cgroup specified and run on the
458                           designated cpu.
459
460                 menuconfig KERNEL_CGROUP_SCHED
461                         bool "Group CPU scheduler"
462                         default n
463                         help
464                           This feature lets CPU scheduler recognize task groups and control CPU
465                           bandwidth allocation to such task groups. It uses cgroups to group
466                           tasks.
467
468                 if KERNEL_CGROUP_SCHED
469
470                         config KERNEL_FAIR_GROUP_SCHED
471                                 bool "Group scheduling for SCHED_OTHER"
472                                 default n
473
474                         config KERNEL_CFS_BANDWIDTH
475                                 bool "CPU bandwidth provisioning for FAIR_GROUP_SCHED"
476                                 default n
477                                 depends on KERNEL_FAIR_GROUP_SCHED
478                                 help
479                                   This option allows users to define CPU bandwidth rates (limits) for
480                                   tasks running within the fair group scheduler.  Groups with no limit
481                                   set are considered to be unconstrained and will run with no
482                                   restriction.
483                                   See tip/Documentation/scheduler/sched-bwc.txt for more information.
484
485                         config KERNEL_RT_GROUP_SCHED
486                                 bool "Group scheduling for SCHED_RR/FIFO"
487                                 default n
488                                 help
489                                   This feature lets you explicitly allocate real CPU bandwidth
490                                   to task groups. If enabled, it will also make it impossible to
491                                   schedule realtime tasks for non-root users until you allocate
492                                   realtime bandwidth for them.
493
494                 endif
495
496                 config KERNEL_BLK_CGROUP
497                         bool "Block IO controller"
498                         default y
499                         help
500                           Generic block IO controller cgroup interface. This is the common
501                           cgroup interface which should be used by various IO controlling
502                           policies.
503
504                           Currently, CFQ IO scheduler uses it to recognize task groups and
505                           control disk bandwidth allocation (proportional time slice allocation)
506                           to such task groups. It is also used by bio throttling logic in
507                           block layer to implement upper limit in IO rates on a device.
508
509                           This option only enables generic Block IO controller infrastructure.
510                           One needs to also enable actual IO controlling logic/policy. For
511                           enabling proportional weight division of disk bandwidth in CFQ, set
512                           CONFIG_CFQ_GROUP_IOSCHED=y; for enabling throttling policy, set
513                           CONFIG_BLK_DEV_THROTTLING=y.
514
515                 config KERNEL_DEBUG_BLK_CGROUP
516                         bool "Enable Block IO controller debugging"
517                         default n
518                         depends on KERNEL_BLK_CGROUP
519                         help
520                           Enable some debugging help. Currently it exports additional stat
521                           files in a cgroup which can be useful for debugging.
522
523                 config KERNEL_NET_CLS_CGROUP
524                         bool "Control Group Classifier"
525                         default y
526
527                 config KERNEL_NETPRIO_CGROUP
528                         bool "Network priority cgroup"
529                         default y
530
531         endif
532
533         #
534         # Namespace support symbols
535         #
536
537         config KERNEL_NAMESPACES
538                 bool "Enable kernel namespaces"
539                 default n
540
541         if KERNEL_NAMESPACES
542
543                 config KERNEL_UTS_NS
544                         bool "UTS namespace"
545                         default y
546                         help
547                           In this namespace tasks see different info provided
548                           with the uname() system call
549
550                 config KERNEL_IPC_NS
551                         bool "IPC namespace"
552                         default y
553                         help
554                           In this namespace tasks work with IPC ids which correspond to
555                           different IPC objects in different namespaces.
556
557                 config KERNEL_USER_NS
558                         bool "User namespace (EXPERIMENTAL)"
559                         default y
560                         help
561                           This allows containers, i.e. vservers, to use user namespaces
562                           to provide different user info for different servers.
563
564                 config KERNEL_PID_NS
565                         bool "PID Namespaces"
566                         default y
567                         help
568                           Support process id namespaces. This allows having multiple
569                           processes with the same pid as long as they are in different
570                           pid namespaces. This is a building block of containers.
571
572                 config KERNEL_NET_NS
573                         bool "Network namespace"
574                         default y
575                         help
576                           Allow user space to create what appear to be multiple instances
577                           of the network stack.
578
579         endif
580
581         #
582         # LXC related symbols
583         #
584
585         config KERNEL_LXC_MISC
586                 bool "Enable miscellaneous LXC related options"
587                 default n
588
589         if KERNEL_LXC_MISC
590
591                 config KERNEL_DEVPTS_MULTIPLE_INSTANCES
592                         bool "Support multiple instances of devpts"
593                         default y
594                         help
595                           Enable support for multiple instances of devpts filesystem.
596                           If you want to have isolated PTY namespaces (eg: in containers),
597                           say Y here. Otherwise, say N. If enabled, each mount of devpts
598                           filesystem with the '-o newinstance' option will create an
599                           independent PTY namespace.
600
601                 config KERNEL_POSIX_MQUEUE
602                         bool "POSIX Message Queues"
603                         default n
604                         help
605                           POSIX variant of message queues is a part of IPC. In POSIX message
606                           queues every message has a priority which decides about succession
607                           of receiving it by a process. If you want to compile and run
608                           programs written e.g. for Solaris with use of its POSIX message
609                           queues (functions mq_*) say Y here.
610
611                           POSIX message queues are visible as a filesystem called 'mqueue'
612                           and can be mounted somewhere if you want to do filesystem
613                           operations on message queues.
614
615         endif
616
617         comment "Package build options"
618
619         config DEBUG
620                 bool
621                 prompt "Compile packages with debugging info"
622                 default n
623                 help
624                   Adds -g3 to the CFLAGS
625
626         config IPV6
627                 bool
628                 prompt "Enable IPv6 support in packages"
629                 default y
630                 help
631                   Enable IPV6 support in packages (passes --enable-ipv6 to configure scripts).
632
633         config PKG_BUILD_PARALLEL
634                 bool
635                 prompt "Compile certain packages parallelized"
636                 default y
637                 help
638                   This adds a -jX option to certain packages that are known to
639                   behave well for parallel build. By default the package make processes
640                   use the main jobserver, in which case this option only takes effect
641                   when you add -jX to the make command.
642
643                   If you are unsure, select N.
644
645         config PKG_BUILD_USE_JOBSERVER
646                 bool
647                 prompt "Use top-level make jobserver for packages"
648                 depends on PKG_BUILD_PARALLEL
649                 default y
650                 help
651                   This passes the main make process jobserver fds to package builds,
652                   enabling full parallelization across different packages
653
654                   Note that disabling this may overcommit CPU resources depending on the
655                   -j level of the main make process, the number of package
656                   submake jobs selected below and the number of actual CPUs present.
657                   Example: If the main make is passed a -j4 and the submake -j
658                   is also set to 4, we may end up with 16 parallel make processes
659                   in the worst case.
660
661
662         config PKG_BUILD_JOBS
663                 int
664                 prompt "Number of package submake jobs (2-512)"
665                 range 2 512
666                 default 2
667                 depends on PKG_BUILD_PARALLEL && !PKG_BUILD_USE_JOBSERVER
668                 help
669                   The number of jobs (-jX) to pass to packages submake.
670
671         config PKG_DEFAULT_PARALLEL
672                 bool
673                 prompt "Parallelize the default package build rule (May break build)"
674                 depends on PKG_BUILD_PARALLEL
675                 depends on BROKEN
676                 default n
677                 help
678                   Always set the default package build rules to parallel build.
679
680                   WARNING: This may break build or kill your cat, as it builds
681                   packages with multiple jobs that are probably not tested in
682                   a parallel build environment.
683
684                   Only say Y, if you don't mind fixing broken packages.
685                   Before reporting build bugs, set this to N and re-run the build.
686
687         comment "Stripping options"
688
689         choice
690                 prompt "Binary stripping method"
691                 default USE_STRIP   if EXTERNAL_TOOLCHAIN
692                 default USE_STRIP   if USE_GLIBC || USE_EGLIBC || USE_MUSL
693                 default USE_SSTRIP
694                 help
695                   Select the binary stripping method you wish to use.
696
697                 config NO_STRIP
698                         bool "none"
699                         help
700                           This will install unstripped binaries (useful for native compiling/debugging)
701
702                 config USE_STRIP
703                         bool "strip"
704                         help
705                           This will install binaries stripped using strip from binutils
706
707
708                 config USE_SSTRIP
709                         bool "sstrip"
710                         depends on !DEBUG
711                         depends on !USE_GLIBC
712                         depends on !USE_EGLIBC
713                         help
714                           This will install binaries stripped using sstrip
715         endchoice
716
717         config STRIP_ARGS
718                 string
719                 prompt "Strip arguments"
720                 depends on USE_STRIP
721                 default "--strip-unneeded --remove-section=.comment --remove-section=.note" if DEBUG
722                 default "--strip-all"
723                 help
724                   Specifies arguments passed to the strip command when stripping binaries
725
726         config STRIP_KERNEL_EXPORTS
727                 bool "Strip unnecessary exports from the kernel image"
728                 help
729                   Reduces kernel size by stripping unused kernel exports from the kernel image
730                   Note that this might make the kernel incompatible with any kernel modules that
731                   were not selected at the time the kernel image was created
732
733         config USE_MKLIBS
734                 bool "Strip unnecessary functions from libraries"
735                 help
736                   Reduces libraries to only those functions that are necessary for using all
737                   selected packages (including those selected as <M>)
738                   Note that this will make the system libraries incompatible with most of the packages
739                   that are not selected during the build process
740
741         choice
742                 prompt "Preferred standard C++ library"
743                 default USE_LIBSTDCXX if USE_EGLIBC
744                 default USE_UCLIBCXX
745                 help
746                   Select the preferred standard C++ library for all packages that support this.
747
748                 config USE_UCLIBCXX
749                         bool "uClibc++"
750
751                 config USE_LIBSTDCXX
752                         bool "libstdc++"
753         endchoice
754
755 endmenu
756
757 menuconfig DEVEL
758         bool "Advanced configuration options (for developers)"
759         default n
760
761         config BROKEN
762                 bool "Show broken platforms / packages" if DEVEL
763                 default n
764
765         config DOWNLOAD_FOLDER
766                 string "Download folder" if DEVEL
767                 default ""
768
769         config LOCALMIRROR
770                 string "Local mirror for source packages" if DEVEL
771                 default ""
772
773         config AUTOREBUILD
774                 bool "Automatic rebuild of packages" if DEVEL
775                 default y
776                 help
777                   Automatically rebuild packages when their files change
778
779         config BUILD_SUFFIX
780                 string "Build suffix to append to the BUILD_DIR variable" if DEVEL
781                 default ""
782                 help
783                   Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix
784
785         config TARGET_ROOTFS_DIR
786                 string "Override the default TARGET_ROOTFS_DIR variable" if DEVEL
787                 default ""
788                 help
789                   Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with custom path.
790                   Use this option to re-define the location of the target root file system directory.
791
792         config CCACHE
793                 bool "Use ccache" if DEVEL
794                 default n
795                 help
796                   Compiler cache; see http://ccache.samba.org/
797
798         config EXTERNAL_KERNEL_TREE
799                 string "Use external kernel tree" if DEVEL
800                 default ""
801
802         config KERNEL_GIT_CLONE_URI
803                 string "Enter git repository to clone" if DEVEL
804                 default ""
805                 help
806                   Enter the full git repository path i.e.:
807                   git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
808                   This will create a git clone of the kernel in your build
809                   directory.
810
811         config KERNEL_GIT_LOCAL_REPOSITORY
812                 string "Enter path to local reference repository" if DEVEL
813                 default ""
814                 help
815                   Enter a full pathname to a local reference git repository.
816                   In this instance, the --refererence option of git clone will
817                   be used thus creating a quick local clone of your repo.
818
819         config BUILD_LOG
820                 bool "Enable log files during build process" if DEVEL
821                 help
822                   If enabled log files will be written to the ./log directory
823
824         config SRC_TREE_OVERRIDE
825                 bool "Enable package source tree override" if DEVEL
826                 help
827                   If enabled, you can force a package to use a git tree as source
828                   code instead of the normal tarball. Create a symlink 'git-src'
829                   in the package directory, pointing to the .git tree that you want
830                   to pull the source code from
831
832 menuconfig TARGET_OPTIONS
833         bool "Target Options"  if DEVEL
834
835         config TARGET_OPTIMIZATION
836                 string "Target Optimizations" if TARGET_OPTIONS
837                 default DEFAULT_TARGET_OPTIMIZATION
838                 help
839                   Optimizations to use when building for the target host.
840
841         config SOFT_FLOAT
842                 bool "Use software floating point by default" if TARGET_OPTIONS
843                 default y
844                 depends on (arm || armeb || powerpc || mipsel || mips || mips64el || mips64) && !HAS_FPU
845                 help
846                   If your target CPU does not have a Floating Point Unit (FPU) or a
847                   kernel FPU emulator, but you still wish to support floating point
848                   functions, then everything will need to be compiled with soft floating
849                   point support (-msoft-float).
850
851                   Most people will answer N.
852
853         config USE_MIPS16
854                 bool "Build packages with MIPS16 instructions" if TARGET_OPTIONS
855                 depends on HAS_MIPS16
856                 help
857                   If your target CPU does support the MIPS16 instruction set
858                   and you want to use it for packages, enable this option.
859                   MIPS16 produces smaller binaries thus reducing pressure on
860                   caches and TLB.
861
862                   Most people will answer N.
863
864 source "toolchain/Config.in"
865
866 source "target/imagebuilder/Config.in"
867 source "target/sdk/Config.in"
868 source "target/toolchain/Config.in"
869
870 source "tmp/.config-package.in"