From owner-freebsd-ports@freebsd.org Thu Mar 14 07:52:26 2019 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BEC8115347BD for ; Thu, 14 Mar 2019 07:52:26 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 3E99E69D91 for ; Thu, 14 Mar 2019 07:52:26 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: by mailman.ysv.freebsd.org (Postfix) id F03E915347BA; Thu, 14 Mar 2019 07:52:25 +0000 (UTC) Delivered-To: ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B171015347B9 for ; Thu, 14 Mar 2019 07:52:25 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from mail.allbsd.org (mx-int.allbsd.org [IPv6:2001:2f0:104:e002::7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mail.allbsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1CDF469D8D; Thu, 14 Mar 2019 07:52:24 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from mail-d.allbsd.org (p2452109-ipngn10801funabasi.chiba.ocn.ne.jp [180.13.106.109]) (authenticated bits=56) by mail.allbsd.org (8.15.2/8.15.2) with ESMTPSA id x2E7plsj049828 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) (Client CN "/CN=mail.allbsd.org", Issuer "/C=US/O=Let's+20Encrypt/CN=Let's+20Encrypt+20Authority+20X3"); Thu, 14 Mar 2019 16:52:08 +0900 (JST) (envelope-from hrs@FreeBSD.org) Received: from alph.d.allbsd.org (alph.allbsd.org [192.168.0.10]) by mail-d.allbsd.org (8.15.2/8.15.2) with ESMTPS id x2E7phJT041116 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Thu, 14 Mar 2019 16:51:46 +0900 (JST) (envelope-from hrs@FreeBSD.org) Received: from localhost (localhost [[UNIX: localhost]]) (authenticated bits=0) by alph.d.allbsd.org (8.15.2/8.15.2) with ESMTPA id x2E7oQUn041094; Thu, 14 Mar 2019 16:50:28 +0900 (JST) (envelope-from hrs@FreeBSD.org) Date: Thu, 14 Mar 2019 16:50:10 +0900 (JST) Message-Id: <20190314.165010.1777227588049179733.hrs@allbsd.org> To: meta@FreeBSD.org Cc: ports@FreeBSD.org Subject: Re: loose dependency From: Hiroki Sato In-Reply-To: <20190314061242.ixvtakqiel4aa4r3@icepick.vmeta.jp> References: <20190314031726.aaspgwdcuithhgnc@icepick.vmeta.jp> <20190314.134014.2127053084940820202.hrs@allbsd.org> <20190314061242.ixvtakqiel4aa4r3@icepick.vmeta.jp> X-PGPkey-fingerprint: BDB3 443F A5DD B3D0 A530 FFD7 4F2C D3D8 2793 CF2D X-Mailer: Mew version 6.8 on Emacs 26.1 Mime-Version: 1.0 Content-Type: Multipart/Signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="--Security_Multipart(Thu_Mar_14_16_50_10_2019_969)--" Content-Transfer-Encoding: 7bit X-Greylist: Sender DNS name whitelisted, not delayed by milter-greylist-4.6.2 (mail.allbsd.org [133.31.130.41]); Thu, 14 Mar 2019 16:52:15 +0900 (JST) X-Spam-Status: No, score=-97.4 required=13.0 tests=CONTENT_TYPE_PRESENT, QENCPTR1,UNPARSEABLE_RELAY,URIBL_SC2_SURBL,URIBL_XS_SURBL, USER_IN_WHITELIST autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mx.allbsd.org X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Mar 2019 07:52:27 -0000 ----Security_Multipart(Thu_Mar_14_16_50_10_2019_969)-- Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Koichiro Iwao wrote in <20190314061242.ixvtakqiel4aa4r3@icepick.vmeta.jp>: me> On Thu, Mar 14, 2019 at 01:40:14PM +0900, Hiroki Sato wrote: me> > There is no easy solution to solve it completely because currently me> > package dependency is solved in a strict manner including package me> > names and version numbers, not only existence of specific files. me> > Creating multiple ports which depend on each software or using me> > FLAVORS to make it easier is a way to provide packages with every me> > possible combinations of dependency and let one to choose. me> me> Specifically talking, net/tigervnc is the case. Actually, the dependency me> is build dependency not runtime. ImageMagick is used to create multiple me> sizes of icons such as 24x24, 32x32, 48x48 during the build. Whichever me> versions of ImageMagick in the current ports tree can be used for the me> purpose. Once the port is built, ImageMagick is not required at all and me> can be uninstalled if no other packages depends on it. In this case BUILD_DEPENDS with bin/convert just works. It does not record package-level dependency and it does not matter that where bin/convert came from while you have to put a specific version of ImageMagick on the BUILD_DEPENDS line. An installed bin/convert will used if it exists already, and the specified version will be installed if not. One problem is that "a specific version" on the BUILD_DEPENDS line can be different from other ports. In that case, which version will be installed during the build can depend on the order of builds including other ports. We define Mk/bsd.default-versions.mk to make it consistent especially for runtime dependency. It should work for build-time dependency though I am not sure if it is worth doing. -- Hiroki ----Security_Multipart(Thu_Mar_14_16_50_10_2019_969)-- Content-Type: application/pgp-signature Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iEYEABECAAYFAlyKB7IACgkQTyzT2CeTzy2UtwCfcYCNgCM9oqPKEtY/5KZ5UXu0 p08AoIGb3FyjUo0HpdTqUMm31Lgh2qRx =xA6W -----END PGP SIGNATURE----- ----Security_Multipart(Thu_Mar_14_16_50_10_2019_969)----