From nobody Mon Apr 24 18:19:01 2023 X-Original-To: freebsd-toolchain@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 4Q4tgn1B2Xz479yf; Mon, 24 Apr 2023 18:19:17 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-lj1-f178.google.com (mail-lj1-f178.google.com [209.85.208.178]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Q4tgm1szTz3C5H; Mon, 24 Apr 2023 18:19:16 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=none; spf=pass (mx1.freebsd.org: domain of carpeddiem@gmail.com designates 209.85.208.178 as permitted sender) smtp.mailfrom=carpeddiem@gmail.com; dmarc=none Received: by mail-lj1-f178.google.com with SMTP id 38308e7fff4ca-2a8ba693f69so45299701fa.0; Mon, 24 Apr 2023 11:19:16 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682360353; x=1684952353; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=OUYC7tI7vux87/+hsU/glwY6/0bVDs0liSUCZXvOHzY=; b=GSUAuS6BdU/Q7R2ArkGscQtRe6AZVi7SSPPTjCV7wfwcvso0xulFzBbFtcj3l7kMvV Dx1Qcz2XQ6jssZ2m/ldPOD3nGDkGL2FQ2YEhNRzmQ9yhDJ8NUO0puuOW2zNwl2gCDtFT RVvyEe1OzHxcsHafqoPEggoIORBsNtntb9GxFzrZoun5w5Sur5jPdGyojlJDEm/yIsoS ARLPDkTK/bkDepk7MYRAl1S/lzjcMhL3QJALzi29N+EKkTt3wjBhlrpAkiPdg2ALV62V M09Bi8WBMOOzo+fJyuRra4h9sn/ad7aJpIi80veYtSTz4cKDrK60k3VyezKlItSqpilK lPow== X-Gm-Message-State: AAQBX9eC8o/MLK0G5Ud1C6ixV2/mxdqvDoz9mVSC58uHS0JH258FhL9f C83QDydnPpRbzZFNgiN0YZySpeqagYWMIFXkg3TKoGdoc3I= X-Google-Smtp-Source: AKy350asaEQzpnR0vt/pwdepLh1cdXcbVITP1AQeej8L0vYx/BVcIX8KLUmACCFt2yvNZEauJVMbRmHFb8ZPGAhHPV8= X-Received: by 2002:a2e:848d:0:b0:293:4b91:eb44 with SMTP id b13-20020a2e848d000000b002934b91eb44mr2640799ljh.38.1682360353631; Mon, 24 Apr 2023 11:19:13 -0700 (PDT) List-Id: Maintenance of FreeBSD s integrated toolchain List-Archive: https://lists.freebsd.org/archives/freebsd-toolchain List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-toolchain@freebsd.org X-BeenThere: freebsd-toolchain@freebsd.org MIME-Version: 1.0 References: In-Reply-To: From: Ed Maste Date: Mon, 24 Apr 2023 14:19:01 -0400 Message-ID: Subject: Re: Migrating to LLVM binutils tools (ar, nm, addr2line, etc.) To: "freebsd-toolchain@FreeBSD.org" , FreeBSD Hackers Content-Type: text/plain; charset="UTF-8" X-Spamd-Result: default: False [0.35 / 15.00]; NEURAL_HAM_SHORT(-1.00)[-1.000]; NEURAL_SPAM_MEDIUM(0.84)[0.837]; NEURAL_SPAM_LONG(0.51)[0.510]; FORGED_SENDER(0.30)[emaste@freebsd.org,carpeddiem@gmail.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; MIME_GOOD(-0.10)[text/plain]; MLMMJ_DEST(0.00)[freebsd-toolchain@freebsd.org,freebsd-hackers@freebsd.org]; RCVD_IN_DNSWL_NONE(0.00)[209.85.208.178:from]; MIME_TRACE(0.00)[0:+]; R_DKIM_NA(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.208.178:from]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; FREEMAIL_ENVFROM(0.00)[gmail.com]; RCPT_COUNT_TWO(0.00)[2]; DMARC_NA(0.00)[freebsd.org]; ARC_NA(0.00)[]; FREEFALL_USER(0.00)[carpeddiem]; TO_DN_EQ_ADDR_SOME(0.00)[]; FROM_NEQ_ENVFROM(0.00)[emaste@freebsd.org,carpeddiem@gmail.com]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TO_DN_SOME(0.00)[]; RCVD_TLS_LAST(0.00)[]; RCVD_COUNT_TWO(0.00)[2] X-Rspamd-Queue-Id: 4Q4tgm1szTz3C5H X-Spamd-Bar: / X-ThisMailContainsUnwantedMimeParts: N On Tue, 11 Apr 2023 at 09:21, Ed Maste wrote: > > > - Iterate on exp-runs and call for testing > > The exp-run is open in 258872. Perl initially failed to build, which > caused thousands of ports to be skipped. That issue was fixed by markj > in 27f35b7dd418. TCL and PostgreSQL are the next two ports that cause a significant number of skipped dependencies. Both failures are due to the use of "strip -x" against an archive (or static library). Strip -x is used to strip all non-global symbols, but in both cases there are non-global symbols that cannot be stripped, and so LLVM strip reports an error. I am not sure why these two (and a few others) want to install a stripped archive in the first place. TCL now has a patch in the ports tree (thanks gahr@) while waiting on a more portable upstream fix, and PostgreSQL has a fix committed upstream. The same issue affects textproc/sxml, but isn't a dependency for much (i.e., does not cause any significant number of skipped ports). The next issue affects science/q and shells/bash-static, and is caused by mixing GNU objcopy and LLVM strip. There's a good description of the presumed issue in https://github.com/llvm/llvm-project/issues/53948#issuecomment-1518486410. A bug was introduced in GNU objcopy about a year and a half ago, and fixed last month. Due to this bug GNU objcopy produced invalid ELF objects, with relocation sections that linked to the wrong symbol table. GNU objcopy and strip are permissive and silently ignore the invalid input, white LLVM objcopy and strip reject it with an error. The combination of GNU and LLVM tools is probably undesired; I suspect what's happening here is the port USES binutils, that doesn't override strip and so the system strip is still used (PR270663). The remaining issue is in sysutils/stressdisk, PR270962. This appears to be a problem between LLVM strip and code built by cgo, with an upstream bug at https://github.com/llvm/llvm-project/issues/53999. A couple of other leaf ports may be broken when WITH_LLVM_BINUTILS is set.