Origin for each line in
Makefile
from check-in be5654b61b:
88e0b45310 2019-10-23 1: .include "defaults.mk"
d8511a3d7c 2022-05-30 2: .include "order.mk"
5f60bcc749 2019-10-23 3: .include "/etc/mrc.mk"
8f80b79392 2019-10-20 4: .export
8f80b79392 2019-10-20 5:
be5654b61b 2023-08-18 6: .MAKE.JOBS?= ${NCPU}
4d5a9b2632 2022-05-30 7: .if !empty(.MAKE.MODE:Mcompat)
4d5a9b2632 2022-05-30 8: .error "ERROR: MRC doesn't support "compat" mode."
4d5a9b2632 2022-05-30 9: .endif
4d5a9b2632 2022-05-30 10:
d8511a3d7c 2022-05-30 11: OTHER_TARGETS:=
d8511a3d7c 2022-05-30 12:
d8511a3d7c 2022-05-30 13: .include "starter.mk"
4361bde8b2 2022-05-29 14:
7a1e7f4a58 2019-10-21 15: .SILENT:
7a1e7f4a58 2019-10-21 16:
17041521b1 2019-10-23 17: install:
17041521b1 2019-10-23 18: install rc /etc/rc
d8511a3d7c 2022-05-30 19: install rc.shutdown /etc/rc.shutdown
295630c60d 2019-10-23 20:
d8511a3d7c 2022-05-30 21: SCRIPTS:=${:!find /etc/mrc -name '*.service.mk'!:S/^\/etc\/mrc\///:S/.service.mk$//}
17041521b1 2019-10-23 22:
5fb1968943 2019-10-19 23: .if defined(AUTOBOOT)
d724289db9 2020-04-10 24: .include "init.mk"
d724289db9 2020-04-10 25:
f95fc3334e 2019-10-20 26: .ERROR:
f95fc3334e 2019-10-20 27: : ERROR: ABORTING BOOT (sending SIGTERM to parent)!
f95fc3334e 2019-10-20 28: : target ${.ERROR_TARGET} failed to execute:
f95fc3334e 2019-10-20 29: : ${.ERROR_CMD}
f95fc3334e 2019-10-20 30: kill 1
5fb1968943 2019-10-19 31: .endif
5fb1968943 2019-10-19 32:
67838bd249 2019-10-21 33: test:
67838bd249 2019-10-21 34: echo Empty target.
67838bd249 2019-10-21 35:
d8511a3d7c 2022-05-30 36: # Create service targets
d8511a3d7c 2022-05-30 37: .for service in ${SCRIPTS}
d8511a3d7c 2022-05-30 38: . include "${service}.service.mk"
d8511a3d7c 2022-05-30 39:
be5654b61b 2023-08-18 40: # Set DAEMON defaults
be5654b61b 2023-08-18 41: DAEMON_${service}_CWD?= /
be5654b61b 2023-08-18 42: DAEMON_${service}_ENABLE?= no
be5654b61b 2023-08-18 43: DAEMON_${service}_USER?= root
be5654b61b 2023-08-18 44: DAEMON_${service}_GROUP?= wheel
be5654b61b 2023-08-18 45:
be5654b61b 2023-08-18 46: . if !defined(DAEMON_${service}_COMMAND)
be5654b61b 2023-08-18 47: . warning MRC> Service [${service}] defunct: no COMMAND specified
be5654b61b 2023-08-18 48: . else
be5654b61b 2023-08-18 49:
d84f73e80a 2023-02-19 50: # Service creation targets
be5654b61b 2023-08-18 51: . if !target(${service})
d84f73e80a 2023-02-19 52: ${service}: ${SERVICE_EXIT} ${_SERVICE}
be5654b61b 2023-08-18 53: . endif
d84f73e80a 2023-02-19 54:
d84f73e80a 2023-02-19 55: # Service status targets
be5654b61b 2023-08-18 56: . if !target(${service}_status)
d84f73e80a 2023-02-19 57: ${service}_status: ${_SERVICE_STATUS}
be5654b61b 2023-08-18 58: . endif
d84f73e80a 2023-02-19 59:
d84f73e80a 2023-02-19 60: # Service exit targets
be5654b61b 2023-08-18 61: . if !target(${service}_exit)
d84f73e80a 2023-02-19 62: ${service}_exit: ${_SERVICE_EXIT} ${DAEMON_${service}_DEPS:S/$/_exit/}
be5654b61b 2023-08-18 63: . endif
d84f73e80a 2023-02-19 64:
d84f73e80a 2023-02-19 65: DAEMON_EXIT: ${service}_exit
be5654b61b 2023-08-18 66: . endif
716b0393df 2019-10-21 67: .endfor
716b0393df 2019-10-21 68:
d8511a3d7c 2022-05-30 69: .MAIN: ${SCRIPTS} ${TARGETS}
d724289db9 2020-04-10 70:
d8511a3d7c 2022-05-30 71: .PHONY: ${SCRIPTS} ${OTHER_TARGETS} ${TARGETS}
d8511a3d7c 2022-05-30 72: .undef OTHER_TARGETS SCRIPTS TARGETS
d724289db9 2020-04-10 73:
d8511a3d7c 2022-05-30 74: ENABLED:=${:!env!:C/=.*//:M*_ENABLE}
716b0393df 2019-10-21 75:
716b0393df 2019-10-21 76: .for var in ${ENABLED}
d8511a3d7c 2022-05-30 77: . if !empty(${var}:tl:Mno)
ebafd89015 2019-10-21 78: #.info ${var}
d8511a3d7c 2022-05-30 79: . undef ${var}
d8511a3d7c 2022-05-30 80: . endif
5062c9b6fc 2019-10-19 81: .endfor
716b0393df 2019-10-21 82:
716b0393df 2019-10-21 83: .undef ENABLED
67838bd249 2019-10-21 84: .unexport-env
67838bd249 2019-10-21 85: .export
ebafd89015 2019-10-21 86: #.info ${:!env!}