From owner-freebsd-current@freebsd.org Thu Apr 6 17:43:42 2017 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CB937D31AB3 for ; Thu, 6 Apr 2017 17:43:42 +0000 (UTC) (envelope-from rcarter@pinyon.org) Received: from h2.pinyon.org (h2.pinyon.org [65.101.20.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 964531F8; Thu, 6 Apr 2017 17:43:42 +0000 (UTC) (envelope-from rcarter@pinyon.org) Received: by h2.pinyon.org (Postfix, from userid 58) id D92D415E2F; Thu, 6 Apr 2017 10:43:40 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=pinyon.org; s=DKIM; t=1491500620; bh=hGGbioQXEUVbbEfXTWLGePXgEGo7V9t4gR2demyADrs=; h=Subject:To:Cc:References:From:Date:In-Reply-To; b=eromDvBaQn7ZZrsRIPVT3flTVsjCKOqpA94dHV0ONfyTWcAr7m8I0zGz46C3U6qne VpjCDqVMBXqZk6sVJCHEJpLmElMTw7/e5YN1Nwynh0hfDWoalbvuvlYoTXIaXNYUnu osrdAv55vr7Ub2reQv4cm46rAdCExbw/Xap4J4Ho= X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on h2.n1.pinyon.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.1 Received: from [10.0.10.15] (h1.pinyon.org [65.101.20.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by h2.pinyon.org (Postfix) with ESMTPSA id C5F4F15E13; Thu, 6 Apr 2017 10:43:39 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=pinyon.org; s=DKIM; t=1491500619; bh=hGGbioQXEUVbbEfXTWLGePXgEGo7V9t4gR2demyADrs=; h=Subject:To:Cc:References:From:Date:In-Reply-To; b=H4B/z1nkM3T6AAu+mpqx93Y5jSg5bitEZW/iD4PKOkJ83ZwVPWoQvfbsjRzvJdZSn gnqy4afph0VGI3+Mrt5oONoKhinNHvKMWy2ZMCFjIUJYp8PO51a//DSyqFSUvH35xT eWNwaCjTD7Xf8cr7h5EVtzd8yNMxWTLVIZAqpymw= Subject: Re: how to mark llvm* forbidden? To: Brooks Davis Cc: freebsd-current@freebsd.org References: <67e1da1eb0ff0550aab07f56d1f022ab@ultimatedns.net> <20170405215139.GA62417@spindle.one-eyed-alien.net> <26b7ef04eae1f095c399fae53eaaba39@ultimatedns.net> <20170406172618.GB62417@spindle.one-eyed-alien.net> From: "Russell L. Carter" Message-ID: <23a7e248-6585-99f7-efab-8c013a64dcaa@pinyon.org> Date: Thu, 6 Apr 2017 10:43:39 -0700 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.0 MIME-Version: 1.0 In-Reply-To: <20170406172618.GB62417@spindle.one-eyed-alien.net> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Apr 2017 17:43:42 -0000 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 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 >