From owner-freebsd-ports@FreeBSD.ORG Mon Aug 25 20:21:45 2014 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7A319D64 for ; Mon, 25 Aug 2014 20:21:45 +0000 (UTC) Received: from smtprelay02.ispgateway.de (smtprelay02.ispgateway.de [80.67.31.40]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 36275386F for ; Mon, 25 Aug 2014 20:21:44 +0000 (UTC) Received: from [78.48.65.230] (helo=mandree.no-ip.org) by smtprelay02.ispgateway.de with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.68) (envelope-from ) id 1XM0lq-0003HY-3n for freebsd-ports@freebsd.org; Mon, 25 Aug 2014 22:21:42 +0200 Received: from [IPv6:::1] (localhost6.localdomain6 [IPv6:::1]) by apollo.emma.line.org (Postfix) with ESMTP id 708BF23CEB4 for ; Mon, 25 Aug 2014 22:21:41 +0200 (CEST) Message-ID: <53FB9AD5.1060307@an3e.de> Date: Mon, 25 Aug 2014 22:21:41 +0200 From: Matthias Andree User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.0 MIME-Version: 1.0 To: freebsd-ports@freebsd.org Subject: Re: HEADS UP: Berkeley DB 4...4.7 port removals/upgrades may require manual preparation References: <53F640EF.7000200@FreeBSD.org> <20140823230637.GA34697@server.rulingia.com> In-Reply-To: <20140823230637.GA34697@server.rulingia.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-Df-Sender: MTY1NTUxOA== X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Aug 2014 20:21:45 -0000 Am 24.08.2014 um 01:06 schrieb Peter Jeremy: > On 2014-Aug-21 20:56:47 +0200, Matthias Andree wrote: >> The time has now come to remove these db4* ports, Berkeley DB versions >> 4.0 to 4.7, inclusively. Most of their dependent ports can cope with >> upgrades to db48, db5, or db6, most of the others could be patched to work. > ... >> I have created a Wiki page that contains instructions, and points to >> SleepyCat's or Oracle's upgrading documentation, at >> . > > This assumes that I know where and how BDB is being used. I've discovered > that I have db41 installed on a couple of systems - it's required by > textproc/redland, which in turn is required by editors/libreoffice. Whilst > I can avoid using libreoffice whilst I upgrade, I have no idea how it uses > BDB or where the database files might be. I suspect this scenario is true > for the majority of people who have BDB installed. Peter, thank you for the feedback. The issue is that we don't have a way to easily identify only the direct dependents of BDB, but we get grandparent requisites, too, from the index, as you have found out in your case with libreoffice and redland. Redland is the port requiring BDB, and libreoffice inherits this requisite. >> When, among the upgrade steps on the WIki, you have reached the point >> where it is safe to upgrade the Berkeley DB and applications, there is a >> helper script in Tools/scripts/BDB-upgrade-helper.sh uses portmaster or >> portupgrade to rebuild the applications to use a newer Berkeley DB, and >> then offer to delete the old Berkeley DB ports. > > Partial relative paths aren't especially helpful. This should either be > an absolute path or specify a cwd (presumably /usr/ports in this case). > > And, for reasons I don't understand, when I run BDB-upgrade-helper.sh, > portmaster wants to install both db48 and db5. That is because some of the ports you need insist they cannot work with any other version, which is subject to a separate discussion, in the Subject "Re: Strong objection to db4.8 deprecation!" thread. I have revised the list item #7 on the Wiki to read this: > ALL: rebuild the applications to use the new Berkeley DB version, > you can set WITH_BDB_VER=5 or WITH_BDB_VER=6 in /etc/make.conf, or > uniquename_WITH_BDB_VER=5 (where uniquename is what your port's > UNIQUENAME is, for instance, bogofilter_WITH_BDB_VER=6). You can > use the /usr/ports/Tools/scripts/BDB-upgrade-helper.sh script which > will automatically upgrade your applications that depend on an > older-to-be-removed Berkeley DB version to the new version, and > then offer to delete the old Berkeley DB package(s). Note: there > are a few ports that insist on using db4.8 for various reasons, so > you may end up with most ports using db5 (or db6), and a few using > db48. This is currently under discussion and being worked on. I hope this addresses your points sufficiently, if not, let me know what else you would propose to change. Best regards, Matthias -- Matthias Andree