From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.groups.io with SMTP id smtpd.web11.119772.1669646878081626372 for ; Mon, 28 Nov 2022 06:47:58 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=ETpXBRx1; spf=pass (domain: redhat.com, ip: 170.10.129.124, mailfrom: osteffen@redhat.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1669646877; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=e8cueKzoZzdacCoXR7NHXZq3gQHDEV8WH0yLfn0mPMI=; b=ETpXBRx13nLJKJSVLxx3lL/FSMO8S4GOsZfSSlQ7K628ZxShobQ/OCXhPXzFOnatsQx9qh LMSNGzZs2j7IFDt1r1O4Olwpn/y79Eu6yKJdTZCHz6T7egeUaPl/yM49J8DIP6ab4mYnTW 5OPTMcNyGxW0+ay3ayp9YvxQqHdXVUA= Received: from mail-lf1-f69.google.com (mail-lf1-f69.google.com [209.85.167.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-335-UEWAphJcP-Wrcb8Jl-JLiA-1; Mon, 28 Nov 2022 09:47:55 -0500 X-MC-Unique: UEWAphJcP-Wrcb8Jl-JLiA-1 Received: by mail-lf1-f69.google.com with SMTP id q2-20020ac24a62000000b004b4ec7b83f3so3900056lfp.19 for ; Mon, 28 Nov 2022 06:47:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:user-agent :from:references:in-reply-to:mime-version:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=e8cueKzoZzdacCoXR7NHXZq3gQHDEV8WH0yLfn0mPMI=; b=0kZJUEksYA4SSUgTuqcPliwpG0Vuo5hsFiFg8uyYVFVsDPd8DCbMlAwmLpVVGieS3X tdsmC7e80TQ1UAU+3MG42QaUBvKFEtHz/H7igbP/rnpRwesIx3v0/Mh8D7dIrak7PxCv CZqR+21m2agsy9X6wdwF8A4ki2cysJPk/0xsTqC94Npss+ZBxa3D0AQNBwX252JKLsWp b9R5FX//EcFqvBIKwfqklEyzZada1UNgTyQzZT7IDC4Zkok+YIsA0zbyYlEmdVG2GFKb Q5TU41Zb4K7HCqUjwNlQcfMQrFaVjIN6wVcNvZuym3jZvxsKL3oIxdgELJW0dFfZNI6M MmkQ== X-Gm-Message-State: ANoB5pnZX180O3uqNvrzLUuiJ/CtsyvAOGTXUBFKTbX8rSMpDhbGiGfI aRFgeRmoNIPD2vQEcup8vsAOOuR/TdClpI+lyr/9hQikn60LDqS1JJaBZrZdngyyg8mWWUW1O+d uRjgJNSlj4PV5onqnF6EwYXCVuxBbxw== X-Received: by 2002:ac2:5e70:0:b0:4ad:3f25:60f4 with SMTP id a16-20020ac25e70000000b004ad3f2560f4mr11615712lfr.92.1669646874221; Mon, 28 Nov 2022 06:47:54 -0800 (PST) X-Google-Smtp-Source: AA0mqf5LWml7O+wytv7Uh3VYwP7InEaZBAyLQiyGlK6UwAQedB4tBX1sAXcBryBAe7Yd6Rf5EpDAzAlaqCIzg5FDtj0= X-Received: by 2002:ac2:5e70:0:b0:4ad:3f25:60f4 with SMTP id a16-20020ac25e70000000b004ad3f2560f4mr11615681lfr.92.1669646873915; Mon, 28 Nov 2022 06:47:53 -0800 (PST) Received: from 567203818698 named unknown by gmailapi.google.com with HTTPREST; Mon, 28 Nov 2022 09:47:53 -0500 MIME-Version: 1.0 In-Reply-To: References: <20220926163129.85032-1-osteffen@redhat.com> From: "Oliver Steffen" User-Agent: alot/0.8.1 Date: Mon, 28 Nov 2022 09:47:53 -0500 Message-ID: Subject: Re: [edk2-devel] [PATCH v6 5/5] BaseTools: Remove ext. gcc dependencies (Linux only) To: Chris Fernald , devel@edk2.groups.io Cc: Andrew Fish , Ard Biesheuvel , Bob Feng , Gerd Hoffmann , Jiewen Yao , Jordan Justen , Leif Lindholm , Liming Gao , Michael D Kinney , Michael Kubacki , Ray Ni , Sami Mujawar , Sean Brogan , Yuwei Chen , Pawel Polawski X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Quoting Chris Fernald (2022-11-28 06:20:36) > Over-all I think this change is good to go. My only outstanding concern > would be around deleting these yaml files for the compilers. I fear > deleting them may break others work-flows and wonder if instead we > should update the python files to first check for the presence of the > prefix shell variable to dynamically determine if the extdep is needed > or not similar to how the compiler plugins determine whether to use the > extdep compiler or not. Yes. Deleting the ext_dep files is for sure not the right way. I think we need an option to allow the user (be it human or CI script) to choose between using the ext_dep and the tools already present on the system (=3Ddistro tools). This should affect gcc as well as all other tools (iasl, nasm, ...). I am not sure how to implement this in a good way. I had also started a discussion on github about that [0]. But I have to admit that I was very busy recently and had little time to work on this (sorry). Thanks, Oliver [0] https://github.com/tianocore/edk2-pytool-extensions/discussions/323 > > Thanks, > > Chris > > On 9/26/2022 9:31 AM, Oliver Steffen wrote: > > Remove BaseTools/Bin/gcc*_linux_ext_dep.yaml to stop > > downloading gcc from external locations; use the > > toolchains provided by the container image instead. > > > > The image needs to set the GCC5_*_PREFIX accordingly. > > > > Signed-off-by: Oliver Steffen > > --- > > BaseTools/Bin/gcc_aarch64_linux_ext_dep.yaml | 21 ------------------ > > BaseTools/Bin/gcc_arm_linux_ext_dep.yaml | 21 ------------------ > > .../Bin/gcc_riscv64_unknown_ext_dep.yaml | 22 ------------------= - > > 3 files changed, 64 deletions(-) > > delete mode 100644 BaseTools/Bin/gcc_aarch64_linux_ext_dep.yaml > > delete mode 100644 BaseTools/Bin/gcc_arm_linux_ext_dep.yaml > > delete mode 100644 BaseTools/Bin/gcc_riscv64_unknown_ext_dep.yaml > > > > diff --git a/BaseTools/Bin/gcc_aarch64_linux_ext_dep.yaml > > b/BaseTools/Bin/gcc_aarch64_linux_ext_dep.yaml > > deleted file mode 100644 > > index ff8a9e868100..000000000000 > > --- a/BaseTools/Bin/gcc_aarch64_linux_ext_dep.yaml > > +++ /dev/null > > @@ -1,21 +0,0 @@ > > -## @file > > -# Download GCC AARCH64 compiler from Arm's release site > > -# Set shell variable GCC5_AARCH64_INSTALL to this folder > > -# > > -# This is only downloaded when a build activates scope gcc_aarch64_lin= ux > > -# > > -# Copyright (c) Microsoft Corporation. > > -# SPDX-License-Identifier: BSD-2-Clause-Patent > > -## > > -{ > > - "scope": "gcc_aarch64_linux", > > - "type": "web", > > - "name": "gcc_aarch64_linux", > > - "source": "https://developer.arm.com/-/media/Files/downloads/gnu/11.= 2-2022.02/binrel/gcc-arm-11.2-2022.02-x86_64-aarch64-none-linux-gnu.tar.xz"= , > > - "version": "11.2-2022.02", > > - "sha256": "52dbac3eb71dbe0916f60a8c5ab9b7dc9b66b3ce513047baa09fae562= 34e53f3", > > - "compression_type": "tar", > > - "internal_path": "/gcc-arm-11.2-2022.02-x86_64-aarch64-none-linux-gn= u/", > > - "flags": ["set_shell_var", ], > > - "var_name": "GCC5_AARCH64_INSTALL" > > -} > > diff --git a/BaseTools/Bin/gcc_arm_linux_ext_dep.yaml > > b/BaseTools/Bin/gcc_arm_linux_ext_dep.yaml > > deleted file mode 100644 > > index 151cbfa4b532..000000000000 > > --- a/BaseTools/Bin/gcc_arm_linux_ext_dep.yaml > > +++ /dev/null > > @@ -1,21 +0,0 @@ > > -## @file > > -# Download GCC ARM compiler from Arm's release site > > -# Set shell variable GCC5_ARM_INSTALL to this folder > > -# > > -# This is only downloaded when a build activates scope gcc_arm_linux > > -# > > -# Copyright (c) Microsoft Corporation. > > -# SPDX-License-Identifier: BSD-2-Clause-Patent > > -## > > -{ > > - "scope": "gcc_arm_linux", > > - "type": "web", > > - "name": "gcc_arm_linux", > > - "source": "https://developer.arm.com/-/media/Files/downloads/gnu/11.= 2-2022.02/binrel/gcc-arm-11.2-2022.02-x86_64-arm-none-linux-gnueabihf.tar.x= z", > > - "version": "11.2-2022.02", > > - "sha256": "c254f7199261fe76c32ef42187502839bda7efad0a66646cf739d074e= ff45fad", > > - "compression_type": "tar", > > - "internal_path": "/gcc-arm-11.2-2022.02-x86_64-arm-none-linux-gnueab= ihf/", > > - "flags": ["set_shell_var", ], > > - "var_name": "GCC5_ARM_INSTALL" > > -} > > diff --git a/BaseTools/Bin/gcc_riscv64_unknown_ext_dep.yaml > > b/BaseTools/Bin/gcc_riscv64_unknown_ext_dep.yaml > > deleted file mode 100644 > > index 8abbcd7ba040..000000000000 > > --- a/BaseTools/Bin/gcc_riscv64_unknown_ext_dep.yaml > > +++ /dev/null > > @@ -1,22 +0,0 @@ > > -## @file > > -# Download GCC RISCV64 compiler from RISC-V Organization release site > > -# Set shell variable GCC5_RISCV64_INSTALL to this folder > > -# > > -# This is only downloaded when a build activates scope gcc_riscv64_unk= nown > > -# > > -# Copyright (c) Microsoft Corporation. > > -# Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All > > rights reserved.
> > -# SPDX-License-Identifier: BSD-2-Clause-Patent > > -## > > -{ > > - "scope": "gcc_riscv64_unknown", > > - "type": "web", > > - "name": "gcc_riscv64_unknown", > > - "source": "https://raw.githubusercontent.com/riscv/riscv-uefi-edk2-d= ocs/master/gcc-riscv-edk2-ci-toolchain/gcc-riscv-9.2.0-2020.04-x86_64_riscv= 64-unknown-gnu.tar.xz", > > - "version": "9.2.0", > > - "compression_type": "tar", > > - "sha256": "28373643b69f0ce008273c3dc63f172aa1121952f1b9ae94d7485ac94= af7f344", > > - "internal_path": "/gcc-riscv-9.2.0-2020.04-x86_64_riscv64-unknown-gn= u", > > - "flags": ["set_shell_var", ], > > - "var_name": "GCC5_RISCV64_INSTALL" > > -} > -- =F0=9F=8E=A9Oliver Steffen (he/him) - Software Engineer, Virtualization Red Hat GmbH , Registered seat: Werner-von-Siemens-Ring 12, D-85630 Grasbrunn, Germany Commercial register: Amtsgericht M=C3=BCnchen/Munich, HRB 153243, Managing Directors: Ryan Barnhart, Charles Cachera, Michael O'Neill, Amy Ross Everyone has different working hours=E2=80=A6 Please do not feel obligated = to reply outside of your normal work schedule.