initial buildroot for linux 5.15

This commit is contained in:
Huan.Feng
2021-12-06 14:12:13 +08:00
parent d7767d594e
commit 7b6fc358fa
12736 changed files with 508822 additions and 0 deletions
+58
View File
@@ -0,0 +1,58 @@
config BR2_PACKAGE_WATCHDOGD
bool "watchdogd"
depends on BR2_USE_MMU # fork()
select BR2_PACKAGE_LIBCONFUSE
select BR2_PACKAGE_LIBITE
select BR2_PACKAGE_LIBUEV
help
Extended version of uClinux-dist watchdogd. Monitors loadavg,
file descriptors and memory leaks, and capable of supervising
your processes main loop using an instrumentation API.
A reset reason is saved for power loss, CPU overload, or any
of the monitored conditions (above). The full capabilities
are limited by the kernel watchdog driver, but even the basic
"softdog" driver is supported. See /etc/watchdogd.conf for
details, and try watchdogctl for system status and available
commands.
https://github.com/troglobit/watchdogd/
if BR2_PACKAGE_WATCHDOGD
config BR2_PACKAGE_WATCHDOGD_TEST_SUITE
bool "Enable watchdogctl test cases"
help
The watchdogctl program comes with a suite of tests built-in.
They can be used to verify correct operation of watchdogd and
the kernel watchdog driver.
config BR2_PACKAGE_WATCHDOGD_GENERIC_POLL
int "Generic script monitor poll interval (sec)"
default "300"
help
Poll interval for generic script monitor, in seconds. A value
of zero (0) disables the monitor.
config BR2_PACKAGE_WATCHDOGD_LOADAVG_POLL
int "CPU load average monitor poll interval (sec)"
default "300"
help
Poll interval for CPU load average monitor, in seconds. A
value of zero (0) disables the monitor.
config BR2_PACKAGE_WATCHDOGD_FILENR_POLL
int "File descriptor leak monitor poll interval (sec)"
default "300"
help
Poll interval for file descriptor leak monitor, in seconds. A
value of zero (0) disables the monitor.
config BR2_PACKAGE_WATCHDOGD_MEMINFO_POLL
int "Memory leak monitor poll interval (sec)"
default "300"
help
Poll interval for memory leak monitor, in seconds. A value of
zero (0) disables the monitor.
endif
+47
View File
@@ -0,0 +1,47 @@
#!/bin/sh
DAEMON="watchdogd"
PIDFILE="/var/run/$DAEMON.pid"
# shellcheck source=/dev/null
[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON"
cmd()
{
start-stop-daemon -q -p "$PIDFILE" -x "/usr/sbin/$DAEMON" "$@"
status=$?
if [ $status -eq 0 ]; then
echo "OK"
else
echo "FAIL"
fi
return $status
}
case "$1" in
start)
printf 'Starting %s: ' "$DAEMON"
# shellcheck disable=SC2086 # we need the word splitting
cmd -S -- $SMCROUTED_ARGS
;;
stop)
printf 'Stopping %s: ' "$DAEMON"
cmd -K
;;
restart)
$0 stop
sleep 1
$0 start
;;
reload)
printf 'Reloading %s: ' "$DAEMON"
cmd -K -s HUP
;;
*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1
esac
+5
View File
@@ -0,0 +1,5 @@
# Upstream .sha256 from GitHub
sha256 33ec4edc8cb4ada7a4d8324a27d897d33aae5e83257ed64d3d37508825c11237 watchdogd-3.5.tar.gz
# Locally calculated
sha256 fd685e20931174308c45a26418a7ce34d66704c4e4b92ab1d8299deb255cd676 LICENSE
+55
View File
@@ -0,0 +1,55 @@
################################################################################
#
# watchdogd
#
################################################################################
WATCHDOGD_VERSION = 3.5
WATCHDOGD_SITE = https://github.com/troglobit/watchdogd/releases/download/$(WATCHDOGD_VERSION)
WATCHDOGD_LICENSE = ISC
WATCHDOGD_LICENSE_FILES = LICENSE
WATCHDOGD_CPE_ID_VENDOR = troglobit
WATCHDOGD_DEPENDENCIES = host-pkgconf libconfuse libite libuev
WATCHDOGD_CONF_OPTS = --disable-compat --disable-examples --disable-test-mode
ifneq ($(BR2_PACKAGE_WATCHDOGD_TEST_SUITE),y)
WATCHDOGD_CONF_OPTS += --disable-builtin-tests
else
WATCHDOGD_CONF_OPTS += --enable-builtin-tests
endif
ifeq ($(BR2_PACKAGE_WATCHDOGD_GENERIC_POLL),0)
WATCHDOGD_CONF_OPTS += --without-generic
else
WATCHDOGD_CONF_OPTS += --with-generic=$(BR2_PACKAGE_WATCHDOGD_GENERIC_POLL)
endif
ifeq ($(BR2_PACKAGE_WATCHDOGD_LOADAVG_POLL),0)
WATCHDOGD_CONF_OPTS += --without-loadavg
else
WATCHDOGD_CONF_OPTS += --with-loadavg=$(BR2_PACKAGE_WATCHDOGD_LOADAVG_POLL)
endif
ifeq ($(BR2_PACKAGE_WATCHDOGD_FILENR_POLL),0)
WATCHDOGD_CONF_OPTS += --without-filenr
else
WATCHDOGD_CONF_OPTS += --with-filenr=$(BR2_PACKAGE_WATCHDOGD_FILENR_POLL)
endif
ifeq ($(BR2_PACKAGE_WATCHDOGD_MEMINFO_POLL),0)
WATCHDOGD_CONF_OPTS += --without-meminfo
else
WATCHDOGD_CONF_OPTS += --with-meminfo=$(BR2_PACKAGE_WATCHDOGD_MEMINFO_POLL)
endif
define WATCHDOGD_INSTALL_INIT_SYSV
$(INSTALL) -D -m 0755 package/watchdogd/S01watchdogd \
$(TARGET_DIR)/etc/init.d/S01watchdogd
endef
define WATCHDOGD_INSTALL_INIT_SYSTEMD
$(INSTALL) -D -m 644 $(WATCHDOGD_SRCDIR)/watchdogd.service \
$(TARGET_DIR)/usr/lib/systemd/system/watchdogd.service
endef
$(eval $(autotools-package))