From owner-freebsd-ports@FreeBSD.ORG Sat Aug 29 21:19:14 2009 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 933DF106566B; Sat, 29 Aug 2009 21:19:14 +0000 (UTC) (envelope-from 000.fbsd@quip.cz) Received: from elsa.codelab.cz (elsa.codelab.cz [94.124.105.4]) by mx1.freebsd.org (Postfix) with ESMTP id 1CE338FC15; Sat, 29 Aug 2009 21:19:13 +0000 (UTC) Received: from localhost (localhost.codelab.cz [127.0.0.1]) by elsa.codelab.cz (Postfix) with ESMTP id C1C5919E044; Sat, 29 Aug 2009 23:19:10 +0200 (CEST) Received: from [10.43.15.6] (cage.codelab.cz [94.124.105.27]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by elsa.codelab.cz (Postfix) with ESMTPSA id 2106919E043; Sat, 29 Aug 2009 23:19:08 +0200 (CEST) Message-ID: <4A999B4A.3000603@quip.cz> Date: Sat, 29 Aug 2009 23:19:06 +0200 From: Miroslav Lachman <000.fbsd@quip.cz> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.13) Gecko/20060414 X-Accept-Language: cz, cs, en, en-us MIME-Version: 1.0 To: Doug Barton References: <4A89CB20.3000408@quip.cz> <4A8E2121.6040507@FreeBSD.org> <4A8E8ACA.3060705@quip.cz> <4A8EF583.8090806@FreeBSD.org> <4A9966FE.7060509@quip.cz> <4A998242.80005@FreeBSD.org> In-Reply-To: <4A998242.80005@FreeBSD.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-ports@freebsd.org Subject: Re: portmaster is not always recursive 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: Sat, 29 Aug 2009 21:19:14 -0000 Doug Barton wrote: > Miroslav Lachman wrote: > > >>I have another case, where portmaster did not update dependency. >> >>I started with the following list of available updates >> >>root@elsa ~/# portmaster fetch update && pkg_version -vIL = >>apache-2.2.11_7 < needs updating (index has 2.2.13) > > > Portmaster doesn't use the INDEX file at all, so all bets are off at > this point. However ... I know it, the same output is produced by pkg_version -vL =, -vIL = is just faster, but ports tree was fresh. The first part of the command was `portsnap fetch update`, it was my typo in the e-mail, not on the commandline. >>root@elsa ~/# portmaster -L | grep apache >>===>>> apache-2.2.11_7 >> ===>>> New version available: apache-2.2.13 >>===>>> apachetop-0.12.6_1 > > > So let's look at php5-mcrypt: > > make all-depends-list > /usr/ports/lang/php5 > /usr/ports/devel/autoconf262 > /usr/ports/security/libmcrypt > /usr/ports/devel/libltdl22 > /usr/ports/devel/pkg-config > /usr/ports/textproc/libxml2 > /usr/ports/lang/perl5.8 > /usr/ports/devel/m4 > /usr/ports/misc/help2man > /usr/ports/devel/gmake > /usr/ports/devel/autoconf-wrapper > /usr/ports/devel/libtool22 > /usr/ports/converters/libiconv > > I have no idea how pkg_tree creates its list of dependencies, but > according to the method that portmaster uses apache is not a dependency. pkg_tree get it from /var/db/pkg/, from +REQUIRED_BY and +CONTENTS. pkg_tree shows dependencies of installed packages, not /usr/ports defaults! Your list of dependencies was with default OPTIONS for PHP5 port, but I am not using defaults. I have following options: root@elsa ~/# cat /var/db/ports/php5/options # This file is auto-generated by 'make config'. # No user-servicable parts inside! # Options for php5-5.2.2 _OPTIONS_READ=php5-5.2.2 WITH_CLI=true WITH_CGI=true WITH_APACHE=true WITHOUT_DEBUG=true WITH_SUHOSIN=true WITH_MULTIBYTE=true WITHOUT_IPV6=true WITH_MAILHEAD=true WITHOUT_REDIRECT=true WITHOUT_DISCARD=true WITH_FASTCGI=true WITH_PATHINFO=true Then resulting dependencies are: root@elsa ~/# cd /usr/ports/lang/php5 root@elsa php5/# make all-depends-list /usr/ports/www/apache22 /usr/ports/devel/autoconf262 /usr/ports/devel/pkg-config /usr/ports/textproc/libxml2 /usr/ports/lang/perl5.8 /usr/ports/devel/libtool22 /usr/ports/textproc/expat2 /usr/ports/devel/pcre /usr/ports/converters/libiconv /usr/ports/databases/mysql50-client /usr/ports/databases/db41 /usr/ports/devel/m4 /usr/ports/misc/help2man /usr/ports/devel/gmake /usr/ports/devel/autoconf-wrapper /usr/ports/devel/p5-Locale-gettext /usr/ports/devel/gettext root@elsa php5/# cd /usr/ports/security/php5-mcrypt root@elsa php5-mcrypt/# make all-depends-list /usr/ports/lang/php5 /usr/ports/devel/autoconf262 /usr/ports/security/libmcrypt /usr/ports/devel/libltdl22 /usr/ports/www/apache22 /usr/ports/devel/pkg-config /usr/ports/textproc/libxml2 /usr/ports/lang/perl5.8 /usr/ports/devel/m4 /usr/ports/misc/help2man /usr/ports/devel/gmake /usr/ports/devel/autoconf-wrapper /usr/ports/devel/libtool22 /usr/ports/textproc/expat2 /usr/ports/devel/pcre /usr/ports/converters/libiconv /usr/ports/databases/mysql50-client /usr/ports/databases/db41 /usr/ports/devel/p5-Locale-gettext /usr/ports/devel/gettext As you can see - Apache is dependency of php5-mcrypt in my (non default) case. Can I provide you some more informations from my environment? Miroslav Lachman