Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 06 Dec 2014 09:57:14 -0700
From:      Ian Lepore <ian@FreeBSD.org>
To:        Dimitry Andric <dim@FreeBSD.org>
Cc:        FreeBSD CURRENT <freebsd-current@freebsd.org>, Garrett Cooper <yaneurabeya@gmail.com>
Subject:   Re: Build failed in Jenkins: Build-UFS-image #599
Message-ID:  <1417885034.1064.83.camel@revolution.hippie.lan>
In-Reply-To: <7A7677F9-AD1B-436C-9A49-054F7CD6BBC4@FreeBSD.org>
References:  <1052304530.8.1417827164793.JavaMail.jenkins@jenkins-9.freebsd.org> <D290A7DA-0AED-4810-A1B1-470E35542292@gmail.com> <7A7677F9-AD1B-436C-9A49-054F7CD6BBC4@FreeBSD.org>

index | next in thread | previous in thread | raw e-mail

On Sat, 2014-12-06 at 16:01 +0100, Dimitry Andric wrote:
> [trimmed CC list to -current]
> 
> On 06 Dec 2014, at 04:59, Garrett Cooper <yaneurabeya@gmail.com> wrote:
> > On Dec 5, 2014, at 16:52, jenkins-admin@freebsd.org wrote:
> > 
> >> See <https://jenkins.freebsd.org/job/Build-UFS-image/599/>;
> > 
> > 	Iÿm not entirely sure why the "could not determine COMPILER_TYPE" error popped up, but I have a couple of questions/concerns related to the makefile snippet.
> > 	1. Does it make sense to check CC when running make install?
> 
> Yes, of course it makes sense, if parts of the install depend on e.g.
> COMPILER_TYPE.  In some cases, you will have to run ${CC} to determine
> what it is, specifically if it is just "cc".
> 
> 
> > 	2. Why isnÿt this value determined once in Makefile.inc1 (per build phase), then passed down from there
> 
> Because you are supposed to be able to build stuff in a subdirectory,
> without invoking the full top-level Makefile infrastructure.  The actual
> infrastructure is in share/mk/bsd.*.mk, in fact.
> 
> 
> > (Iÿve already considered the scenario where someone explicitly sets CC in a non-toplevel Makefile, which is a problem, but an outlier rather than the norm)? AFAICT, it gets recomputed for every recursive make, which contributes to useless forking for something that honestly doesnÿt change all that often/at all.
> 
> This is indeed a pity, and if you know a better solution, let's hear it,
> please. :-)
> 
> 
> > 	At EMC/Isilon at least, we set CC/CXX=false when running make distribute*/installkernel/installworld to catch logic errors with rebuilding code. Should this be in FreeBSD?
> 
> Not sure what that is meant to achieve.  If parts of the installation
> depend on the value of CC, why would you want to set it to false?  Just
> so it can error out at those points?
> 
> -Dimitry
> 

I suspect it's to prevent building during the install phase, because
doing so is astonishing.  I was astonished the other day when it
happened.  I would be much happier if it had just errored out.

-- Ian




help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1417885034.1064.83.camel>