What happened to 11-Current ARM
Warner Losh
imp at bsdimp.com
Wed Apr 16 17:00:15 UTC 2014
On Apr 16, 2014, at 10:42 AM, Jordan Hubbard <jkh at ixsystems.com> wrote:
>
> On Apr 16, 2014, at 9:24 PM, Warner Losh <imp at bsdimp.com> wrote:
>
>> DEFAULT_COMPILER {clang,gcc} when set, causes a symlink from
>> cc to this value. In an ideal world
>> this could also be something like
>> /usr/local/bin/gcc48 too.
>
> I’d personally find it more than a little odd to have a setting in /etc/make.conf in conjunction with a build create side-effects in my filesystem such that this behavior results:
>
> # cc -v
> Using built-in specs.
> Target: amd64-undermydesk-freebsd
> …
> # cd /usr/src; make buildworld
> # cc -v
> FreeBSD clang version 3.3 (tags/RELEASE_33/final 183502) 20130610
> ..
>
> In other words, a build that was formerly not mutagenic to the build system now becomes mutagenic, unless you had some other value of “cc” in mind than /usr/bin/cc?
I’m talking installworld here, not buildworld, so I don’t think this point is at all relevant. the behavior you describe wouldn’t happen. What you suggest would never happen, and the build wouldn’t suddenly become mutagenic.
> Why not simply follow existing precedent and introduce a cc-select command that sets up all of the appropriate symlinks? Then at least rather than setting a DEFAULT_COMPILER in /etc/make.conf you just run the command explicitly to change the default compiler and there are no surprises, since you did it explicitly.
Since your premise is wrong, the solution is wrong as well. All the above would do is replace the really quite horrible CLANG_IS_CC with something slightly more flexible and allow us to delete that from the tree forever. The base behavior wouldn’t change as far as what happens to the the host system.
Warner
More information about the freebsd-arm
mailing list