Date: Wed, 13 Jun 2012 08:11:41 +0000 (UTC) From: Doug Barton <dougb@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r237002 - user/dougb/portmaster Message-ID: <201206130811.q5D8BfYY005920@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dougb Date: Wed Jun 13 08:11:41 2012 New Revision: 237002 URL: http://svn.freebsd.org/changeset/base/237002 Log: Add code to detect dependency loops created by moving part of a port into another port, and CONFLICT'ing on previous versions of that port (ala textproc/p5-XML-SAX -> p5-XML-SAX-Base). When a loop is detected suggest that the user try pkg_updating. Modified: user/dougb/portmaster/portmaster Modified: user/dougb/portmaster/portmaster ============================================================================== --- user/dougb/portmaster/portmaster Wed Jun 13 08:00:32 2012 (r237001) +++ user/dougb/portmaster/portmaster Wed Jun 13 08:11:41 2012 (r237002) @@ -2495,11 +2495,18 @@ dependency_check () { confl_p=`pkg_info -I $glob 2>/dev/null` if [ -n "$confl_p" ]; then confl_p=${confl_p%% *} + d_port="$pd/`origin_from_pdb $confl_p`" + + if [ "${d_port#$pd/}" = "$portdir" ]; then + echo -e "\n===>>> $origin seems to depend on $portdir" + echo ' which looks like a dependency loop' + fail "Try pkg_updating $portdir" + fi + echo '' echo "===>>> The dependency for ${origin}" echo " seems to be handled by $confl_p" echo '' - d_port="$pd/`origin_from_pdb $confl_p`" fi done fi
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201206130811.q5D8BfYY005920>