xref: /netbsd-src/share/mk/bsd.files.mk (revision 3b435a73967be44dfb4a27315acd72bfacde430c)
1#	$NetBSD: bsd.files.mk,v 1.10 1999/09/04 21:48:33 fredb Exp $
2
3# This file can be included multiple times.  It clears the definition of
4# FILES at the end so that this is possible.
5
6.PHONY:		filesinstall
7realinstall:	filesinstall
8
9.if defined(FILES) && !empty(FILES)
10FILESDIR?=${BINDIR}
11FILESOWN?=${BINOWN}
12FILESGRP?=${BINGRP}
13FILESMODE?=${NONBINMODE}
14.for F in ${FILES}
15FILESDIR_${F}?=${FILESDIR}
16FILESOWN_${F}?=${FILESOWN}
17FILESGRP_${F}?=${FILESGRP}
18FILESMODE_${F}?=${FILESMODE}
19.if defined(FILESNAME)
20FILESNAME_${F} ?= ${FILESNAME}
21.else
22FILESNAME_${F} ?= ${F:T}
23.endif
24filesinstall:: ${DESTDIR}${FILESDIR_${F}}/${FILESNAME_${F}}
25.if !defined(UPDATE)
26.PHONY: ${DESTDIR}${FILESDIR_${F}}/${FILESNAME_${F}}
27.endif
28.if !defined(BUILD) && !make(all) && !make(${F})
29${DESTDIR}${FILESDIR_${F}}/${FILESNAME_${F}}: .MADE
30.endif
31
32.PRECIOUS: ${DESTDIR}${FILESDIR_${F}}/${FILESNAME_${F}}
33${DESTDIR}${FILESDIR_${F}}/${FILESNAME_${F}}: ${F}
34	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} \
35	    -o ${FILESOWN_${F}} -g ${FILESGRP_${F}} -m ${FILESMODE_${F}} \
36	    ${.ALLSRC} ${.TARGET}
37.endfor
38.endif
39
40.if !target(filesinstall)
41filesinstall::
42.endif
43
44FILES:=
45