From: Joachim Wiberg Date: Mon, 30 Aug 2021 15:30:55 +0000 (+0200) Subject: package/smcroute: add sysv init script X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7b7be053b8b6f763b54a662020e84edc3b202d2b;p=buildroot.git package/smcroute: add sysv init script Same start order as mrouted, start after networking is up. Custom command line options, like startup delay, or disable multicast routing by default, can be added to the optional /etc/default/smcroute env. file. Signed-off-by: Joachim Wiberg Signed-off-by: Arnout Vandecappelle (Essensium/Mind) --- diff --git a/package/smcroute/S41smcroute b/package/smcroute/S41smcroute new file mode 100755 index 0000000000..bdc0f87645 --- /dev/null +++ b/package/smcroute/S41smcroute @@ -0,0 +1,48 @@ +#!/bin/sh + +NAME="smcroute" +DAEMON="smcrouted" +PIDFILE="/var/run/$NAME.pid" + +# shellcheck source=/dev/null +[ -r "/etc/default/$NAME" ] && . "/etc/default/$NAME" + +cmd() +{ + start-stop-daemon -q -p "$PIDFILE" "$@" + 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 -x "/usr/sbin/$DAEMON" -- $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 diff --git a/package/smcroute/smcroute.mk b/package/smcroute/smcroute.mk index e4ee81db6f..9cce0acbbc 100644 --- a/package/smcroute/smcroute.mk +++ b/package/smcroute/smcroute.mk @@ -19,4 +19,9 @@ else SMCROUTE_CONF_OPTS += --without-libcap endif +define SMCROUTE_INSTALL_INIT_SYSV + $(INSTALL) -m 755 -D package/smcroute/S41smcroute \ + $(TARGET_DIR)/etc/init.d/S41smcroute +endef + $(eval $(autotools-package))