1289085Sbapt# $FreeBSD: stable/11/share/mk/bsd.confs.mk 311201 2017-01-03 23:25:55Z bdrewery $
2289085Sbapt
3289085Sbapt.if !target(__<bsd.init.mk>__)
4289085Sbapt.error bsd.conf.mk cannot be included directly.
5289085Sbapt.endif
6289085Sbapt
7289085SbaptCONFGROUPS?=	CONFS
8289085Sbapt
9289085Sbapt.if !target(buildconfig)
10311199Sbdrewery.for group in ${CONFGROUPS}
11289085Sbaptbuildconfig: ${${group}}
12289085Sbapt.endfor
13289085Sbapt.endif
14289085Sbapt
15296121Sbdrewery.if !defined(_SKIP_BUILD)
16289085Sbaptall: buildconfig
17296121Sbdrewery.endif
18289085Sbapt
19289085Sbapt.if !target(installconfig)
20311199Sbdrewery.for group in ${CONFGROUPS}
21289085Sbapt.if defined(${group}) && !empty(${group})
22289085Sbapt
23289085Sbapt${group}OWN?=	${SHAREOWN}
24289085Sbapt${group}GRP?=	${SHAREGRP}
25289090Sbapt${group}MODE?=	${CONFMODE}
26290086Sbdrewery${group}DIR?=	${CONFDIR}
27311201SbdrewerySTAGE_SETS+=	${group:C,[/*],_,g}
28311201SbdrewerySTAGE_DIR.${group:C,[/*],_,g}= ${STAGE_OBJTOP}${${group}DIR}
29289085Sbapt
30289085Sbapt_${group}CONFS=
31289085Sbapt.for cnf in ${${group}}
32289085Sbapt.if defined(${group}OWN_${cnf:T}) || defined(${group}GRP_${cnf:T}) || \
33289085Sbapt    defined(${group}MODE_${cnf:T}) || defined(${group}DIR_${cnf:T}) || \
34289085Sbapt    defined(${group}NAME_${cnf:T}) || defined(${group}NAME)
35289085Sbapt${group}OWN_${cnf:T}?=	${${group}OWN}
36289085Sbapt${group}GRP_${cnf:T}?=	${${group}GRP}
37289085Sbapt${group}MODE_${cnf:T}?=	${${group}MODE}
38289085Sbapt${group}DIR_${cnf:T}?=	${${group}DIR}
39289085Sbapt.if defined(${group}NAME)
40289085Sbapt${group}NAME_${cnf:T}?=	${${group}NAME}
41289085Sbapt.else
42289085Sbapt${group}NAME_${cnf:T}?=	${cnf:T}
43289085Sbapt.endif
44289085SbaptSTAGE_AS_SETS+= ${cnf:T}
45289085SbaptSTAGE_AS_${cnf:T}= ${${group}NAME_${cnf:T}}
46289085Sbapt# XXX {group}OWN,GRP,MODE
47289085SbaptSTAGE_DIR.${cnf:T}= ${STAGE_OBJTOP}${${group}DIR_${cnf:T}}
48289085Sbaptstage_as.${cnf:T}: ${cnf}
49289085Sbapt
50289085Sbaptinstallconfig: _${group}INS_${cnf:T}
51289085Sbapt_${group}INS_${cnf:T}: ${cnf}
52289085Sbapt	${INSTALL} -C -o ${${group}OWN_${.ALLSRC:T}} \
53289085Sbapt	    -g ${${group}GRP_${.ALLSRC:T}} -m ${${group}MODE_${.ALLSRC:T}} \
54289085Sbapt	    ${.ALLSRC} \
55289085Sbapt	    ${DESTDIR}${${group}DIR_${.ALLSRC:T}}/${${group}NAME_${.ALLSRC:T}}
56289085Sbapt.else
57289085Sbapt_${group}CONFS+= ${cnf}
58289085Sbapt.endif
59289085Sbapt.endfor
60289085Sbapt.if !empty(_${group}CONFS)
61289085Sbaptstage_files.${group}: ${_${group}CONFS}
62289085Sbapt
63289085Sbaptinstallconfig: _${group}INS
64289085Sbapt_${group}INS: ${_${group}CONFS}
65289085Sbapt.if defined(${group}NAME)
66289085Sbapt	${INSTALL} -C -o ${${group}OWN} -g ${${group}GRP} -m ${${group}MODE} \
67289085Sbapt	    ${.ALLSRC} ${DESTDIR}${${group}DIR}/${${group}NAME}
68289085Sbapt.else
69289085Sbapt	${INSTALL} -C -o ${${group}OWN} -g ${${group}GRP} -m ${${group}MODE} \
70289391Sbdrewery	    ${.ALLSRC} ${DESTDIR}${${group}DIR}/
71289085Sbapt.endif
72289085Sbapt.endif
73289085Sbapt
74289085Sbapt.endif # defined(${group}) && !empty(${group})
75289085Sbapt.endfor
76289085Sbapt
77289085Sbapt.endif # !target(installconfig)
78289085Sbapt
79290034Sbdrewery.if ${MK_STAGING} != "no"
80290034Sbdrewery.if !empty(STAGE_SETS)
81290034Sbdrewerybuildconfig: stage_files
82290034Sbdrewery.if !empty(STAGE_AS_SETS)
83290034Sbdrewerybuildconfig: stage_as
84289085Sbapt.endif
85289085Sbapt.endif
86290034Sbdrewery.endif
87290034Sbdrewery
88