From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by sourceware.org (Postfix) with ESMTP id 19C1E3853802 for ; Mon, 12 Jul 2021 15:58:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 19C1E3853802 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A42B91FB; Mon, 12 Jul 2021 08:58:14 -0700 (PDT) Received: from localhost (e121540-lin.manchester.arm.com [10.32.98.126]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id CF5F63F774; Mon, 12 Jul 2021 08:58:13 -0700 (PDT) From: Richard Sandiford To: David Edelsohn Mail-Followup-To: David Edelsohn , gcc-patches@gcc.gnu.org, Jeffrey Law , "Joseph S. Myers" , Ramana Radhakrishnan , richard.sandiford@arm.com Cc: gcc-patches@gcc.gnu.org, Jeffrey Law , "Joseph S. Myers" , Ramana Radhakrishnan Subject: [RFA] Some libgcc headers are missing the runtime exception References: Date: Mon, 12 Jul 2021 16:58:12 +0100 In-Reply-To: (David Edelsohn's message of "Fri, 9 Jul 2021 13:38:37 -0400") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Status: No, score=-12.0 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_ASCII_DIVIDERS, KAM_DMARC_STATUS, KAM_SHORT, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Jul 2021 15:58:17 -0000 --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable David Edelsohn writes: > On Fri, Jul 9, 2021 at 1:31 PM Richard Sandiford > wrote: >> >> David Edelsohn writes: >> > On Fri, Jul 9, 2021 at 12:53 PM Richard Sandiford via Gcc >> > wrote: >> >> >> >> Hi, >> >> >> >> It was pointed out to me off-list that config/aarch64/value-unwind.h >> >> is missing the runtime exception. It looks like a few other files >> >> are too; a fuller list is: >> >> >> >> libgcc/config/aarch64/value-unwind.h >> >> libgcc/config/frv/frv-abi.h >> >> libgcc/config/i386/value-unwind.h >> >> libgcc/config/pa/pa64-hpux-lib.h >> >> >> >> Certainly for the aarch64 file this was simply a mistake; >> >> it seems to have been copied from the i386 version, both of which >> >> reference the runtime exception but don't actually include it. >> >> >> >> What's the procedure for fixing this? Can we treat it as a textual >> >> error or do the files need to be formally relicensed? >> > >> > I'm unsure what you mean by "formally relicensed". >> >> It seemed like there were two possibilities: the licence of the files >> is actually GPL + exception despite what the text says (the textual >> error case), or the licence of the files is plain GPL because the text >> has said so since the introduction of the files. In the latter case >> I'd have imagined that someone would need to relicense the code so >> that it is GPL + exception. >> >> > It generally is considered a textual omission. The runtime library >> > components of GCC are intended to be licensed under the runtime >> > exception, which was granted and approved at the time of introduction. >> >> OK, thanks. So would a patch to fix at least the i386 and aarch64 header >> files be acceptable? (I'm happy to fix the other two as well if that's >> definitely the right thing to do. It's just that there's more history >> involved there=E2=80=A6) > > Please correct the text in the files. The files in libgcc used in the > GCC runtime are intended to be licensed with the runtime exception and > GCC previously was granted approval for that licensing and purpose. > > As you are asking the question, I sincerely doubt that ARM and Cavium > intended to apply a license without the exception to those files. And > similarly for Intel and FRV. FTR, I think only Linaro (rather than Arm) touched the aarch64 file. > The runtime exception explicitly was intended for this purpose and > usage at the time that GCC received approval to apply the exception. Ack. Is the patch below OK for trunk and branches? Thanks, Richard --=-=-= Content-Type: text/x-diff; charset=utf-8 Content-Disposition: inline; filename=0001-libgcc-Add-missing-runtime-exception-notices.patch Content-Transfer-Encoding: quoted-printable >From a601ac8ea9be14a898215456c22cd826e8fd92d9 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Mon, 12 Jul 2021 13:04:56 +0100 Subject: [PATCH] libgcc: Add missing runtime exception notices MIME-Version: 1.0 Content-Type: text/plain; charset=3DUTF-8 Content-Transfer-Encoding: 8bit Quoting from https://gcc.gnu.org/pipermail/gcc/2021-July/236716.html: -------------------------------------------------------------------- It was pointed out to me off-list that config/aarch64/value-unwind.h is missing the runtime exception. It looks like a few other files are too; a fuller list is: libgcc/config/aarch64/value-unwind.h libgcc/config/frv/frv-abi.h libgcc/config/i386/value-unwind.h libgcc/config/pa/pa64-hpux-lib.h Certainly for the aarch64 file this was simply a mistake; it seems to have been copied from the i386 version, both of which reference the runtime exception but don't actually include it. -------------------------------------------------------------------- Similarly, frv-abi.h referenced the exception but didn't include it. pa64-hpux-lib.h was missing any reference to the exception. The decision was that this was simply a mistake [https://gcc.gnu.org/pipermail/gcc/2021-July/236717.html]: -------------------------------------------------------------------- [=E2=80=A6] It generally is considered a textual omission. The runtime library components of GCC are intended to be licensed under the runtime exception, which was granted and approved at the time of introduction. -------------------------------------------------------------------- and that we should simply change all of the files above [https://gcc.gnu.org/pipermail/gcc/2021-July/236719.html]: -------------------------------------------------------------------- Please correct the text in the files. The files in libgcc used in the GCC runtime are intended to be licensed with the runtime exception and GCC previously was granted approval for that licensing and purpose. [=E2=80=A6] The runtime exception explicitly was intended for this purpose and usage at the time that GCC received approval to apply the exception. -------------------------------------------------------------------- libgcc/ * config/aarch64/value-unwind.h: Add missing runtime exception paragraph. * config/frv/frv-abi.h: Likewise. * config/i386/value-unwind.h: Likewise. * config/pa/pa64-hpux-lib.h: Likewise. --- libgcc/config/aarch64/value-unwind.h | 4 ++++ libgcc/config/frv/frv-abi.h | 4 ++++ libgcc/config/i386/value-unwind.h | 4 ++++ libgcc/config/pa/pa64-hpux-lib.h | 9 +++++++-- 4 files changed, 19 insertions(+), 2 deletions(-) diff --git a/libgcc/config/aarch64/value-unwind.h b/libgcc/config/aarch64/v= alue-unwind.h index 1f50a47203c..041ca13e9b0 100644 --- a/libgcc/config/aarch64/value-unwind.h +++ b/libgcc/config/aarch64/value-unwind.h @@ -13,6 +13,10 @@ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. =20 + Under Section 7 of GPL version 3, you are granted additional + permissions described in the GCC Runtime Library Exception, version + 3.1, as published by the Free Software Foundation. + You should have received a copy of the GNU General Public License and a copy of the GCC Runtime Library Exception along with this program; see the files COPYING3 and COPYING.RUNTIME respectively. If not, see diff --git a/libgcc/config/frv/frv-abi.h b/libgcc/config/frv/frv-abi.h index 9af4ea4441d..0f7ed83df72 100644 --- a/libgcc/config/frv/frv-abi.h +++ b/libgcc/config/frv/frv-abi.h @@ -14,6 +14,10 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. =20 + Under Section 7 of GPL version 3, you are granted additional + permissions described in the GCC Runtime Library Exception, version + 3.1, as published by the Free Software Foundation. + You should have received a copy of the GNU General Public License and a copy of the GCC Runtime Library Exception along with this program; see the files COPYING3 and COPYING.RUNTIME respectively. If not, see diff --git a/libgcc/config/i386/value-unwind.h b/libgcc/config/i386/value-u= nwind.h index 66f76bbe1f3..80267eee79d 100644 --- a/libgcc/config/i386/value-unwind.h +++ b/libgcc/config/i386/value-unwind.h @@ -13,6 +13,10 @@ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. =20 + Under Section 7 of GPL version 3, you are granted additional + permissions described in the GCC Runtime Library Exception, version + 3.1, as published by the Free Software Foundation. + You should have received a copy of the GNU General Public License and a copy of the GCC Runtime Library Exception along with this program; see the files COPYING3 and COPYING.RUNTIME respectively. If not, see diff --git a/libgcc/config/pa/pa64-hpux-lib.h b/libgcc/config/pa/pa64-hpux-= lib.h index 85d5826a173..eeab98f1340 100644 --- a/libgcc/config/pa/pa64-hpux-lib.h +++ b/libgcc/config/pa/pa64-hpux-lib.h @@ -14,8 +14,13 @@ but WITHOUT ANY WARRANTY; without even the implied warra= nty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. =20 -You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING3. If not see +Under Section 7 of GPL version 3, you are granted additional +permissions described in the GCC Runtime Library Exception, version +3.1, as published by the Free Software Foundation. + +You should have received a copy of the GNU General Public License and +a copy of the GCC Runtime Library Exception along with this program; +see the files COPYING3 and COPYING.RUNTIME respectively. If not, see . */ =20 /* We use DTOR_LIST_BEGIN to carry a bunch of hacks to allow us to use --=20 2.17.1 --=-=-=--