From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by mx.groups.io with SMTP id smtpd.web10.51788.1680260329573819545 for ; Fri, 31 Mar 2023 03:58:50 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=DHSH34i8; spf=pass (domain: kernel.org, ip: 145.40.68.75, mailfrom: ardb@kernel.org) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id A5465B82E73 for ; Fri, 31 Mar 2023 10:58:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 71FDAC4339B for ; Fri, 31 Mar 2023 10:58:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1680260326; bh=8AYbAViahuHMbMLtdR9YazXASatvs+ArgLjPWVNRc0Y=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=DHSH34i8iZq3O3L6udcKF5/zVG3GyTc02NhbNY7HjMpMYHJPgTIWLD/vxT+BGqD4d P8LZvtXSm4j25FaSvoDlAfDV8V5RcPe8KWNk/eS3YGQpg121m2aOOgsOoFA6gx/xfQ Zj4sa5ntoOkMyfBSm7uowaQFqBIhVL9T9h4KbIRm95IWSvSHkRhMFHiBl59Q4bOl0w jyj1ndIF7JN09YXwh/sYDoT2Bruja0Uu74tpzxmod714uqdffzk34i9rbI2Qi7xCo6 4KB7SclGIuLHweeyDAvO5tbiE2PZa9HLsc70rtDEPrtEr32Zm5gRqfRwgTNPrDyuBF CmhgN1llUyoMg== Received: by mail-lf1-f49.google.com with SMTP id j11so28316575lfg.13 for ; Fri, 31 Mar 2023 03:58:46 -0700 (PDT) X-Gm-Message-State: AAQBX9cDLwV1QLt3eNWyQT5hG78b5x3Wz9ULPDSBkN6w2Hs8EwV/jWgX CI+Y6XgY3gx+M15GzHFNzmb/7KFU40i/C24jSVU= X-Google-Smtp-Source: AKy350ZcriDvsTay3M/p9Hpd4D10XgKPgQexw141HZOQHTZBU4dieUsQqYFsw01vQ/5bTDyvmtAB8iBFY4EWRllCFTg= X-Received: by 2002:ac2:431a:0:b0:4eb:f3d:94bf with SMTP id l26-20020ac2431a000000b004eb0f3d94bfmr5418533lfh.9.1680260324470; Fri, 31 Mar 2023 03:58:44 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: "Ard Biesheuvel" Date: Fri, 31 Mar 2023 12:58:33 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [edk2-devel] [RFT PATCH v2 1/6] BaseTools/tools_def XCODE: Link X64 with -read_only_relocs suppress To: Gerd Hoffmann Cc: =?UTF-8?Q?Marvin_H=C3=A4user?= , devel@edk2.groups.io, Rebecca Cran , Andrew Fish Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, 31 Mar 2023 at 12:53, Gerd Hoffmann wrote: > > Hi, > > > > However, those issues might have been fixed and it=E2=80=99s not impo= ssible > > > Vitaly will give it another try eventually. In any case, I think our > > > downstream variant of XCODE5 doesn=E2=80=99t require any level of spe= cial > > > care, so it doesn=E2=80=99t really matter to us. > > > > > > (Another thing to consider is despite the bugs are fixed, mtoc has a > > > much higher overall code quality and more safety checks than GenFw, > > > which is used for CLANGDWARF.) > > > > > > The upstream toolchain has no future in my opinion, as mtoc has been > > > deprecated and already failed to compile certain things (like it > > > lacked Standalone MM types). The reason it still =E2=80=9Cworked=E2= =80=9D was > > > because homebrew silently shipped a variant with a subset of our > > > ocmtoc patches. So as I see it, taking our changes or dropping it > > > entirely are the only sane options, even regardless of this > > > particular issue you=E2=80=99re trying to fix. Personally, I have no > > > preference. > > > > I think both GenFw and mtoc are horrible hacks that should be phased > > out once we can - with good cross-architecture Clang support for > > native PE binaries, I'd hope macOS could move to CLANGPDB for all > > targets. > > What is the difference between CLANGPDB and CLANGDWARF? Just the debug > info format? > No, it uses the LLVM tools to generate PE binaries directly. > What is the support status? Is CLANGDWARF expected to build edk2 on all > platforms? Including cross-builds? Or will that work only after > Rebecca's toolchain fix/cleanup series being merged? > Yes, that what I was hoping for - LLD supports all architectures, which is why I insisted that CLANGDWARF should use LLD on ARM/AARCH64 as well. That way, anyone can build all targets on any host. > Should we eventually switch from gcc to clang on linux too? > When using ELF to PE/COFF conversion, it doesn't make that much of a differ= ence.