ports/146787: create a treadle to prevent early-check for port conflicts
Elijah
ilya at el-crane.net
Fri May 21 07:10:04 UTC 2010
>Number: 146787
>Category: ports
>Synopsis: create a treadle to prevent early-check for port conflicts
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Fri May 21 07:10:03 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator: Elijah
>Release: 8.0-STABLE #0 r206975M
>Organization:
>Environment:
>Description:
Discussion here:
http://lists.freebsd.org/pipermail/freebsd-questions/2010-January/211128.html
beliefs like mine
http://lists.freebsd.org/pipermail/freebsd-questions/2010-January/211194.html
CONFLICTS_AT_INSTALL may not sounds good, but I think that's idea is a good composition for this situation
>How-To-Repeat:
[ilya] /usr/ports/devel/llvm-devel# make checksum
===> llvm-devel-2.8.r103179_1 conflicts with installed package(s):
llvm-2.7
They install files into the same place.
Please remove them first with pkg_delete(1).
*** Error code 1
Stop in /usr/ports/devel/llvm-devel.
And disabling conflicts resolution via DISABLE_CONFLICTS is a dirty solution.
>Fix:
--- bsd.port.mk.orig 2010-05-21 14:42:02.000000000 +0900
+++ bsd.port.mk 2010-05-21 15:57:55.000000000 +0900
@@ -3805,7 +3805,10 @@
.if !target(check-conflicts)
check-conflicts:
-.if defined(CONFLICTS) && !defined(DISABLE_CONFLICTS)
+.if defined(_INSTALL_SEQ) && defined(CONFLICTS_AT_INSTALL)
+ undef CONFLICTS_AT_INSTALL;
+.endif
+.if defined(CONFLICTS) && !defined(DISABLE_CONFLICTS) && !defined(CONFLICTS_AT_INSTALL)
@found=`${PKG_INFO} -I ${CONFLICTS:C/.+/'&'/} 2>/dev/null | ${AWK} '{print $$1}'`; \
conflicts_with=; \
for entry in $${found}; do \
@@ -4350,8 +4353,9 @@
_BUILD_SEQ= build-message pre-build pre-build-script do-build \
post-build post-build-script
_INSTALL_DEP= build
-_INSTALL_SEQ= install-message run-depends lib-depends apply-slist pre-install \
- pre-install-script generate-plist check-already-installed
+_INSTALL_SEQ= install-message run-depends lib-depends apply-slist check-conflicts \
+ pre-install pre-install-script generate-plist \
+ check-already-installed
_INSTALL_SUSEQ= check-umask install-mtree pre-su-install \
pre-su-install-script create-users-groups do-install \
install-desktop-entries post-install post-install-script \
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list