From owner-freebsd-ports@freebsd.org Thu Jan 17 14:12:55 2019 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DFDAD1497B48 for ; Thu, 17 Jan 2019 14:12:55 +0000 (UTC) (envelope-from zeising@freebsd.org) Received: from mail.daemonic.se (mail.daemonic.se [176.58.89.161]) (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 4CEC7681E0 for ; Thu, 17 Jan 2019 14:12:55 +0000 (UTC) (envelope-from zeising@freebsd.org) Received: from cid.daemonic.se (localhost [IPv6:::1]) by mail.daemonic.se (Postfix) with ESMTP id 43gQyR6FbczDjMn; Thu, 17 Jan 2019 14:12:47 +0000 (UTC) X-Virus-Scanned: amavisd-new at daemonic.se Received: from mail.daemonic.se ([127.0.0.1]) (using TLS with cipher ECDHE-RSA-AES128-GCM-SHA256) by cid.daemonic.se (mailscanner.daemonic.se [127.0.0.1]) (amavisd-new, port 10587) with ESMTPS id JRtAzjZN5Cw8; Thu, 17 Jan 2019 14:12:47 +0000 (UTC) Received: from garnet.daemonic.se (host-90-236-68-148.mobileonline.telia.com [90.236.68.148]) by mail.daemonic.se (Postfix) with ESMTPSA id 43gQyR1Q1hzDjCL; Thu, 17 Jan 2019 14:12:47 +0000 (UTC) Subject: Re: Separate build/runtime llvm60 dependencies To: Mahmoud Al-Qudsi , freebsd-ports@freebsd.org References: From: Niclas Zeising Message-ID: <909db0dd-afb1-8b7a-9b3d-0fe3295f911b@freebsd.org> Date: Thu, 17 Jan 2019 15:12:46 +0100 User-Agent: Mutt/1.5.21 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 4CEC7681E0 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.984,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:36236, ipnet:176.58.89.0/24, country:US] X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jan 2019 14:12:56 -0000 On 1/17/19 12:17 AM, Mahmoud Al-Qudsi wrote: > Hello list, > > Another complaint about `llvm60` here - I was hoping that the situation would be > ameliorated before the release of FreeBSD 12, but alas that is not the case. > > From what I understand, `mesa-dri` doesn't build out-of-the-box with `llvm70`. > Cool. But that makes `llvm60` a build dependency for `mesa-dri` - the binary > package should not require installing 813 MiB's worth of compilers, > documentation, etc. just to run something built with that toolchain. > > Surely the runtime components of `llvm60` sufficient to use libraries built with > that toolchain can be split off into their own package? Even better, perhaps > `mesa-dri` can be statically compiled? (I know it has C++ components, but I'm > not sure if they ever cross the API barrier -- I haven't looked into it though, > so it's just wild speculation on my part.) > > (I do see that there exists a patch for getting `mesa-dri` to build with > `llvm70` hopefully making this conversation somewhat moot, but I still strongly > object to the principle of adding such massive dependencies for common > packages.) > This has been discussed several times in the past. Mesa uses libraries and components of llvm that are not in base, hence the dependency on the ports version of llvm. This also untangles some of the issues with llvm library usage, since we only have to support one version of llvm usage in mesa, regardless of FreeBSD version. Since mesa uses llvm libraries (not just toolchain to build) this can not be made in to a build time only dependency. There is some more information on this issue here: https://wiki.freebsd.org/WhyDoIHaveToBuildLLVMWhenIAlreadyHaveClangInstalled There is work in progress to move to llvm70, however, this only means that you need llvm70 installed alongside mesa-dri, instead of llvm60. Regards! -- Niclas FreeBSD Graphics Team