From owner-cvs-all@FreeBSD.ORG Thu Jan 12 10:31:52 2006 Return-Path: X-Original-To: cvs-all@freebsd.org Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 257FC16A41F; Thu, 12 Jan 2006 10:31:52 +0000 (GMT) (envelope-from ru@ip.net.ua) Received: from tigra.ip.net.ua (tigra.ip.net.ua [82.193.96.10]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4E79743D78; Thu, 12 Jan 2006 10:31:50 +0000 (GMT) (envelope-from ru@ip.net.ua) Received: from localhost (rocky.ip.net.ua [82.193.96.2]) by tigra.ip.net.ua (8.12.11/8.12.11) with ESMTP id k0CAVn04093905; Thu, 12 Jan 2006 12:31:49 +0200 (EET) (envelope-from ru@ip.net.ua) Received: from tigra.ip.net.ua ([82.193.96.10]) by localhost (rocky.ip.net.ua [82.193.96.2]) (amavisd-new, port 10024) with LMTP id 55718-02-6; Thu, 12 Jan 2006 12:31:30 +0200 (EET) Received: from heffalump.ip.net.ua (heffalump.ip.net.ua [82.193.96.213]) by tigra.ip.net.ua (8.12.11/8.12.11) with ESMTP id k0CAPAsl093683 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 12 Jan 2006 12:25:10 +0200 (EET) (envelope-from ru@ip.net.ua) Received: (from ru@localhost) by heffalump.ip.net.ua (8.13.4/8.13.4) id k0CAP8ju022707; Thu, 12 Jan 2006 12:25:08 +0200 (EET) (envelope-from ru) Date: Thu, 12 Jan 2006 12:25:08 +0200 From: Ruslan Ermilov To: Ceri Davies , cvs-ports@freebsd.org, cvs-all@freebsd.org, ports-committers@freebsd.org Message-ID: <20060112102508.GC22138@ip.net.ua> References: <200601111549.k0BFnQQ2094145@repoman.freebsd.org> <20060111163046.GS97223@submonkey.net> <20060111192504.GB36556@ip.net.ua> <20060112093633.GB28781@submonkey.net> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="jousvV0MzM2p6OtC" Content-Disposition: inline In-Reply-To: <20060112093633.GB28781@submonkey.net> User-Agent: Mutt/1.5.9i X-Virus-Scanned: by amavisd-new at ip.net.ua Cc: Subject: Re: cvs commit: ports/devel/ccache Makefile X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Jan 2006 10:31:52 -0000 --jousvV0MzM2p6OtC Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jan 12, 2006 at 09:36:33AM +0000, Ceri Davies wrote: > On Wed, Jan 11, 2006 at 09:25:04PM +0200, Ruslan Ermilov wrote: > > On Wed, Jan 11, 2006 at 04:30:46PM +0000, Ceri Davies wrote: > > > On Wed, Jan 11, 2006 at 11:10:06AM -0500, michael johnson wrote: > > > > On 1/11/06, Ruslan Ermilov wrote: > > > > > > > > > > ru 2006-01-11 15:49:25 UTC > > > > > > > > > > FreeBSD ports repository > > > > > > > > > > Modified files: > > > > > devel/ccache Makefile > > > > > Log: > > > > > Attempt to attract maintainer's attention to a problem a lot of > > > > > our users reported when doing "make buildworld" with NOCCACHE > > > > > defined (hardcodes CC and CXX to "/usr/bin/{cc|c++}"). > > > >=20 > > > >=20 > > > > Please feel free to change what ever in ccache so it works. I won't= be doing > > > > much with freebsd for the next little bit. > > >=20 > > > My ccache entry in make.conf looks like: > > >=20 > > > # ccache > > > .if !defined(NOCCACHE) && exists(/usr/local/libexec/ccache/cc) > > > .if ${.CURDIR:M/usr/src*} > > > CC=3D/usr/local/libexec/ccache/cc > > > CXX=3D/usr/local/libexec/ccache/c++ > > > .else > > > CC=3Dcc > > > CXX=3Dc++ > > > .endif > > > .else > > > CC=3D/usr/bin/cc > > > CXX=3D/usr/bin/c++ > > > .endif > > >=20 > > > I could probably have used PREFIX too, but that always =3D=3D /usr/lo= cal on > > > my machines. > > >=20 > > The last ".else" part is the problem when doing "make buildworld" and > > NOCCACHE is defined. I have no idea what will break if we just remove > > it (i.e., revert rev. 1.2 to this patch). >=20 > Oh, my bad. Turns out I don't have ccache installed so the whole thing > is getting ignored. >=20 > Man, I was having a bad day yesterday. Let's see what else I've > broken... >=20 The problem is not with having or not having ccache installed, but with the hardcoded /usr/bin/cc and /usr/bin/c++ if NOCCACHE is defined. This breaks buildworld as follows: - buildworld sets CC and CXX to point to specially built compilers available somewhere inside ${WORLDTMP}, - these compilers pick up correct (up-to-date) versions of headers, libraries, etc., from ${WORLDTMP}, - setting CC and CXX in /etc/make.conf makes them global variables, of a higher precedence than those that buildworld passes in shell environment, - buildworld uses wrong compilers that pick up wrong headers etc., - buildworld breaks. I don't care to fix the port (mostly because I'm not familiar with ccache) but I'm full with getting mysterious build failure reports =66rom our users, where in 90% of cases this was caused by the wrong contents of /etc/make.conf suggested by port installation example. Cheers, --=20 Ruslan Ermilov ru@FreeBSD.org FreeBSD committer --jousvV0MzM2p6OtC Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (FreeBSD) iD8DBQFDxi6EqRfpzJluFF4RAnobAJ99N+5Kmj0aSi5mSZAfr/a3zfgwkwCfSLt7 foiX2ViTdetK0JAQ0etnFNk= =Mugw -----END PGP SIGNATURE----- --jousvV0MzM2p6OtC--