cbff0b494f 2023-08-18 arcade: SCRIPTS:=${:!find /etc/mrc -name '*.service.mk'!:S/^\/etc\/mrc\///:S/.service.mk$//}
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: .include "starter.mk"
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: # Create service targets
cbff0b494f 2023-08-18 arcade: .for service in ${SCRIPTS}
cbff0b494f 2023-08-18 arcade: . include "${service}.service.mk"
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: # Set DAEMON defaults
cbff0b494f 2023-08-18 arcade: DAEMON_${service}_CWD?= /
cbff0b494f 2023-08-18 arcade: DAEMON_${service}_ENABLE?= no
cbff0b494f 2023-08-18 arcade: DAEMON_${service}_USER?= root
cbff0b494f 2023-08-18 arcade: DAEMON_${service}_GROUP?= wheel
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: . if !defined(DAEMON_${service}_COMMAND)
cbff0b494f 2023-08-18 arcade: . warning MRC> Service [${service}] defunct: no COMMAND specified
cbff0b494f 2023-08-18 arcade: . else
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: # Service creation targets
cbff0b494f 2023-08-18 arcade: . if !target(${service})
cbff0b494f 2023-08-18 arcade: ${service}: ${SERVICE_EXIT} ${_SERVICE}
cbff0b494f 2023-08-18 arcade: . endif
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: # Service status targets
cbff0b494f 2023-08-18 arcade: . if !target(${service}_status)
cbff0b494f 2023-08-18 arcade: ${service}_status: ${_SERVICE_STATUS}
cbff0b494f 2023-08-18 arcade: . endif
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: # Service exit targets
cbff0b494f 2023-08-18 arcade: . if !target(${service}_exit)
cbff0b494f 2023-08-18 arcade: ${service}_exit: ${_SERVICE_EXIT} ${DAEMON_${service}_DEPS:S/$/_exit/}
cbff0b494f 2023-08-18 arcade: . endif
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: DAEMON_EXIT: ${service}_exit
cbff0b494f 2023-08-18 arcade: . endif
cbff0b494f 2023-08-18 arcade: .endfor
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: .MAIN: ${SCRIPTS} ${TARGETS}
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: .PHONY: ${SCRIPTS} ${OTHER_TARGETS} ${TARGETS}
cbff0b494f 2023-08-18 arcade:
cbff0b494f 2023-08-18 arcade: .undef SCRIPTS