From owner-freebsd-stable@FreeBSD.ORG Fri Feb 15 02:06:38 2013 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A26A6939 for ; Fri, 15 Feb 2013 02:06:38 +0000 (UTC) (envelope-from jdc@koitsu.org) Received: from qmta01.emeryville.ca.mail.comcast.net (qmta01.emeryville.ca.mail.comcast.net [IPv6:2001:558:fe2d:43:76:96:30:16]) by mx1.freebsd.org (Postfix) with ESMTP id 5FE53AD7 for ; Fri, 15 Feb 2013 02:06:38 +0000 (UTC) Received: from omta03.emeryville.ca.mail.comcast.net ([76.96.30.27]) by qmta01.emeryville.ca.mail.comcast.net with comcast id 0KLB1l00i0b6N64A1S6eLS; Fri, 15 Feb 2013 02:06:38 +0000 Received: from koitsu.strangled.net ([67.180.84.87]) by omta03.emeryville.ca.mail.comcast.net with comcast id 0S6d1l00E1t3BNj8PS6dl3; Fri, 15 Feb 2013 02:06:38 +0000 Received: by icarus.home.lan (Postfix, from userid 1000) id 27A6D73A1C; Thu, 14 Feb 2013 18:06:37 -0800 (PST) Date: Thu, 14 Feb 2013 18:06:37 -0800 From: Jeremy Chadwick To: Adam McDougall Subject: Re: Why does poudriere always rebuild nginx and GraphicsMagick13? Message-ID: <20130215020637.GA97558@icarus.home.lan> References: <20130212221103.GG12760@ithaqua.etoilebsd.net> <6088089D-3E61-4C82-94D4-319E48CF718B@ultra-secure.de> <20130215012919.GW36563@egr.msu.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20130215012919.GW36563@egr.msu.edu> User-Agent: Mutt/1.5.21 (2010-09-15) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20121106; t=1360893998; bh=687eqWiVP1j/GNLwhf2TrIv5HyY/ZDgd3h5rlvfWwoQ=; h=Received:Received:Received:Date:From:To:Subject:Message-ID: MIME-Version:Content-Type; b=s3VV8co8riRykOV29s/OhXugLcvjk+M1Fd1TwrUTpKG/MCiYE5x5GOUTDMGh+jIsj crUUB9sTivKYNzf1m2SPU7/fqfyLqp6WZCkx4cqh+peEXONmKpwZP3JaUnbRMTo28m veMJPsHiff3YXfCJJYIynwReT8dD1KVB3mcFVys1arHCqLs3J/nrnhI0rQT+OiR8mE iYSQg8rXpdZepsEotE2NDkAySXBILXdYKgmcLZj4yjZVHs63mRTmPDOn9oBD0tYmLl FB5S4p6GyDCY14giRK/B7ouKfZztSWfaqwIt8Lpg+214TKqndf/NnJLbuUHPyM5Mjz +B1MU3apTUekA== Cc: "freebsd-stable@freebsd.org" , Rainer Duffner X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2013 02:06:38 -0000 On Thu, Feb 14, 2013 at 08:29:19PM -0500, Adam McDougall wrote: > On Fri, Feb 15, 2013 at 12:37:19AM +0100, Rainer Duffner wrote: > > Am 12.02.2013 um 23:11 schrieb Baptiste Daroussin : > > > On Tue, Feb 12, 2013 at 10:59:28PM +0100, Rainer Duffner wrote: > >> Hi, > >> > >> poudriere 2.2 here, running on 9.1-amd64 > >> > >> Of the 730-ish ports, whenever I run a build, it always rebuilds the above two ports. > >> Even if nothing changed. > > ====>> Options changed, deleting: GraphicsMagick-nox11-1.3.16_1.txz > ====>> Options changed, deleting: nginx-1.2.6,1.txz > > Somehow, it thinks the options have changed. > Maybe, the options-file has an error? > > Regards, > Rainer > > Try deleting the options file for each and run poudriere twice to test. > I had the same problem with mailman and it turned out I was missing a > required but not enforced option due to another option I had selected. Note: I have no familiarity with this tool or its code. *sigh* Oh look, more shell hell... :-) Here's the code for what causes the "Options changed" logic to get called (I did not include pkg_get_options() nor pkg_cache_dir() definitions, i.e. functions used within src/poudriere.d/common.sh): 1355 # Check if the compiled options match the current options from make.conf and /var/db/options 1356 if [ "${CHECK_CHANGED_OPTIONS:-no}" != "no" ]; then 1357 current_options=$(injail make -C /usr/ports/${o} pretty-print-config | tr ' ' '\n' | sed -n 's/^\+\(.*\)/\1/p' | sort | tr '\n' ' ') 1358 compiled_options=$(pkg_get_options ${pkg}) 1359 1360 if [ "${compiled_options}" != "${current_options}" ]; then 1361 msg "Options changed, deleting: ${pkg##*/}" 1362 if [ "${CHECK_CHANGED_OPTIONS}" = "verbose" ]; then 1363 msg "Pkg: ${compiled_options}" 1364 msg "New: ${current_options}" 1365 fi 1366 delete_pkg ${pkg} 1367 return 0 1368 fi 1369 fi Note what the comment says. I have no idea what /var/db/options is, but possibly it's referring to /var/db/ports/*/options. You might try setting CHECK_CHANGED_OPTIONS=verbose (wherever it gets that from). It should print something helpful to you which you can use to work backwards. -- | Jeremy Chadwick jdc@koitsu.org | | UNIX Systems Administrator http://jdc.koitsu.org/ | | Mountain View, CA, US | | Making life hard for others since 1977. PGP 4BD6C0CB |