From owner-freebsd-ports@FreeBSD.ORG Sun Jul 29 02:14:36 2007 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D837A16A4AB for ; Sun, 29 Jul 2007 02:14:36 +0000 (UTC) (envelope-from ota@j.email.ne.jp) Received: from mail.asahi-net.or.jp (mail1.asahi-net.or.jp [202.224.39.197]) by mx1.freebsd.org (Postfix) with ESMTP id 83F3813C48D for ; Sun, 29 Jul 2007 02:14:36 +0000 (UTC) (envelope-from ota@j.email.ne.jp) Received: from dynabook-freebsd.advok.com (pool-141-151-95-122.phlapa.east.verizon.net [141.151.95.122]) by mail.asahi-net.or.jp (Postfix) with ESMTP id 5DB3F4F652; Sun, 29 Jul 2007 11:14:33 +0900 (JST) Date: Sat, 28 Jul 2007 22:14:28 -0400 From: Yoshihiro Ota To: "Matthew D. Fuller" Message-Id: <20070728221428.8539106d.ota@j.email.ne.jp> In-Reply-To: <20070728155935.GT21345@over-yonder.net> References: <20070726011654.cec378be.ota@j.email.ne.jp> <46A866BE.1000407@u.washington.edu> <20070726233610.e536c2e2.ota@j.email.ne.jp> <46A9B112.7040408@u.washington.edu> <20070727214847.6708a918.ota@j.email.ne.jp> <20070728155935.GT21345@over-yonder.net> X-Mailer: Sylpheed 2.4.0 (GTK+ 2.10.12; i386-portbld-freebsd6.1) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: Garrett Cooper , freebsd-ports@freebsd.org Subject: Re: Call for testers for yet another ports upgrade program, ports+ X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 29 Jul 2007 02:14:36 -0000 On Sat, 28 Jul 2007 10:59:36 -0500 "Matthew D. Fuller" wrote: > On Fri, Jul 27, 2007 at 09:48:47PM -0400 I heard the voice of > Yoshihiro Ota, and lo! it spake thus: > > > > Q. Is it safe to assume all dependencies are STATIC? > > A. Yes, it is. > > No, it's not. Lots of ports change dependancies based on what's > installed, so if you install one thing you have to assume that any > other thing you intend to build in the future may change its list > because of that. For a trivial demonstration, look at how many use > the ".if ${HAVE_GNOME:Msomething}" pattern. It doesn't matter how many you have. There are only finite number of ports and configurations. You will finish configuring at one point. With GNU extension, one can write makefile dependencies such that it keeps tracking and generating makefiles until all ports to be installed are configured. The key is how one will process /var/db/ports/* files. I'd say it wouldn't be an easy one, though. Ports+ doesn't do it, yet. Check the link below if you'd like to know more. The 2nd sentence explains the concept of doing this. Remaking Makefiles: http://uw713doc.sco.com/cgi-bin/info2html?(make.info)Remaking%2520Makefiles&lang=en Hiro