Annotation For starter.mk
Logged in as anonymous

Origin for each line in starter.mk from check-in f2a642cc7a:

d8511a3d7c 2022-05-30    1: OTHER_TARGETS+=_service_pre
d8511a3d7c 2022-05-30    2: 
d8511a3d7c 2022-05-30    3: STARTER?=svc
d8511a3d7c 2022-05-30    4: 
04f7295047 2022-05-30    5: _service_check: .USEBEFORE
d8511a3d7c 2022-05-30    6: 	# check whether service is enabled
4d5a9b2632 2022-05-30    7: 	if [ -z "$${DAEMON_$@_ENABLE}" -a -z "${FORCE}" ]; then \
4d5a9b2632 2022-05-30    8: 		exit 0 ;\
adf4eb9997 2023-11-04    9: 	fi
adf4eb9997 2023-11-04   10: 	# check for first present executable
5066f4e4fd 2023-11-04   11: 	for CHECK_CMD in ${DAEMON_$@_COMMAND}; do \
5066f4e4fd 2023-11-04   12: 		if [ -x $${CHECK_CMD} ]; then \
5066f4e4fd 2023-11-04   13: 			export CMD="$${CHECK_CMD}" ;\
cbff0b494f 2023-08-18   14: 			break ;\
cbff0b494f 2023-08-18   15: 		fi ;\
adf4eb9997 2023-11-04   16: 	done
adf4eb9997 2023-11-04   17: 	# bail out if binary not found
adf4eb9997 2023-11-04   18: 	if [ -z $${CMD} ]; then \
5066f4e4fd 2023-11-04   19: 		echo "MRC:$@> Executable not found." ;\
adf4eb9997 2023-11-04   20: 		exit 0 ;\
adf4eb9997 2023-11-04   21: 	fi
adf4eb9997 2023-11-04   22: 	# check for rtprio/idprio
adf4eb9997 2023-11-04   23: 	if [ -n "$${DAEMON_$@_IDPRIO}" ]; then \
adf4eb9997 2023-11-04   24: 		export CMD="/usr/sbin/idprio $${DAEMON_$@_IDPRIO} $${CMD}" ;\
adf4eb9997 2023-11-04   25: 	elif [ -n "$${DAEMON_$@_RTPRIO}" ]; then \
adf4eb9997 2023-11-04   26: 		export CMD="/usr/sbin/rtprio $${DAEMON_$@_RTPRIO} $${CMD}" ;\
adf4eb9997 2023-11-04   27: 	fi
d8511a3d7c 2022-05-30   28: 
04f7295047 2022-05-30   29: _service_pre: .USEBEFORE
d8511a3d7c 2022-05-30   30: 	# kldload modules if any
cbff0b494f 2023-08-18   31: 	echo "MRC:$@> Starting service." ;\
d8511a3d7c 2022-05-30   32: 	if [ -n "${DAEMON_$@_MODULES}" ]; then \
d8511a3d7c 2022-05-30   33: 		kldload -n ${DAEMON_$@_MODULES}; \
04f7295047 2022-05-30   34: 	fi
04f7295047 2022-05-30   35: 
04f7295047 2022-05-30   36: _service_post_exit: .USE
04f7295047 2022-05-30   37: 	echo "MRC:${@:S/_exit//}> stopped."
d8511a3d7c 2022-05-30   38: 
d8511a3d7c 2022-05-30   39: .for starter_source in ${:!find /etc/mrc -name '*.starter.mk'!:S/\/etc\/mrc\///}
d8511a3d7c 2022-05-30   40: starter:=${starter_source:S/.starter.mk$//}
d8511a3d7c 2022-05-30   41: Starter:=${starter:tu}
d8511a3d7c 2022-05-30   42: 
d8511a3d7c 2022-05-30   43: OTHER_TARGETS:=${OTHER_TARGETS} _service_${starter} _service_${starter}_exit _service_${starter}_status
d8511a3d7c 2022-05-30   44: 
f2a642cc7a 2025-02-22   45: # here we are inheriting pieces of different targets into one single target, so
f2a642cc7a 2025-02-22   46: # everything is appended in the order, but gets organized a little bit
f2a642cc7a 2025-02-22   47: # differently, all targets with .USEBEFORE are added before current target
f2a642cc7a 2025-02-22   48: # script, so after "_service_pre _service_check" we got that order inverted
f2a642cc7a 2025-02-22   49: 
04f7295047 2022-05-30   50: _SERVICE_${Starter}:=_service_pre DAEMON _service_${starter} _service_check
04f7295047 2022-05-30   51: _EARLYSERVICE_${Starter}:=_service_pre SERVICE _service_${starter} _service_check
04f7295047 2022-05-30   52: _SERVICE_${Starter}_EXIT:=_service_${starter}_exit _service_post_exit
04f7295047 2022-05-30   53: 
f2a642cc7a 2025-02-22   54: .	if "${STARTER}" == "${starter}"
04f7295047 2022-05-30   55: _SERVICE:=_service_pre DAEMON _service_${starter} _service_check
04f7295047 2022-05-30   56: _EARLYSERVICE:=_service_pre SERVICE _service_${starter} _service_check
04f7295047 2022-05-30   57: _SERVICE_EXIT:=_service_${starter}_exit _service_post_exit
f2a642cc7a 2025-02-22   58: .	endif
04f7295047 2022-05-30   59: 
f2a642cc7a 2025-02-22   60: .	export
f2a642cc7a 2025-02-22   61: .	include "${starter_source}"
d8511a3d7c 2022-05-30   62: .endfor