bsd.confs.mk revision 290034
1139731Simp# $FreeBSD: head/share/mk/bsd.confs.mk 290034 2015-10-27 01:29:38Z bdrewery $
2131899Smarcel
3131899Smarcel.if !target(__<bsd.init.mk>__)
4131899Smarcel.error bsd.conf.mk cannot be included directly.
5131899Smarcel.endif
6131899Smarcel
7131899SmarcelCONFGROUPS?=	CONFS
8131899Smarcel
9131899Smarcel.if !target(buildconfig)
10131899Smarcel.for group in ${CONFSGROUPS}
11131899Smarcelbuildconfig: ${${group}}
12131899Smarcel.endfor
13131899Smarcel.endif
14131899Smarcel
15131899Smarcelall: buildconfig
16131899Smarcel
17131899Smarcel.if !target(installconfig)
18131899Smarcel.for group in ${CONFGROUPS}
19131899Smarcel.if defined(${group}) && !empty(${group})
20131899Smarcel
21131899Smarcel${group}OWN?=	${SHAREOWN}
22131899Smarcel${group}GRP?=	${SHAREGRP}
23131899Smarcel${group}MODE?=	${CONFMODE}
24131899Smarcel${group}DIR?=	${CONFIGDIR}/
25131899SmarcelSTAGE_SETS+=	${group}
26131899SmarcelSTAGE_DIR.${group}= ${STAGE_OBJTOP}${${group}DIR}
27131899Smarcel
28131899Smarcel_${group}CONFS=
29131899Smarcel.for cnf in ${${group}}
30131899Smarcel.if defined(${group}OWN_${cnf:T}) || defined(${group}GRP_${cnf:T}) || \
31131899Smarcel    defined(${group}MODE_${cnf:T}) || defined(${group}DIR_${cnf:T}) || \
32131899Smarcel    defined(${group}NAME_${cnf:T}) || defined(${group}NAME)
33131899Smarcel${group}OWN_${cnf:T}?=	${${group}OWN}
34131899Smarcel${group}GRP_${cnf:T}?=	${${group}GRP}
35131899Smarcel${group}MODE_${cnf:T}?=	${${group}MODE}
36131899Smarcel${group}DIR_${cnf:T}?=	${${group}DIR}
37131899Smarcel.if defined(${group}NAME)
38131899Smarcel${group}NAME_${cnf:T}?=	${${group}NAME}
39138212Speter.else
40131899Smarcel${group}NAME_${cnf:T}?=	${cnf:T}
41131899Smarcel.endif
42131899SmarcelSTAGE_AS_SETS+= ${cnf:T}
43138212SpeterSTAGE_AS_${cnf:T}= ${${group}NAME_${cnf:T}}
44138212Speter# XXX {group}OWN,GRP,MODE
45131899SmarcelSTAGE_DIR.${cnf:T}= ${STAGE_OBJTOP}${${group}DIR_${cnf:T}}
46131899Smarcelstage_as.${cnf:T}: ${cnf}
47131899Smarcel
48131899Smarcelinstallconfig: _${group}INS_${cnf:T}
49131899Smarcel_${group}INS_${cnf:T}: ${cnf}
50131899Smarcel	${INSTALL} -C -o ${${group}OWN_${.ALLSRC:T}} \
51131899Smarcel	    -g ${${group}GRP_${.ALLSRC:T}} -m ${${group}MODE_${.ALLSRC:T}} \
52131899Smarcel	    ${.ALLSRC} \
53138212Speter	    ${DESTDIR}${${group}DIR_${.ALLSRC:T}}/${${group}NAME_${.ALLSRC:T}}
54138212Speter.else
55138212Speter_${group}CONFS+= ${cnf}
56138212Speter.endif
57138212Speter.endfor
58138212Speter.if !empty(_${group}CONFS)
59138212Speterstage_files.${group}: ${_${group}CONFS}
60138212Speter
61138212Speterinstallconfig: _${group}INS
62138212Speter_${group}INS: ${_${group}CONFS}
63138212Speter.if defined(${group}NAME)
64138212Speter	${INSTALL} -C -o ${${group}OWN} -g ${${group}GRP} -m ${${group}MODE} \
65150647Speter	    ${.ALLSRC} ${DESTDIR}${${group}DIR}/${${group}NAME}
66138212Speter.else
67138212Speter	${INSTALL} -C -o ${${group}OWN} -g ${${group}GRP} -m ${${group}MODE} \
68138212Speter	    ${.ALLSRC} ${DESTDIR}${${group}DIR}/
69138212Speter.endif
70131899Smarcel.endif
71138212Speter
72138212Speter.endif # defined(${group}) && !empty(${group})
73138212Speter.endfor
74138212Speter
75138212Speter.endif # !target(installconfig)
76138212Speter
77138212Speter.if ${MK_STAGING} != "no"
78138212Speter.if !empty(STAGE_SETS)
79131899Smarcelbuildconfig: stage_files
80131899Smarcel.if !empty(STAGE_AS_SETS)
81131899Smarcelbuildconfig: stage_as
82131899Smarcel.endif
83131899Smarcel.endif
84138253Smarcel.endif
85131899Smarcel
86131899Smarcel