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>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 2014-12-06 at 16:01 +0100, Dimitry Andric wrote:
> [trimmed CC list to -current]
>=20
> 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:
> >=20
> >> See <https://jenkins.freebsd.org/job/Build-UFS-image/599/>;
> >=20
> > 	I=FFm 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?
>=20
> 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".
>=20
>=20
> > 	2. Why isn=FFt this value determined once in Makefile.inc1 (per buil=
d phase), then passed down from there
>=20
> Because you are supposed to be able to build stuff in a subdirectory,
> without invoking the full top-level Makefile infrastructure.  The actua=
l
> infrastructure is in share/mk/bsd.*.mk, in fact.
>=20
>=20
> > (I=FFve 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, whi=
ch contributes to useless forking for something that honestly doesn=FFt c=
hange all that often/at all.
>=20
> This is indeed a pity, and if you know a better solution, let's hear it=
,
> please. :-)
>=20
>=20
> > 	At EMC/Isilon at least, we set CC/CXX=3Dfalse when running make dist=
ribute*/installkernel/installworld to catch logic errors with rebuilding =
code. Should this be in FreeBSD?
>=20
> 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?
>=20
> -Dimitry
>=20

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





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