From owner-freebsd-hackers@FreeBSD.ORG Thu Jul 19 07:18:24 2007 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 9E68A16A40F; Thu, 19 Jul 2007 07:18:24 +0000 (UTC) (envelope-from alexander@leidinger.net) Received: from redbull.bpaserver.net (redbullneu.bpaserver.net [213.198.78.217]) by mx1.freebsd.org (Postfix) with ESMTP id 2A65313C4C6; Thu, 19 Jul 2007 07:18:24 +0000 (UTC) (envelope-from alexander@leidinger.net) Received: from outgoing.leidinger.net (p54A56A79.dip.t-dialin.net [84.165.106.121]) by redbull.bpaserver.net (Postfix) with ESMTP id D6E2C2E23E; Thu, 19 Jul 2007 09:18:14 +0200 (CEST) Received: from deskjail (deskjail.Leidinger.net [192.168.1.109]) by outgoing.leidinger.net (Postfix) with ESMTP id DF7E45B5B7F; Thu, 19 Jul 2007 09:16:02 +0200 (CEST) Date: Thu, 19 Jul 2007 09:19:52 +0200 From: Alexander Leidinger To: Stephen Montgomery-Smith Message-ID: <20070719091952.71a9e26e@deskjail> In-Reply-To: <469E2DB3.8080605@math.missouri.edu> References: <469D62D3.70908@math.missouri.edu> <20070718111920.43c198e3@deskjail> <469E2DB3.8080605@math.missouri.edu> X-Mailer: Claws Mail 2.9.2 (GTK+ 2.10.13; i386-portbld-freebsd7.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BPAnet-MailScanner-Information: Please contact the ISP for more information X-BPAnet-MailScanner: Found to be clean X-BPAnet-MailScanner-SpamCheck: not spam, SpamAssassin (not cached, score=-14.9, required 8, BAYES_00 -15.00, DKIM_POLICY_SIGNSOME 0.00, RDNS_DYNAMIC 0.10) X-BPAnet-MailScanner-From: alexander@leidinger.net X-Spam-Status: No X-Mailman-Approved-At: Thu, 19 Jul 2007 13:04:48 +0000 Cc: ports@freebsd.org, freebsd-hackers@freebsd.org Subject: Re: Slight problem with make actual-package-depends with ports X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Jul 2007 07:18:24 -0000 Quoting Stephen Montgomery-Smith (Wed, 18 Jul 2007 10:11:47 -0500): > Alexander Leidinger wrote: > > Quoting Stephen Montgomery-Smith (Tue, 17 Jul 2007 19:46:11 -0500): > > > >> I appreciate that most people won't have this problem, but it has bitten me. > >> > >> After you have made and installed a port, but don't clean it, and then > >> made a bunch of other ports, if you go back to the original port and > >> then do "make package", then +CONTENTS can be a bit messed up for the > >> package. This is because the creation of other ports might disturb > > > > Can you please give an example what "messed up" means in this context, > > e.g. post a diff between a good an a bad contents file? And what > > actions you did to get this difference? > > > >> _LIB_RUN_DEPENDS and might put in some extra entries in +CONTENTS. > > > > You mean that if you create a leaf package and then rebuild a package > > which is in the middle of the dependency tree with options which change > > the dependency graph of the leaf package you get problems? > > > > If yes: this has to be expected. You need to rebuild the packages in > > the right order. > > In other words, you have to perform the "make package" right after the > "make install" before you install any other ports. Otherwise you have > to use "pkg_create -b" (which I have recently started doing). I think the old version of getting the package dependency should fail in a similar way if you don't issue "make package" before installing other ports (where you change the options in a way that the dependency list changes). > >> This happens to me because I make all my ports on one machine and then > >> copy them as packages to other machines. Then on the other machines, > >> the structure of /var/db/pkg gets a bit messed up and pkg_delete -r > >> malfunctions. > > > > I have a lot of jails where I use the packages build in other jails. I > > haven't seen a problem there. The package install doesn't change the > > +CONTENTS files, so /var/db/pkg should be messed up on the build > > machine too... > > > >> It seems to me that the cure is to slightly change "make > >> actual-package-depends" so that if the port is already installed, it > >> just uses +CONTENTS. > > > > This is wrong. What if you have a port installed and you want to > > rebuild the same version with other OPTIONS which changes the +CONTENTS > > file? If I read your patch right, it will use the wrong contents... > > The other option (to allow the users to do "make package" much later > than "make install") would be to have two different > actual-package-depends, one for "make install", and the other for "make > package." It may be good to compare the way you do the package creation by hand with the way bsd.port.mk is doing it. Maybe something can be improved... Bye, Alexander. -- You can search for documentation on a keyword by typing apropos keyword http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID = 72077137