tar: support -T - and -X -
[oweals/busybox.git] / init / halt.c
index 903953e8089d051f02b3df409f84f15172a5d3f1..a84a727477e50dc22d01e19eaa7f1aa551d50b83 100644 (file)
@@ -7,12 +7,73 @@
  * Licensed under GPLv2, see file LICENSE in this source tree.
  */
 
+//applet:IF_HALT(APPLET(halt, BB_DIR_SBIN, BB_SUID_DROP))
+//applet:IF_HALT(APPLET_ODDNAME(poweroff, halt, BB_DIR_SBIN, BB_SUID_DROP, poweroff))
+//applet:IF_HALT(APPLET_ODDNAME(reboot, halt, BB_DIR_SBIN, BB_SUID_DROP, reboot))
+
+//kbuild:lib-$(CONFIG_HALT) += halt.o
+
+//config:config HALT
+//config:      bool "poweroff, halt, and reboot"
+//config:      default y
+//config:      help
+//config:        Stop all processes and either halt, reboot, or power off the system.
+//config:
+//config:config FEATURE_CALL_TELINIT
+//config:      bool "Call telinit on shutdown and reboot"
+//config:      default y
+//config:      depends on HALT && !INIT
+//config:      help
+//config:        Call an external program (normally telinit) to facilitate
+//config:        a switch to a proper runlevel.
+//config:
+//config:        This option is only available if you selected halt and friends,
+//config:        but did not select init.
+//config:
+//config:config TELINIT_PATH
+//config:      string "Path to telinit executable"
+//config:      default "/sbin/telinit"
+//config:      depends on FEATURE_CALL_TELINIT
+//config:      help
+//config:        When busybox halt and friends have to call external telinit
+//config:        to facilitate proper shutdown, this path is to be used when
+//config:        locating telinit executable.
+
+//usage:#define halt_trivial_usage
+//usage:       "[-d DELAY] [-n] [-f]" IF_FEATURE_WTMP(" [-w]")
+//usage:#define halt_full_usage "\n\n"
+//usage:       "Halt the system\n"
+//usage:     "\nOptions:"
+//usage:     "\n       -d SEC  Delay interval"
+//usage:     "\n       -n      Do not sync"
+//usage:     "\n       -f      Force (don't go through init)"
+//usage:       IF_FEATURE_WTMP(
+//usage:     "\n       -w      Only write a wtmp record"
+//usage:       )
+//usage:
+//usage:#define poweroff_trivial_usage
+//usage:       "[-d DELAY] [-n] [-f]"
+//usage:#define poweroff_full_usage "\n\n"
+//usage:       "Halt and shut off power\n"
+//usage:     "\nOptions:"
+//usage:     "\n       -d SEC  Delay interval"
+//usage:     "\n       -n      Do not sync"
+//usage:     "\n       -f      Force (don't go through init)"
+//usage:
+//usage:#define reboot_trivial_usage
+//usage:       "[-d DELAY] [-n] [-f]"
+//usage:#define reboot_full_usage "\n\n"
+//usage:       "Reboot the system\n"
+//usage:     "\nOptions:"
+//usage:     "\n       -d SEC  Delay interval"
+//usage:     "\n       -n      Do not sync"
+//usage:     "\n       -f      Force (don't go through init)"
+
 #include "libbb.h"
 #include "reboot.h"
 
 #if ENABLE_FEATURE_WTMP
 #include <sys/utsname.h>
-#include <utmp.h>
 
 static void write_wtmp(void)
 {