]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blob - system/Config.in
Rename BR2_PREFER_STATIC_LIB to BR2_STATIC_LIBS
[coffee/buildroot.git] / system / Config.in
1 menu "System configuration"
2
3 config BR2_TARGET_GENERIC_HOSTNAME
4         string "System hostname"
5         default "buildroot"
6         help
7           Select system hostname to be stored in /etc/hostname.
8
9           Leave empty to not create /etc/hostname, or to keep the
10           one from a custom skeleton.
11
12 config BR2_TARGET_GENERIC_ISSUE
13         string "System banner"
14         default "Welcome to Buildroot"
15         help
16           Select system banner (/etc/issue) to be displayed at login.
17
18           Leave empty to not create /etc/issue, or to keep the
19           one from a custom skeleton.
20
21 choice
22         bool "Passwords encoding"
23         default BR2_TARGET_GENERIC_PASSWD_MD5
24         help
25           Choose the password encoding scheme to use when Buildroot
26           needs to encode a password (eg. the root password, below).
27
28           Note: this is used at build-time, and *not* at runtime.
29
30 config BR2_TARGET_GENERIC_PASSWD_DES
31         bool "des"
32         help
33           Use standard 56-bit DES-based crypt(3) to encode passwords.
34
35           Old, wildly available, but also the weakest, very susceptible to
36           brute-force attacks.
37
38 config BR2_TARGET_GENERIC_PASSWD_MD5
39         bool "md5"
40         help
41           Use MD5 to encode passwords.
42
43           The default. Wildly available, and pretty good.
44           Although pretty strong, MD5 is now an old hash function, and
45           suffers from some weaknesses, which makes it susceptible to
46           brute-force attacks.
47
48 config BR2_TARGET_GENERIC_PASSWD_SHA256
49         bool "sha-256"
50         help
51           Use SHA256 to encode passwords.
52
53           Very strong, but not ubiquitous, although available in glibc
54           for some time now. Choose only if you are sure your C library
55           understands SHA256 passwords.
56
57 config BR2_TARGET_GENERIC_PASSWD_SHA512
58         bool "sha-512"
59         help
60           Use SHA512 to encode passwords.
61
62           Extremely strong, but not ubiquitous, although available in glibc
63           for some time now. Choose only if you are sure your C library
64           understands SHA512 passwords.
65
66 endchoice # Passwd encoding
67
68 config BR2_TARGET_GENERIC_PASSWD_METHOD
69         string
70         default "des"       if BR2_TARGET_GENERIC_PASSWD_DES
71         default "md5"       if BR2_TARGET_GENERIC_PASSWD_MD5
72         default "sha-256"   if BR2_TARGET_GENERIC_PASSWD_SHA256
73         default "sha-512"   if BR2_TARGET_GENERIC_PASSWD_SHA512
74
75 choice
76         prompt "Init system"
77         default BR2_INIT_BUSYBOX
78
79 config BR2_INIT_BUSYBOX
80         bool "BusyBox"
81         select BR2_PACKAGE_BUSYBOX
82
83 config BR2_INIT_SYSV
84         bool "systemV"
85         select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # sysvinit
86         select BR2_PACKAGE_SYSVINIT
87
88 config BR2_INIT_SYSTEMD
89         bool "systemd"
90         depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS
91         depends on BR2_TOOLCHAIN_USES_GLIBC
92         depends on BR2_LARGEFILE
93         depends on BR2_USE_WCHAR
94         depends on BR2_INET_IPV6
95         depends on BR2_TOOLCHAIN_HAS_THREADS
96         depends on BR2_TOOLCHAIN_HAS_SSP
97         depends on BR2_USE_MMU
98         depends on !BR2_STATIC_LIBS
99         depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
100         select BR2_PACKAGE_SYSTEMD
101
102 comment 'systemd needs an (e)glibc toolchain, headers >= 3.7'
103         depends on !(BR2_TOOLCHAIN_USES_GLIBC \
104                 && BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7)
105
106 config BR2_INIT_NONE
107         bool "None"
108
109 endchoice
110
111 choice
112         prompt "/dev management" if !BR2_INIT_SYSTEMD
113         default BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS
114
115 config BR2_ROOTFS_DEVICE_CREATION_STATIC
116         bool "Static using device table"
117
118 config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS
119         bool "Dynamic using devtmpfs only"
120
121 config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV
122         bool "Dynamic using mdev"
123         select BR2_PACKAGE_BUSYBOX
124
125 config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV
126         bool "Dynamic using eudev"
127         depends on !BR2_avr32 # eudev
128         depends on BR2_LARGEFILE
129         depends on BR2_USE_WCHAR
130         depends on !BR2_STATIC_LIBS
131         depends on BR2_USE_MMU # eudev
132         select BR2_PACKAGE_EUDEV
133
134 comment "eudev needs a toolchain w/ largefile, wchar, dynamic library"
135         depends on !BR2_avr32 # eudev
136         depends on BR2_USE_MMU
137         depends on !BR2_LARGEFILE || !BR2_USE_WCHAR || BR2_STATIC_LIBS
138
139 endchoice
140
141 comment "/dev management using udev (from systemd)"
142         depends on BR2_INIT_SYSTEMD
143
144 config BR2_ROOTFS_DEVICE_TABLE
145         string "Path to the permission tables"
146         default "system/device_table.txt"
147         help
148           Specify a space-separated list of permission table locations,
149           that will be passed to the makedevs utility to assign
150           correct owners and permissions on various files in the
151           target filesystem.
152
153           See package/makedevs/README for details on the usage and
154           syntax of these files.
155
156 config BR2_ROOTFS_STATIC_DEVICE_TABLE
157         string "Path to the device tables"
158         default "system/device_table_dev.txt"
159         depends on BR2_ROOTFS_DEVICE_CREATION_STATIC
160         help
161           Specify a space-separated list of device table locations,
162           that will be passed to the makedevs utility to create all
163           the special device files under /dev.
164
165           See package/makedevs/README for details on the usage and
166           syntax of these files.
167
168 choice
169         prompt "Root FS skeleton"
170
171 config BR2_ROOTFS_SKELETON_DEFAULT
172         bool "default target skeleton"
173         help
174           Use default target skeleton
175
176 config BR2_ROOTFS_SKELETON_CUSTOM
177         bool "custom target skeleton"
178         help
179           Use custom target skeleton.
180
181 endchoice
182
183 if BR2_ROOTFS_SKELETON_CUSTOM
184 config BR2_ROOTFS_SKELETON_CUSTOM_PATH
185         string "custom target skeleton path"
186         default "system/skeleton"
187         help
188           Path to custom target skeleton.
189 endif
190
191 if BR2_ROOTFS_SKELETON_DEFAULT
192
193 config BR2_TARGET_GENERIC_ROOT_PASSWD
194         string "Root password"
195         default ""
196         help
197           Set the initial root password (in clear). It will be md5-encrypted.
198
199           If set to empty (the default), then no root password will be set,
200           and root will need no password to log in.
201
202           WARNING! WARNING!
203           Although pretty strong, MD5 is now an old hash function, and
204           suffers from some weaknesses, which makes it susceptible to attacks.
205           It is showing its age, so this root password should not be trusted
206           to properly secure any product that can be shipped to the wide,
207           hostile world.
208
209           WARNING! WARNING!
210           The password appears in clear in the .config file, and may appear
211           in the build log! Avoid using a valuable password if either the
212           .config file or the build log may be distributed!
213
214 choice
215         bool "/bin/sh"
216         default BR2_SYSTEM_BIN_SH_DASH if !BR2_PACKAGE_BUSYBOX
217         help
218           Select which shell will provide /bin/sh.
219
220 # busybox has shells that work on noMMU
221 config BR2_SYSTEM_BIN_SH_BUSYBOX
222         bool "busybox' default shell"
223         depends on BR2_PACKAGE_BUSYBOX
224
225 config BR2_SYSTEM_BIN_SH_BASH
226         bool "bash"
227         depends on BR2_USE_MMU # bash
228         depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
229         select BR2_PACKAGE_BASH
230
231 config BR2_SYSTEM_BIN_SH_DASH
232         bool "dash"
233         depends on BR2_USE_MMU # dash
234         depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
235         select BR2_PACKAGE_DASH
236
237 config BR2_SYSTEM_BIN_SH_ZSH
238         bool "zsh"
239         depends on BR2_USE_MMU # zsh
240         depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
241         select BR2_PACKAGE_ZSH
242
243 comment "bash, dash, zsh need BR2_PACKAGE_BUSYBOX_SHOW_OTHERS"
244         depends on !BR2_PACKAGE_BUSYBOX_SHOW_OTHERS && BR2_PACKAGE_BUSYBOX
245
246 config BR2_SYSTEM_BIN_SH_NONE
247         bool "none"
248
249 endchoice # /bin/sh
250
251 config BR2_SYSTEM_BIN_SH
252         string
253         default "/bin/busybox" if BR2_SYSTEM_BIN_SH_BUSYBOX
254         default "/bin/bash"    if BR2_SYSTEM_BIN_SH_BASH
255         default "/bin/dash"    if BR2_SYSTEM_BIN_SH_DASH
256         default "/bin/zsh"     if BR2_SYSTEM_BIN_SH_ZSH
257
258 config BR2_TARGET_GENERIC_GETTY
259         bool "Run a getty (login prompt) after boot"
260         default y
261
262 if BR2_TARGET_GENERIC_GETTY
263 menu "getty options"
264 config BR2_TARGET_GENERIC_GETTY_PORT
265         string "TTY port"
266         default "ttyS0"
267         help
268           Specify a port to run a getty on.
269
270 choice
271         prompt "Baudrate"
272         default BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200
273         help
274           Select a baudrate to use.
275
276 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP
277         bool "keep kernel default"
278 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_9600
279         bool "9600"
280 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_19200
281         bool "19200"
282 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_38400
283         bool "38400"
284 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_57600
285         bool "57600"
286 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200
287         bool "115200"
288 endchoice
289
290 config BR2_TARGET_GENERIC_GETTY_BAUDRATE
291         string
292         default "0"             if BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP
293         default "9600"          if BR2_TARGET_GENERIC_GETTY_BAUDRATE_9600
294         default "19200"         if BR2_TARGET_GENERIC_GETTY_BAUDRATE_19200
295         default "38400"         if BR2_TARGET_GENERIC_GETTY_BAUDRATE_38400
296         default "57600"         if BR2_TARGET_GENERIC_GETTY_BAUDRATE_57600
297         default "115200"        if BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200
298
299 config BR2_TARGET_GENERIC_GETTY_TERM
300         string "TERM environment variable"
301         default "vt100"
302         help
303           Specify a TERM type.
304
305 config BR2_TARGET_GENERIC_GETTY_OPTIONS
306         string "other options to pass to getty"
307         default ""
308         help
309           Any other flags you want to pass to getty,
310           Refer to getty --help for details.
311 endmenu
312 endif
313
314 config BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW
315         bool "remount root filesystem read-write during boot"
316         default y
317         help
318           The root filesystem is typically mounted read-only at boot.
319           By default, buildroot remounts it in read-write mode early during the
320           boot process.
321           Say no here if you would rather like your root filesystem to remain
322           read-only.
323           If unsure, say Y.
324
325 endif # BR2_ROOTFS_SKELETON_DEFAULT
326
327 config BR2_TARGET_TZ_INFO
328         bool "Install timezone info"
329         # No timezone for musl; only for uClibc or (e)glibc.
330         depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC
331         select BR2_PACKAGE_TZDATA if BR2_TOOLCHAIN_USES_GLIBC
332         select BR2_PACKAGE_TZ if BR2_TOOLCHAIN_USES_UCLIBC
333         help
334           Say 'y' here to install timezone info.
335
336 if BR2_TARGET_TZ_INFO
337
338 config BR2_TARGET_TZ_ZONELIST
339         string "timezone list"
340         default "default"
341         help
342           Space-separated list of time zones to compile.
343
344           The value "default" includes all commonly used time zones. Note
345           that this set consumes around 5.5M for (e)glibc and 2.1M for uClibc.
346
347           The full list is the list of files in the time zone database source,
348           not including the build and .tab files.
349
350 config BR2_TARGET_LOCALTIME
351         string "default local time"
352         help
353           The time zone to install as the default local time, expressed as a
354           tzdata location, such as:
355             GMT
356             Europe/Paris
357             America/New_York
358             Pacific/Wallis
359             ...
360
361           If empty, no local time will be set, and the dates will be
362           expressed in UTC.
363
364 endif # BR2_TARGET_TZ_INFO
365
366 config BR2_ROOTFS_USERS_TABLES
367         string "Path to the users tables"
368         help
369           Specify a space-separated list of users table locations,
370           that will be passed to the mkusers utility to create
371           users on the system, with home directory, password, etc.
372
373           See manual for details on the usage and syntax of these files.
374
375 config BR2_ROOTFS_OVERLAY
376         string "Root filesystem overlay directories"
377         default ""
378         help
379           Specify a list of directories that are copied over the target
380           root filesystem after the build has finished and before it is
381           packed into the selected filesystem images.
382
383           They are copied as-is into the rootfs, excluding files ending with
384           ~ and .git, .svn and .hg directories.
385
386 config BR2_ROOTFS_POST_BUILD_SCRIPT
387         string "Custom scripts to run before creating filesystem images"
388         default ""
389         help
390           Specify a space-separated list of scripts to be run after the build
391           has finished and before Buildroot starts packing the files into
392           selected filesystem images.
393
394           This gives users the opportunity to do board-specific cleanups,
395           add-ons and the like, so the generated files can be used directly
396           without further processing.
397
398           These scripts are called with the target directory name as first
399           argument. Make sure the exit code of those scripts are 0, otherwise
400           make will stop after calling them.
401
402 config BR2_ROOTFS_POST_IMAGE_SCRIPT
403         string "Custom scripts to run after creating filesystem images"
404         default ""
405         help
406           Specify a space-separated list of scripts to be run after
407           the build has finished and after Buildroot has packed the
408           files into selected filesystem images.
409
410           This can for example be used to call a tool building a
411           firmware image from different images generated by Buildroot,
412           or automatically extract the tarball root filesystem image
413           into some location exported by NFS, or any other custom
414           action.
415
416           These scripts are called with the images directory name as
417           first argument. The script is executed from the main Buildroot
418           source directory as the current directory.
419
420 config BR2_ROOTFS_POST_SCRIPT_ARGS
421         string "Extra post-{build,image} arguments"
422         depends on BR2_ROOTFS_POST_BUILD_SCRIPT != "" || BR2_ROOTFS_POST_IMAGE_SCRIPT != ""
423         help
424           Pass these additional arguments to each post-build or post-image
425           scripts.
426
427           Note that all the post-build and post-image scripts will be passed
428           the same set of arguments, you can not pass different arguments to
429           each script.
430
431           Note also, as stated in their respective help text, that the first
432           argument to each post-build or post-image script is the target
433           directory / images directory. The arguments in this option will be
434           passed *after* those.
435
436 endmenu