From nobody Tue Jun 21 03:34:43 2022 X-Original-To: x11@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 3869C86BB2A for ; Tue, 21 Jun 2022 03:34:43 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4LRsZq0JDFz3w6N for ; Tue, 21 Jun 2022 03:34:43 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2610:1c1:1:606c::50:1d]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id DFFAA2301 for ; Tue, 21 Jun 2022 03:34:42 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.5]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id 25L3YgcU006354 for ; Tue, 21 Jun 2022 03:34:42 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id 25L3YgID006353 for x11@FreeBSD.org; Tue, 21 Jun 2022 03:34:42 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: x11@FreeBSD.org Subject: [Bug 264783] graphics/mesa-dri pulls in the entire llvm package Date: Tue, 21 Jun 2022 03:34:43 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Ports & Packages X-Bugzilla-Component: Individual Port(s) X-Bugzilla-Version: Latest X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: vishwin@freebsd.org X-Bugzilla-Status: Closed X-Bugzilla-Resolution: Not A Bug X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: x11@FreeBSD.org X-Bugzilla-Flags: maintainer-feedback? X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated List-Id: X11 List-Archive: https://lists.freebsd.org/archives/freebsd-x11 List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-x11@freebsd.org X-BeenThere: freebsd-x11@freebsd.org MIME-Version: 1.0 ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1655782483; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=5lBU3729rnDrq9mJxQAh/Tl7XqX9ueoW+u+3mHh3smg=; b=RxC/5DhlYm88XGGXdyYA1+bmkRHezENk2Myw3LzN5sdND/xpnxdCrRiOR/HEygkFezcTpT qpjD68o7g9YHXVuKmAzynrHBrIPe5mGCFAY4LMclH/xV7exolDOyqExMuNsa6VFKoqNBeL dS5+R0zJivqX5WylUZuM0zJkPfI/Bdh4qbdI2xG2q9eo73Pr9tBEI1yh7rhSI6gq+U7Gim 2AJUApQ+XnI1dm/1gYxQ5/Foo404zjp/ti7S4btpRSynTqYrytdrqy5WKrF3w/zNoB/Is9 l4sgdbia4flLGZueQgOQ4ivO1lH5XJKhFakHAkFq5bW5heNNjw+YTGgfiLxrOw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1655782483; a=rsa-sha256; cv=none; b=ADke3HxAvplYgh2e3Scx/4QC2PsT1cuH/+7h9Xh0rvS17cciMh7N2VGP55TdT3uLqf8+5W DVeLgpSPh3E9aJ6C3neR7vsMqQ3uiRlF0j+zX312lwxQP7Q1FoXaek5nRH21vgWSx9YRME Fbb6EFIwcC8DetHXchAWcu4bNW7clvJAqqFKtSmMVN8NZqLhpfYYGsgtILp0ybQmi4Sx4/ neclDOe/zSdrd5k+iof4n+tue7VDgO9dzRZoOQMHn8DDBIe6AubdowWALgPPUyX7QzdaLz OidCg9ybiUfFFvb/qNRpdYxoCUhviUWBf/r9toz9SwIVt/3OuPfiGczSv2rhpw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D264783 --- Comment #4 from Charlie Li --- (In reply to Bill Blake from comment #3) It's not that simple. Especially not without subpackage support in the ports framework, ie packaging separate portions of the staging section as separate packages. The work to get there is another story altogether and depends on everyone's collective cycles availability. I don't think many folks, myself included, are happy with the situation that LLVM consumes significant storage, but LLVM is a rather dense software. It = is further complicated by how there is no guarantee of API/ABI stability betwe= en major versions. For mesa specifically, the part that requires LLVM specifically is the swra= st driver, better known as LLVMpipe, a software graphics renderer. swrast is dynamically linked to libLLVM (example taken from my somewhat-off-the-beaten-path copy of mesa): % readelf -d /usr/local/lib/dri/swrast_dri.so Dynamic section at offset 0x19242f0 contains 37 entries: Tag Type Name/Value 0x0000000000000001 NEEDED Shared library: [libglapi.so.0] 0x0000000000000001 NEEDED Shared library: [libdrm.so.2] 0x0000000000000001 NEEDED Shared library: [libLLVM-14.so] 0x0000000000000001 NEEDED Shared library: [libexpat.so.1] 0x0000000000000001 NEEDED Shared library: [libz.so.6] 0x0000000000000001 NEEDED Shared library: [libm.so.5] 0x0000000000000001 NEEDED Shared library: [libdrm_radeon.so.= 1] 0x0000000000000001 NEEDED Shared library: [libelf.so.2] 0x0000000000000001 NEEDED Shared library: [libdrm_amdgpu.so.= 1] 0x0000000000000001 NEEDED Shared library: [libc++.so.1] 0x0000000000000001 NEEDED Shared library: [libcxxrt.so.1] 0x0000000000000001 NEEDED Shared library: [libgcc_s.so.1] 0x0000000000000001 NEEDED Shared library: [libthr.so.3] 0x0000000000000001 NEEDED Shared library: [libc.so.7] 0x000000000000000e SONAME Library soname: [libgallium_dri.so] 0x0000000000000007 RELA 0xa480 0x0000000000000008 RELASZ 500760 (bytes) 0x0000000000000009 RELAENT 24 (bytes) 0x000000006ffffff9 RELACOUNT 20420 0x0000000000000017 JMPREL 0x84898 0x0000000000000002 PLTRELSZ 16104 (bytes) 0x0000000000000003 PLTGOT 0x192a6d8 0x0000000000000014 PLTREL RELA 0x0000000000000006 SYMTAB 0x2d0 0x000000000000000b SYMENT 24 (bytes) 0x0000000000000005 STRTAB 0x6684 0x000000000000000a STRSZ 15868 (bytes) 0x000000006ffffef5 GNU_HASH 0x4f18 0x0000000000000004 HASH 0x4f84 0x0000000000000019 INIT_ARRAY 0x000000000000001b INIT_ARRAYSZ 112 (bytes) 0x000000000000000c INIT 0x6427f4 0x000000000000000d FINI 0x642804 0x000000006ffffff0 VERSYM 0x47b8 0x000000006ffffffe VERNEED 0x4d78 0x000000006fffffff VERNEEDNUM 8 0x0000000000000000 NULL 0x0 But libLLVM-${LLVM_SUFFIX}.so lives in ${PREFIX}/llvm${LLVM_SUFFIX}/lib, not ${PREFIX}/lib, so as to keep much of the LLVM distribution together in one = spot (because remember, LLVM is dense), which has us invoking ldconfig(8) to add= the LLVM hierarchy into the dynamic linker search path. It is a bad idea to have multiple copies of the same exact shared object floating around, especially with the same SONAME, as they have the chance to cause collisions. Additionally, this and many other programs in and outside the ports tree re= ly on other components of LLVM to build or run, often using llvm-config to feed the build system LLVM configuration information, interfacing with shared or static objects or a combination of both. So no, we cannot simply give the library a new name and copy it in. --=20 You are receiving this mail because: You are the assignee for the bug.=