OSDN Git Service

Fix phony dependency
[android-x86/external-toybox.git] / Config.in
1 mainmenu "Toybox Configuration"
2
3
4 source generated/Config.probed
5 source generated/Config.in
6
7 comment ""
8
9 menu "Toybox global settings"
10
11 # This entry controls the multiplexer, disabled for single command builds
12 config TOYBOX
13         bool
14         default y
15         help
16           usage: toybox [--long | --version | [command] [arguments...]]
17
18           With no arguments, shows available commands. First argument is
19           name of a command to run, followed by any arguments to that command.
20
21           --long        Show path to each command
22           --version     Show toybox version
23
24           To install command symlinks, try:
25             for i in $(/bin/toybox --long); do ln -s /bin/toybox $i; done
26
27 config TOYBOX_SUID
28         bool "SUID support"
29         default y
30         help
31           Support for the Set User ID bit, to install toybox suid root and drop
32           permissions for commands which do not require root access. To use
33           this change ownership of the file to the root user and set the suid
34           bit in the file permissions:
35
36           chown root:root toybox; chmod +s toybox
37
38 choice
39         prompt "Security Blanket"
40         default TOYBOX_LSM_NONE
41         help
42           Select a Linux Security Module to complicate your system
43           until you can't find holes in it.
44
45 config TOYBOX_LSM_NONE
46         bool "None"
47         help
48           Don't try to achieve "watertight" by plugging the holes in a
49           collander, instead use conventional unix security (and possibly
50           Linux Containers) for a simple straightforward system.
51           
52 config TOYBOX_SELINUX
53         bool "SELinux support"
54         help
55           Include SELinux options in commands such as ls, and add
56           SELinux-specific commands such as chcon to the Android menu.
57
58 config TOYBOX_SMACK
59         bool "SMACK support"
60         help
61           Include SMACK options in commands like ls for systems like Tizen.
62
63 endchoice
64
65 config TOYBOX_FLOAT
66         bool "Floating point support"
67         default y
68         help
69           Include floating point support infrastructure and commands that
70           require it.
71
72 config TOYBOX_HELP
73         bool "Help messages"
74         default y
75         help
76           Include help text for each command.
77
78 config TOYBOX_HELP_DASHDASH
79         bool "--help"
80         default y
81         depends on TOYBOX_HELP
82         help
83           Support --help argument in all commands, even ones with a NULL
84           optstring. Produces the same output as "help command".
85
86 config TOYBOX_I18N
87         bool "Internationalization support"
88         default y
89         help
90           Support for UTF-8 character sets, and some locale support.
91
92 config TOYBOX_FREE
93         bool "Free memory unnecessarily"
94         default n
95         help
96           When a program exits, the operating system will clean up after it
97           (free memory, close files, etc). To save size, toybox usually relies
98           on this behavior. If you're running toybox under a debugger or
99           without a real OS (ala newlib+libgloss), enable this to make toybox
100           clean up after itself.
101
102 config TOYBOX_NORECURSE
103         bool "Disable recursive execution"
104         default n
105         help
106           When one toybox command calls another, usually it just calls the new
107           command's main() function rather than searching the $PATH and calling
108           exec on another file (which is much slower).
109
110           This disables that optimization, so toybox will run external commands
111           even when it has a built-in version of that command. This requires
112           toybox symlinks to be installed in the $PATH, or re-invoking the
113           "toybox" multiplexer command by name.
114
115 config TOYBOX_DEBUG
116         bool "Debugging tests"
117         default n
118         help
119           Enable extra checks for debugging purposes. All of them catch
120           things that can only go wrong at development time, not runtime.
121
122 config TOYBOX_UID_SYS
123         int "First system UID"
124         default 100
125         help
126           When commands like useradd/groupadd allocate system IDs, start here.
127
128 config TOYBOX_UID_USR
129         int "First user UID"
130         default 500
131         help
132           When commands like useradd/groupadd allocate user IDs, start here.
133
134 config TOYBOX_MUSL_NOMMU_IS_BROKEN
135         bool "Workaround for musl-libc breakage on nommu systems."
136         default n
137         help
138           When using musl-libc on a nommu system, you'll need to say "y" here.
139
140           Although uclibc lets you detect support for things like fork() and
141           daemon() at compile time, musl intentionally includes broken versions
142           that always return -ENOSYS on nommu systems, and goes out of its way
143           to prevent any cross-compile compatible compile-time probes for a
144           nommu system.
145
146           Musl does this despite the fact that a nommu system can't even run
147           standard ELF binaries, and requires specially packaged executables.
148           (You can't even check a #define to see that you're building against
149           musl, due to its maintainer's policy that musl never has bugs that
150           require workarounds.)
151
152           So our only choice is to manually provide a musl nommu bug workaround
153           you can manually select to enable (larger, slower) nommu support with
154           musl.
155
156           You don't need this for uClibc, we have a compile time probe that
157           autodetects nommu support there.
158
159 endmenu