4b894ef57b
stuff duplication by expressing it in terms of <bsd.files.mk>. Allow for multiple inclusion of <bsd.files.mk> by clearing ${FILES} at the end, and using FILES+= rather than FILES= in <bsd.info.mk>.
44 lines
1.1 KiB
Makefile
44 lines
1.1 KiB
Makefile
# $NetBSD: bsd.files.mk,v 1.8 1999/02/11 13:25:42 tv Exp $
|
|
|
|
# This file can be included multiple times. It clears the definition of
|
|
# FILES at the end so that this is possible.
|
|
|
|
.PHONY: filesinstall
|
|
realinstall: filesinstall
|
|
|
|
.if defined(FILES) && !empty(FILES)
|
|
FILESDIR?=${BINDIR}
|
|
FILESOWN?=${BINOWN}
|
|
FILESGRP?=${BINGRP}
|
|
FILESMODE?=${NONBINMODE}
|
|
.for F in ${FILES}
|
|
FILESDIR_${F}?=${FILESDIR}
|
|
FILESOWN_${F}?=${FILESOWN}
|
|
FILESGRP_${F}?=${FILESGRP}
|
|
FILESMODE_${F}?=${FILESMODE}
|
|
.if defined(FILESNAME)
|
|
FILESNAME_${F} ?= ${FILESNAME}
|
|
.else
|
|
FILESNAME_${F} ?= ${F:T}
|
|
.endif
|
|
filesinstall:: ${DESTDIR}${FILESDIR_${F}}/${FILESNAME_${F}}
|
|
.if !defined(UPDATE)
|
|
.PHONY: ${DESTDIR}${FILESDIR_${F}}/${FILESNAME_${F}}
|
|
.endif
|
|
.if !defined(BUILD)
|
|
${DESTDIR}${FILESDIR_${F}}/${FILESNAME_${F}}: .MADE
|
|
.endif
|
|
|
|
.PRECIOUS: ${DESTDIR}${FILESDIR_${F}}/${FILESNAME_${F}}
|
|
${DESTDIR}${FILESDIR_${F}}/${FILESNAME_${F}}: ${F}
|
|
${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o ${FILESOWN_${F}} \
|
|
-g ${FILESGRP_${F}} -m ${FILESMODE_${F}} ${.ALLSRC} ${.TARGET}
|
|
.endfor
|
|
.endif
|
|
|
|
.if !target(filesinstall)
|
|
filesinstall::
|
|
.endif
|
|
|
|
FILES:=
|