freebsd-ports/ports-mgmt/portmaster/Makefile
Stefan Eßer a18733148a ports-mgmt/portmaster: make CONFLICTS change catch more cases
As a performance optimization the list of conflicting ports was only
fetched if the port's Makefile contained a CONFLICTS* entry.

There are ports that only set some option defaults and then include
the Makefile of some generic port. No conflicts change was performed
in that case.

Fix the behavior by always checking all CONFLICTS definitions that
apply, even for ports that do not have such a line in their direct
Makefile. This removes a performance optimization, but is required to
correctly build and install ports that have dependencies that can be
satisfied by an alternative (e.g. ImageMagick6 is installed and the
port being built has a dependency on ImageMagick6-nox11, which does
not contain a CONFLICTS definition it its Makefile).
2021-04-08 22:31:18 +02:00

52 lines
1.4 KiB
Makefile

PORTNAME= portmaster
PORTVERSION= 3.19
PORTREVISION= 28
CATEGORIES= ports-mgmt
MAINTAINER= se@FreeBSD.org
COMMENT= Manage your ports without external databases or languages
LICENSE= BSD2CLAUSE
USE_GITHUB= yes
GH_ACCOUNT= freebsd
OPTIONS_DEFINE= BASH ZSH
OPTIONS_DEFAULT=BASH ZSH
PLIST_FILES= sbin/portmaster \
etc/portmaster.rc.sample \
man/man8/portmaster.8.gz
BASH_PLIST_FILES= etc/bash_completion.d/portmaster.sh
ZSH_PLIST_FILES= share/zsh/site-functions/_portmaster
NO_ARCH= yes
verify: checksum
do-build:
.for file in portmaster files/portmaster.rc.sample files/portmaster.8
@${REINPLACE_CMD} -e 's#/usr/local#${LOCALBASE}#g' \
-e 's#===>>> Version [0-9._]*#===>>> Version ${PKGVERSION}#' ${WRKSRC}/${file}
.endfor
do-install:
${INSTALL_SCRIPT} ${WRKSRC}/portmaster \
${STAGEDIR}${PREFIX}/sbin
${INSTALL_DATA} ${WRKSRC}/files/portmaster.rc.sample \
${STAGEDIR}${PREFIX}/etc
${INSTALL_MAN} ${WRKSRC}/files/portmaster.8 \
${STAGEDIR}${MAN8PREFIX}/man/man8
post-install-BASH-on:
${MKDIR} ${STAGEDIR}${PREFIX}/etc/bash_completion.d
${INSTALL_DATA} ${WRKSRC}/files/bash-completions \
${STAGEDIR}${PREFIX}/etc/bash_completion.d/portmaster.sh
post-install-ZSH-on:
${MKDIR} ${STAGEDIR}${PREFIX}/share/zsh/site-functions
${INSTALL_DATA} ${WRKSRC}/files/zsh-completions \
${STAGEDIR}${PREFIX}/share/zsh/site-functions/_portmaster
.include <bsd.port.mk>