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