diff options
author | ru <ru@FreeBSD.org> | 2001-04-07 11:13:46 +0000 |
---|---|---|
committer | ru <ru@FreeBSD.org> | 2001-04-07 11:13:46 +0000 |
commit | 214ce2c82faaecaee72a1a6707f999bb099541a5 (patch) | |
tree | bb09775436d5de260af9346a7c1de97876d31a63 /share/mk/bsd.prog.mk | |
parent | 03f530375fd1f5bead8254ddaa2f5633d4bde401 (diff) | |
download | FreeBSD-src-214ce2c82faaecaee72a1a6707f999bb099541a5.zip FreeBSD-src-214ce2c82faaecaee72a1a6707f999bb099541a5.tar.gz |
Introduce SCRIPTS for bsd.prog.mk. See bsd.README for details.
Idea stolen from NetBSD.
Reviewed by: bde
Diffstat (limited to 'share/mk/bsd.prog.mk')
-rw-r--r-- | share/mk/bsd.prog.mk | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/share/mk/bsd.prog.mk b/share/mk/bsd.prog.mk index 5fcd08a..7d281b8 100644 --- a/share/mk/bsd.prog.mk +++ b/share/mk/bsd.prog.mk @@ -68,9 +68,9 @@ MAN1= ${MAN} .MAIN: all .if !defined(NOMAN) -all: objwarn ${PROG} all-man _SUBDIR +all: objwarn ${PROG} ${SCRIPTS} all-man _SUBDIR .else -all: objwarn ${PROG} _SUBDIR +all: objwarn ${PROG} ${SCRIPTS} _SUBDIR .endif CLEANFILES+= ${PROG} ${OBJS} @@ -132,6 +132,33 @@ realinstall: beforeinstall done; true .endif +.if defined(SCRIPTS) && !empty(SCRIPTS) +realinstall: _scriptsinstall + +SCRIPTSDIR?= ${BINDIR} +SCRIPTSOWN?= ${BINOWN} +SCRIPTSGRP?= ${BINGRP} +SCRIPTSMODE?= ${BINMODE} + +.for script in ${SCRIPTS} +.if defined(SCRIPTSNAME) +SCRIPTSNAME_${script:T}?= ${SCRIPTSNAME} +.else +SCRIPTSNAME_${script:T}?= ${script:T:R} +.endif +SCRIPTSDIR_${script:T}?= ${SCRIPTSDIR} +SCRIPTSOWN_${script:T}?= ${SCRIPTSOWN} +SCRIPTSGRP_${script:T}?= ${SCRIPTSGRP} +SCRIPTSMODE_${script:T}?= ${SCRIPTSMODE} +_scriptsinstall: SCRIPTSINS_${script:T} +SCRIPTSINS_${script:T}: ${script} + ${INSTALL} ${COPY} -o ${SCRIPTSOWN_${.ALLSRC:T}} \ + -g ${SCRIPTSGRP_${.ALLSRC:T}} -m ${SCRIPTSMODE_${.ALLSRC:T}} \ + ${_INSTALLFLAGS} ${.ALLSRC} \ + ${DESTDIR}${SCRIPTSDIR_${.ALLSRC:T}}/${SCRIPTSNAME_${.ALLSRC:T}} +.endfor +.endif + install: afterinstall _SUBDIR .if !defined(NOMAN) afterinstall: realinstall maninstall |