openwrt/package/utils/busybox/config/init/Config.in
Rui Salvaterra 89bb4050f7 busybox: update to 1.37.0
Add a patch to fix non-x86 builds, refresh patches and update/fix the
configuration as described in 98b09ba250 (cited here for future reference).

Config refresh:

Refresh commands, run after busybox is first built once:

cd package/utils/busybox/config/
../convert_menuconfig.pl ../../../../build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/busybox-default/busybox-1.37.0
cd ..
./convert_defaults.pl ../../../build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/busybox-default/busybox-1.37.0/.config > Config-defaults.in

Manual edits needed after config refresh:

* Config-defaults.in: OpenWrt config symbol IPV6 logic applied to
  BUSYBOX_DEFAULT_FEATURE_IPV6

* Config-defaults.in: OpenWrt config TARGET_bcm53xx logic applied to
  BUSYBOX_DEFAULT_TRUNCATE (commit 547f1ec)

* Config-defaults.in: OpenWrt logic applied to
  BUSYBOX_DEFAULT_LOGIN_SESSION_AS_CHILD (commit dc92917)

* Config-defaults.in: correct the default ports that get reset
  BUSYBOX_DEFAULT_FEATURE_HTTPD_PORT_DEFAULT    80
  BUSYBOX_DEFAULT_FEATURE_TELNETD_PORT_DEFAULT  23

* config/editors/Config.in: Add USE_GLIBC dependency to
  BUSYBOX_CONFIG_FEATURE_VI_REGEX_SEARCH (commit f141090)

* config/shell/Config.in: change at "Options common to all shells" the conditional symbol
  SHELL_ASH --> BUSYBOX_CONFIG_SHELL_ASH
  (discussion in http://lists.openwrt.org/pipermail/openwrt-devel/2021-January/033140.html
  Apparently our script does not see the hidden option while
  prepending config options with "BUSYBOX_CONFIG_" which leads to a
  missed dependency when the options are later evaluated.)

* Edit a few Config.in files by adding quotes to sourced items in
  config/Config.in, config/networking/Config.in and config/util-linux/Config.in (commit 1da014fcca)

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
[rebased with the change download line commit]
[corrected version in the refresh example in commit message]
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/17107
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-12-05 21:16:55 +01:00

207 lines
7.8 KiB
Plaintext

