Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 6 Apr 2017 10:43:39 -0700
From:      "Russell L. Carter" <rcarter@pinyon.org>
To:        Brooks Davis <brooks@freebsd.org>
Cc:        freebsd-current@freebsd.org
Subject:   Re: how to mark llvm* forbidden?
Message-ID:  <23a7e248-6585-99f7-efab-8c013a64dcaa@pinyon.org>
In-Reply-To: <20170406172618.GB62417@spindle.one-eyed-alien.net>
References:  <67e1da1eb0ff0550aab07f56d1f022ab@ultimatedns.net> <20170405215139.GA62417@spindle.one-eyed-alien.net> <26b7ef04eae1f095c399fae53eaaba39@ultimatedns.net> <ab3c3f96-2cd1-4169-88dd-867a2f81fb52@pinyon.org> <20170406172618.GB62417@spindle.one-eyed-alien.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 04/06/17 10:26, Brooks Davis wrote:
> On Wed, Apr 05, 2017 at 06:18:37PM -0700, Russell L. Carter wrote:
>> On 04/05/17 15:32, Chris H wrote:
>>> On Wed, 5 Apr 2017 21:51:40 +0000 Brooks Davis <brooks@freebsd.org> wrote
>>>
>>>> On Wed, Apr 05, 2017 at 11:42:16AM -0700, Chris H wrote:
>>>>> OK I'm chasing -CURRENT, and I performed an initial
>>>>> install, followed by a new world/kernel && ports about a
>>>>> mos ago. Last Friday, I svn upped the system (src && ports),
>>>>> rebuilt/installed world/kernel. I just began rebuilding
>>>>> the ports, only to find that when finished, I will likely
>>>>> end up with every version of llvm && clang from version 3
>>>>> to the now current 4. My build session is currently tying
>>>>> nearly every core on the CPU with llvm builds. Given that
>>>>> llvm4 comes in base. Is there *any* reason I can not insist
>>>>> that the ports I upgrade, or build, just use the version(s)
>>>>> of clang/llvm in base? If so. How do I inform the ports
>>>>> that they may *only* use the version(s) in base?
>>>>
>>>> In general you can't.  There are many reasons including: the base llvm
>>>> doesn't include the requisite cmake bits for cmake based ports, some
>>>> ports use unstable APIs and require specific LLVM versions, and some use
>>>> LLVM tools or libraries that aren't built/installed as part of the base
>>>> system.
>>>>
>>>> There are probably some ports where the base clang is fine but that's
>>>> probably mostly down to someone getting USES variables right.
>>>>
>>>> -- Brooks
>>> Grumble.. That's what I was afraid I might hear.
>>>
>>> Thanks, Brooks! Even if it's not what I was hoping to hear. :)
>>
>> FWIW, this is biting me hard right now too.  I feel your
>> pain...  I'm a c++17 junky but I might have to let go of
>> llvm-devel.
> 
> If you want to track clang development, I would generally dis-recommend
> the llvm-devel port.  If you check out from upstream svn/git and build
> with cmake and ninja, then you get pretty efficient incremental builds.
> One nice think about the llvm build infrastructure is that you can use
> it in place in the build's bin directory so you don't even need to
> maintain an installed copy.

That's a great idea.  Obvious, too, in hindsight.

I used to do this routinely for a number of the "big" packages
but poudriere got so good apparently I got lazy.

Thanks!
Russell

> -- Brooks
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?23a7e248-6585-99f7-efab-8c013a64dcaa>