diff options
Diffstat (limited to 'share/mk/bsd.man.mk')
| -rw-r--r-- | share/mk/bsd.man.mk | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/share/mk/bsd.man.mk b/share/mk/bsd.man.mk index 36d2cf1a1433..1591a3e0905e 100644 --- a/share/mk/bsd.man.mk +++ b/share/mk/bsd.man.mk @@ -97,6 +97,14 @@ manlinksinstall: .PHONY all-man: +# Take groups from both MANGROUPS and MANGROUPS.yes, to allow syntax like +# MANGROUPS.${MK_FOO}=FOO. Sort and uniq the list of groups in case of +# duplicates. +.if defined(MANGROUPS) || defined(MANGROUPS.yes) +MANGROUPS:=${MANGROUPS} ${MANGROUPS.yes} +MANGROUPS:=${MANGROUPS:O:u} +.endif + .for __group in ${MANGROUPS} realmaninstall: realmaninstall-${__group} @@ -105,15 +113,16 @@ manlinksinstall: manlinksinstall-${__group} ${__group}OWN?= ${MANOWN} ${__group}GRP?= ${MANGRP} ${__group}MODE?= ${MANMODE} +${__group}PACKAGE?= ${PACKAGE:Uutilities} # Tag processing is only done for NO_ROOT installs. .if defined(NO_ROOT) .if !defined(${__group}TAGS) || ! ${${__group}TAGS:Mpackage=*} -.if ${MK_MANSPLITPKG} == "no" -${__group}TAGS+= package=${${__group}PACKAGE:U${PACKAGE:Uutilities}} +.if ${MK_MANSPLITPKG} == "no" || ${${__group}PACKAGE:M*-man} +${__group}TAGS+= package=${${__group}PACKAGE} .else -${__group}TAGS+= package=${${__group}PACKAGE:U${PACKAGE:Uutilities}}-man +${__group}TAGS+= package=${${__group}PACKAGE}-man .endif .endif @@ -168,7 +177,18 @@ ${__target}: ${MANSRC.${__page:T}:U${__page}} .endfor .endfor .else -all-man: ${${__group}} +.for __page in ${${__group}} +.if defined(MANSRC.${__page:T}) +.for __target in ${__page:T:S/:/\:/g} +all-man: ${__target} +CLEANFILES+= ${__target} +${__target}: ${MANSRC.${__page:T}} + ${CP} ${.ALLSRC} ${.TARGET} +.endfor +.else +all-man: ${__page} +.endif +.endfor .endif .endif .endif # defined(MANFILTER) |