# DO NOT EDIT. This file is generated from Config.src
#
# For a description of the syntax of this configuration file,
# see docs/Kconfig-language.txt.
#
menu "Init Utilities"
config BUSYBOX_CONFIG_BOOTCHARTD
bool "bootchartd (10 kb)"
default BUSYBOX_DEFAULT_BOOTCHARTD
help
bootchartd is commonly used to profile the boot process
for the purpose of speeding it up. In this case, it is started
by the kernel as the init process. This is configured by adding
the init=/sbin/bootchartd option to the kernel command line.
It can also be used to monitor the resource usage of a specific
application or the running system in general. In this case,
bootchartd is started interactively by running bootchartd start
and stopped using bootchartd stop.
config BUSYBOX_CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER
bool "Compatible, bloated header"
default BUSYBOX_DEFAULT_FEATURE_BOOTCHARTD_BLOATED_HEADER
depends on BUSYBOX_CONFIG_BOOTCHARTD
help
Create extended header file compatible with "big" bootchartd.
"Big" bootchartd is a shell script and it dumps some
"convenient" info into the header, such as:
title = Boot chart for `hostname` (`date`)
system.uname = `uname -srvm`
system.release = `cat /etc/DISTRO-release`
system.cpu = `grep '^model name' /proc/cpuinfo | head -1` ($cpucount)
system.kernel.options = `cat /proc/cmdline`
This data is not mandatory for bootchart graph generation,
and is considered bloat. Nevertheless, this option
makes bootchartd applet to dump a subset of it.
config BUSYBOX_CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE
bool "Support bootchartd.conf"
default BUSYBOX_DEFAULT_FEATURE_BOOTCHARTD_CONFIG_FILE
depends on BUSYBOX_CONFIG_BOOTCHARTD
help
Enable reading and parsing of $PWD/bootchartd.conf
and /etc/bootchartd.conf files.
config BUSYBOX_CONFIG_HALT
bool "halt (4.3 kb)"
default BUSYBOX_DEFAULT_HALT
help
Stop all processes and halt the system.
config BUSYBOX_CONFIG_POWEROFF
bool "poweroff (4.3 kb)"
default BUSYBOX_DEFAULT_POWEROFF
help
Stop all processes and power off the system.
config BUSYBOX_CONFIG_REBOOT
bool "reboot (4.3 kb)"
default BUSYBOX_DEFAULT_REBOOT
help
Stop all processes and reboot the system.
config BUSYBOX_CONFIG_FEATURE_WAIT_FOR_INIT
bool "Before signaling init, make sure it is ready for it"
default BUSYBOX_DEFAULT_FEATURE_WAIT_FOR_INIT
depends on BUSYBOX_CONFIG_HALT || BUSYBOX_CONFIG_POWEROFF || BUSYBOX_CONFIG_REBOOT
help
In rare cases, poweroff may be commanded by firmware to OS
even before init process exists. On Linux, this spawns
"/sbin/poweroff" very early. This option adds code
which checks that init is ready to receive poweroff
commands. Code size increase of ~80 bytes.
config BUSYBOX_CONFIG_FEATURE_CALL_TELINIT
bool "Call telinit on shutdown and reboot"
default BUSYBOX_DEFAULT_FEATURE_CALL_TELINIT
depends on (BUSYBOX_CONFIG_HALT || BUSYBOX_CONFIG_POWEROFF || BUSYBOX_CONFIG_REBOOT) && !BUSYBOX_CONFIG_INIT
help
Call an external program (normally telinit) to facilitate
a switch to a proper runlevel.
This option is only available if you selected halt and friends,
but did not select init.
config BUSYBOX_CONFIG_TELINIT_PATH
string "Path to telinit executable"
default BUSYBOX_DEFAULT_TELINIT_PATH
depends on BUSYBOX_CONFIG_FEATURE_CALL_TELINIT
help
When busybox halt and friends have to call external telinit
to facilitate proper shutdown, this path is to be used when
locating telinit executable.
config BUSYBOX_CONFIG_INIT
bool "init (10 kb)"
default BUSYBOX_DEFAULT_INIT
select BUSYBOX_CONFIG_FEATURE_SYSLOG
help
init is the first program run when the system boots.
config BUSYBOX_CONFIG_LINUXRC
bool "linuxrc: support running init from initrd (not initramfs)"
default BUSYBOX_DEFAULT_LINUXRC
select BUSYBOX_CONFIG_FEATURE_SYSLOG
help
Legacy support for running init under the old-style initrd. Allows
the name linuxrc to act as init, and it doesn't assume init is PID 1.
This does not apply to initramfs, which runs /init as PID 1 and
requires no special support.
config BUSYBOX_CONFIG_FEATURE_USE_INITTAB
bool "Support reading an inittab file"
default BUSYBOX_DEFAULT_FEATURE_USE_INITTAB
depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC
help
Allow init to read an inittab file when the system boot.
config BUSYBOX_CONFIG_FEATURE_KILL_REMOVED
bool "Support killing processes that have been removed from inittab"
default BUSYBOX_DEFAULT_FEATURE_KILL_REMOVED
depends on BUSYBOX_CONFIG_FEATURE_USE_INITTAB
help
When respawn entries are removed from inittab and a SIGHUP is
sent to init, this option will make init kill the processes
that have been removed.
config BUSYBOX_CONFIG_FEATURE_KILL_DELAY
int "How long to wait between TERM and KILL (0 - send TERM only)" if FEATURE_KILL_REMOVED
range 0 1024
default BUSYBOX_DEFAULT_FEATURE_KILL_DELAY
depends on BUSYBOX_CONFIG_FEATURE_KILL_REMOVED
help
With nonzero setting, init sends TERM, forks, child waits N
seconds, sends KILL and exits. Setting it too high is unwise
(child will hang around for too long and could actually kill
the wrong process!)
config BUSYBOX_CONFIG_FEATURE_INIT_SCTTY
bool "Run commands with leading dash with controlling tty"
default BUSYBOX_DEFAULT_FEATURE_INIT_SCTTY
depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC
help
If this option is enabled, init will try to give a controlling
tty to any command which has leading hyphen (often it's "-/bin/sh").
More precisely, init will do "ioctl(STDIN_FILENO, TIOCSCTTY, 0)".
If device attached to STDIN_FILENO can be a ctty but is not yet
a ctty for other session, it will become this process' ctty.
This is not the traditional init behavour, but is often what you want
in an embedded system where the console is only accessed during
development or for maintenance.
NB: using cttyhack applet may work better.
config BUSYBOX_CONFIG_FEATURE_INIT_SYSLOG
bool "Enable init to write to syslog"
default BUSYBOX_DEFAULT_FEATURE_INIT_SYSLOG
depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC
help
If selected, some init messages are sent to syslog.
Otherwise, they are sent to VT #5 if linux virtual tty is detected
(if not, no separate logging is done).
config BUSYBOX_CONFIG_FEATURE_INIT_QUIET
bool "Be quiet on boot (no 'init started:' message)"
default BUSYBOX_DEFAULT_FEATURE_INIT_QUIET
depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC
config BUSYBOX_CONFIG_FEATURE_INIT_COREDUMPS
bool "Support dumping core for child processes (debugging only)"
default BUSYBOX_DEFAULT_FEATURE_INIT_COREDUMPS # not Y because this is a debug option
depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC
help
If this option is enabled and the file /.init_enable_core
exists, then init will call setrlimit() to allow unlimited
core file sizes. If this option is disabled, processes
will not generate any core files.
config BUSYBOX_CONFIG_INIT_TERMINAL_TYPE
string "Initial terminal type"
default BUSYBOX_DEFAULT_INIT_TERMINAL_TYPE
depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC
help
This is the initial value set by init for the TERM environment
variable. This variable is used by programs which make use of
extended terminal capabilities.
Note that on Linux, init attempts to detect serial terminal and
sets TERM to "vt102" if one is found.
config BUSYBOX_CONFIG_FEATURE_INIT_MODIFY_CMDLINE
bool "Clear init's command line"
default BUSYBOX_DEFAULT_FEATURE_INIT_MODIFY_CMDLINE
depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC
help
When launched as PID 1 and after parsing its arguments, init
wipes all the arguments but argv[0] and rewrites argv[0] to
contain only "init", so that its command line appears solely as
"init" in tools such as ps.
If this option is set to Y, init will keep its original behavior,
otherwise, all the arguments including argv[0] will be preserved,
be they parsed or ignored by init.
The original command-line used to launch init can then be
retrieved in /proc/1/cmdline on Linux, for example.
endmenu