Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 Jun 2008 14:05:54 GMT
From:      James Kelly <jjk@tilted.net>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/124271: Portmaster can miss deps if previous port has CONFLICTS and current one does not
Message-ID:  <200806041405.m54E5sp4035981@www.freebsd.org>
Resent-Message-ID: <200806041410.m54EA4it041271@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         124271
>Category:       ports
>Synopsis:       Portmaster can miss deps if previous port has CONFLICTS and current one does not
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jun 04 14:10:03 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator:     James Kelly
>Release:        6.3-RELEASE-p2
>Organization:
Tilted Planet, Ltd.
>Environment:
FreeBSD crinoid.build.psq.ord.tilted.net 6.3-RELEASE-p2 FreeBSD 6.3-RELEASE-p2 #4: Mon Apr 28 07:37:08 CDT 2008     jjk@stubby.tilted.net:/usr/build/FreeBSD_6_3/obj/amd64/usr/build/FreeBSD_6_3/src/sys/DELLYKINS  amd64
>Description:
When checking dependencies of a port and the port has multiple
dependencies, the conflicts list of the previous port will be re-used
if the current port does not have any conflicts.  This can result in
not installing some dependencies.  It may just be runtime-dependencies
that it can miss -- it only showed up for me when working on
runtime-dependencies in databases/mytop.  Most likely though, it can
show up in all forms of dependency resolution.
>How-To-Repeat:
"sudo portmaster databases/mytop" on a system without all of it's runtime deps installed.
>Fix:
unset or set conflicts to a blank value before looking for CONFLICTS in the probed port's Makefile.  I've attached a patch to set conflicts to a blank value, which fixes this problem for me.

Patch attached with submission follows:

Index: ports/ports-mgmt/portmaster/files/portmaster.sh.in
===================================================================
--- ports/ports-mgmt/portmaster/files/portmaster.sh.in	(revision 2275)
+++ ports/ports-mgmt/portmaster/files/portmaster.sh.in	(revision 2276)
@@ -1453,6 +1453,7 @@
 		[ -z "$URB_YES" ] &&
 			case "$CUR_DEPS" in *:${origin}:*) continue ;; esac
 
+		conflicts=''
 		if pm_cd $d_port; then
 			grep -ql ^CONFLICTS Makefile &&
 				conflicts=`pm_make_b -V CONFLICTS`


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200806041405.m54E5sp4035981>