From owner-freebsd-ports@FreeBSD.ORG Sun Nov 6 23:05:29 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 F1E7816A41F for ; Sun, 6 Nov 2005 23:05:28 +0000 (GMT) (envelope-from ringworm01@gmail.com) Received: from xproxy.gmail.com (xproxy.gmail.com [66.249.82.204]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7681143D45 for ; Sun, 6 Nov 2005 23:05:28 +0000 (GMT) (envelope-from ringworm01@gmail.com) Received: by xproxy.gmail.com with SMTP id s9so269452wxc for ; Sun, 06 Nov 2005 15:05:28 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:from:to:subject:date:user-agent:cc:references:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:message-id; b=DJJ3du4sMztsGm2s+GEhEz62P2HF9zBjfjeXOh+Vtmb982WkxSmaN8C0R/xLpHvjO9yeGD/Siz6hmPvJSl5BlfYPtIpcLi+7nGIji6xPHN65uIFYq1g5F7iB8X4miGAGZQXkoLNPJN+cfVstGh/uDdxtY3sjEK97gPDEMuA3Wgc= Received: by 10.70.28.19 with SMTP id b19mr4317369wxb; Sun, 06 Nov 2005 15:05:27 -0800 (PST) Received: from ?192.168.1.10? ( [71.102.14.129]) by mx.gmail.com with ESMTP id i39sm3956417wxd.2005.11.06.15.05.26; Sun, 06 Nov 2005 15:05:27 -0800 (PST) From: "Michael C. Shultz" To: freebsd-ports@freebsd.org Date: Sun, 6 Nov 2005 14:56:42 -0800 User-Agent: KMail/1.8.3 References: <20051106221047.GC36095@schtroumpf.homeunix.net> In-Reply-To: <20051106221047.GC36095@schtroumpf.homeunix.net> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200511061456.44530.ringworm01@gmail.com> Cc: "Ian D. Leroux" Subject: Re: java/jdk14, BUILD_DEPENDS, and portmanager -u 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, 06 Nov 2005 23:05:29 -0000 On Sunday 06 November 2005 14:10, Ian D. Leroux wrote: > I have a native build of jdk14 (jdk-1.4.2p7_2) installed on my system, > and so far whenever that port has needed upgrading it's been able to use > the existing jdk to build the new one (I deinstalled linux-sun-jdk some > time ago). While running portmanager -u today I noticed it trying to > upgrade the jdk on the grounds that it has an out-of-date dependency on > > linux-sun-jdk (which is "missing"). Sure enough: > > cd /usr/ports/java/jdk14 && make -V BUILD_DEPENDS portmanager just went through a major change with version 0.3.2, If I understand your post correctly there might be a bug in portmanager, here is how it "should work": if a port has an out of date RUN_DEPENDS LIB_DEPENDS or DEPENDS then it gets picked for rebuilding, but is'nt actually built until all of the port's BUILD_DEPENDS EXTRACT_DEPENDS PATCH_DEPENDS FETCH_DEPENDS and all of the run depends are up to date. Please try cd /usr/ports/java/jdk14 && make -V RUN_DEPENDS -V LIB_DEPENDS -V DEPENDS If any of those are out of date then that is probably the real reason why jdk14 is being updated and this is just a reporting problem. For the bad news though, if linux-sun-jdk is a BUILD_DEPENDS then portmanager is going to expect it to be installed before building java/jdk14. If there is another way to build that port the proper place to fix this problem is in that port's Makefile. Maybe by making the BUILD_DEPEND contitional on the existanace of its own existing JDK? Mike > > [snip] > /usr/local/jdk1.4.2/bin/javac:/usr/ports/java/linux-sun-jdk14 > [snip] > > This is presumably because of the line: > > BUILD_DEPENDS+= ${JDK14DIR}/bin/javac:${PORTSDIR}/java/linux-sun-jdk14 > > I can see why this is so: if there is no jdk14 installed the correct > thing to do is bootstrap from the linux version. On the other hand, > /usr/local/jdk1.4.2/bin/javac was installed by the native, not the linux > build, the linux build is not needed to (re)build jdk14, and the linux > build is irrelevant to determining whether or not jdk14 is up-to-date > (unlike, say, a build dependency on a library). The net result is that > portmanager will refuse to update anything that depends on java until > linux-sun-jdk gets installed. I find it odd that this has never bitten > me before, btw. Have there been any recent relevant changes? > > I'm not sure whether this is problem with the makefile, with > portmanager, or with my understanding, so I'm asking here before filing > a PR (please redirect me to the appropriate forum if this is OT). > > Ian Leroux > _______________________________________________ > freebsd-ports@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-ports > To unsubscribe, send any mail to "freebsd-ports-unsubscribe@freebsd.org"