From owner-freebsd-ports@FreeBSD.ORG Fri Aug 5 07:05:17 2005 Return-Path: X-Original-To: freebsd-ports@freebsd.org Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2D11316A41F for ; Fri, 5 Aug 2005 07:05:17 +0000 (GMT) (envelope-from vd@datamax.bg) Received: from jengal.datamax.bg (jengal.datamax.bg [82.103.104.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id B822143D46 for ; Fri, 5 Aug 2005 07:05:16 +0000 (GMT) (envelope-from vd@datamax.bg) Received: from sinanica.bg.datamax (sinanica.bg.datamax [192.168.10.1]) by jengal.datamax.bg (Postfix) with QMQP id BDD3E87C8 for ; Fri, 5 Aug 2005 10:05:13 +0300 (EEST) Received: (nullmailer pid 62594 invoked by uid 1004); Fri, 05 Aug 2005 07:05:13 -0000 Date: Fri, 5 Aug 2005 10:05:13 +0300 From: Vasil Dimov To: freebsd-ports@freebsd.org Message-ID: <20050805070513.GA60681@sinanica.bg.datamax> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Kj7319i9nmIyA2yE" Content-Disposition: inline X-OS: FreeBSD 5.4-STABLE User-Agent: Mutt/1.5.9i Subject: The right way to depend on a package's extra feature X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: vd@datamax.bg List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Aug 2005 07:05:17 -0000 --Kj7319i9nmIyA2yE Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi list, What it the right way to make a port that depends on other port, but that other port must be built with some extra feature? For example, imagine we have port "A" that installs /foo/bar/great_feature only if it is build with 'make WITH_GREAT_FEATURE=yes' Then we have port "B" that happens to depend on /foo/bar/great_feature. You see, there are two problems here: 1. We cannot pass WITH_GREAT_FEATURE=yes via the RUN_DEPENDS technology, only the target may be specified: RUN_DEPENDS=/file:portdir:target needed command: make -C portdir WITH_GREAT_FEATURE=yes target 2. Port A may have already been installed without WITH_GREAT_FEATURE=yes This will cause make WITH_GREAT_FEATURE=yes install in A's dir to fail with error "already installed" needed command: portupgrade -f -m WITH_GREAT_FEATURE=yes /var/db/pkg/A (huh! we used portupgrade, not very nice...) Any suggestions? Did I miss something? --Kj7319i9nmIyA2yE Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- iD8DBQFC8w+oFw6SP/bBpCARAsgOAKCS0T8f9oGya60fxT7P9RtETRFsSwCfdCsq 9fjJZkBTITLMNx5aVyXE8Ow= =CUed -----END PGP SIGNATURE----- --Kj7319i9nmIyA2yE--