Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Aug 2006 02:39:09 +0200 (CEST)
From:      Matthias Andree <matthias.andree@gmx.de>
To:        FreeBSD-gnats-submit@freebsd.org
Cc:        ports@freebsd.org, portmgr@freebsd.org
Subject:   DESTDIR silently breaks CONFLICTS 
Message-ID:  <20060820003909.8BF0E35@libertas.emma.line.org>

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

>Submitter-Id:	current-users
>Originator:	Matthias Andree
>Organization:	
>Confidential:	no 
>Synopsis:	DESTDIR silently breaks CONFLICTS 
>Severity:	critical 
>Priority:	high 
>Category:	ports 
>Class:		sw-bug 
>Release:	FreeBSD 6.1-RELEASE-p3 i386
>Environment:
System: FreeBSD libertas.emma.line.org 6.1-RELEASE-p3 FreeBSD 6.1-RELEASE-p3 #13: Sat Jul 15 11:21:56 CEST 2006 toor@libertas.emma.line.org:/usr/obj/usr/src/sys/MA6 i386


	
>Description:
The new DESTDIR scheme in ports/Mk/bsd.port.mk *silently* breaks CONFLICTS,
ports built with default (empty) DESTDIR have no CONFLICTS recorded.

Cause: DESTDIR isn't defined by default, hence this part in ports/Mk/bsd.port.mk
lines 2304 ff.:

# Does the pkg_create tool support conflict checking?
# XXX Slow?
.if !defined(PKGINSTALLVER)
PKGINSTALLVER!= ${CHROOT} ${DESTDIR} ${PKG_INFO} -P 2>/dev/null | ${SED} -e 's/.*: //'
.endif

expands to:

PKGINSTALLVER!= chroot  /usr/sbin/pkg_info -P | sed -e 's/.*: //'

which causes chroot to complain "chroot: /usr/sbin/pkg_info: Not a directory"
- however this message is usually discarded.

You can check this (DESTDIR must not be set) easily with:

$ cd /usr/ports/security/openvpn # this isn't specific to OpenVPN
                                 # but must happen in some port directory
$ pkg_info -P
Package tools revision: 20040629
$ make -V DESTDIR

$ make -V PKGINSTALLVER

$ make -V DISABLE_CONFLICTS
YES

	
>How-To-Repeat:
	
>Fix:
Either set a reasonable default for DESTDIR, or omit the CHROOT if DESTDIR is
an empty string.
	



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