Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Apr 2014 10:04:24 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Kevin Oberman <rkoberman@gmail.com>
Cc:        FreeBSD Current <current@freebsd.org>, Ian Lepore <ian@freebsd.org>
Subject:   Re: options for forcing use of GCC
Message-ID:  <7E11EE0A-6BA0-4508-80ED-641876004540@bsdimp.com>
In-Reply-To: <CAN6yY1t9TKR6XBb_GtH4L3r2i1qAA8TNao_fpU0Z_8qMGxX7Ew@mail.gmail.com>
References:  <535D1350.4000106@freebsd.org> <1398616234.61646.155.camel@revolution.hippie.lan> <535DFB11.4020904@freebsd.org> <1398686749.61646.203.camel@revolution.hippie.lan> <535E5FA0.9050703@freebsd.org> <1398695014.61646.212.camel@revolution.hippie.lan> <CAN6yY1t9TKR6XBb_GtH4L3r2i1qAA8TNao_fpU0Z_8qMGxX7Ew@mail.gmail.com>

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

On Apr 28, 2014, at 9:52 AM, Kevin Oberman <rkoberman@gmail.com> wrote:

> On Mon, Apr 28, 2014 at 7:23 AM, Ian Lepore <ian@freebsd.org> wrote:
>=20
>> On Mon, 2014-04-28 at 22:03 +0800, Julian Elischer wrote:
>>> On 4/28/14, 8:05 PM, Ian Lepore wrote:
>>>> On Mon, 2014-04-28 at 14:54 +0800, Julian Elischer wrote:
>>>>> On 4/28/14, 12:30 AM, Ian Lepore wrote:
>>>>>>  WITH_GCC=3Dyes \
>>>>>>  WITH_GNUCXX=3Dyes \
>>>>>>  WITHOUT_CLANG=3Dyes \
>>>>>>  WITHOUT_CLANG_IS_CC=3Dyes \
>>>>> forgot to ask.. is this in /etc/make.conf?
>>>>> or elsewhere?
>>>> Actually in our build system we build in a chroot, and we inject =
those
>>>> args into the environment during the builds so that we can have
>>>> different options for building world versus cross-world within the
>>>> chroot, but I think the more-normal place would be make.conf.
>>>=20
>>> we also use a combination of environment and make.conf in a chroot.
>>> though people sometimes talk about a src.conf (or is that src.mk?) =
but
>>> I haven't found that one yet.
>>>>=20
>>>> -- Ian
>>>>=20
>>>>=20
>>>>=20
>>=20
>> In theory, /etc/make.conf affects all builds you do -- world, kernel,
>> ports, your own apps, everything -- whereas /etc/src.conf affects =
only
>> kernel and world.  I've heard it said that the reality falls short of
>> that and src.conf settings inappropriately leak into ports builds.

That=92s bogus. Port builds define _WITHOUT_SRCCONF which precludes not
only including /etc/src.conf, but also disables the while =
WITH/WITHOUT_FOO
mechanism from converting those options into MK_FOO options.

> I have also heard this, but a grep of ports/Mk finds no matches to
> src\.conf, so this appears to not be the case.

Ports specifically goes out of its way to make sure this doesn=92t =
happen. Perhaps
it isn=92t going out of its way far enough?

> It should not be as the whole purpose of src.conf was to have a make
> configuration that would be used to build the system, but not other =
things.
> make.conf already provided for that.

If someone can show me a specific, verifiable leak, I=92ll look into it. =
Vague
rumors about possible issues that may have existed once upon a time
aren=92t fruitful to chase.

> The only exception I might see is the building of a kernel module =
which
> might need to know how the system was made and that would be in the
> specific port's Makefile, not a system wide file.

I=92m not sure I understand here. If a kernel module uses the kernel =
module build
stuff, it should be affected by the src.conf files unless you =
specifically request
otherwise because you know what you are doing (e.g., building for =
another system,
cross building, etc).

Warner=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7E11EE0A-6BA0-4508-80ED-641876004540>