public inbox for libstdc++@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jonathan Wakely <jwakely.gcc@gmail.com>
To: Tom James <tom.james@cd-adapco.com>
Cc: "libstdc++" <libstdc++@gcc.gnu.org>,
	Moritz Kreutzer <moritz.kreutzer@cd-adapco.com>,
	 "Jones, Philip" <philip.m.jones@siemens.com>
Subject: Re: GPL carve-out missing for barrier
Date: Tue, 6 Sep 2022 11:56:19 +0100	[thread overview]
Message-ID: <CAH6eHdQp7=fG32fCj87ogRdSLD81uNri3q+ToVLRRJ=eq--udA@mail.gmail.com> (raw)
In-Reply-To: <CAMPNZUEm8B_74BrjEjZdOiAkUyQtALxG6JT3eNH5WCdCZ7i-gQ@mail.gmail.com>

On Tue, 6 Sept 2022 at 11:29, Tom James <tom.james@cd-adapco.com> wrote:
>
> Hi,
>
> I'm working on a closed-source c++ project that compiles with gcc 11.2.  We
> need to ship the GNU 11.2 run-time alongside our product, and it looks like
> the std::barrier header is missing the GPL3 carve-out for shipping
> run-times.

Ouch, I'm pretty sure that's unintentional. I'll go back through my
email to confirm that.


> For the purposes of comparison, let's look at algorithm:
> https://github.com/gcc-mirror/gcc/blob/master/libstdc%2B%2B-v3/include/std/algorithm
>
> Lines 16-18 read as follows:
>   // 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.
>
> These lines are necessary to prevent the GPL infecting our closed-source
> code.

What exactly are you shipping? There is no code from <barrier> in
libstdc++.so so unless your own code is including the <barrier> header
and odr-using the inline functions and templates in that header, I
think your compiled code will not be affected by the license of
<barrier>. If you are including that header in the works you
propagate, or shipping it to customers for compiling their own works
which they will propagate, then the license exception matters.

> The barrier header appears to be missing these lines:
> https://github.com/gcc-mirror/gcc/blob/master/libstdc%2B%2B-v3/include/std/barrier
>
>
> Would it be possible to please make the following changes?
> 1.  Add these lines to the master branch,
> 2.  Backport these lines to gnu 11.2 (which is the most recent version
> supported by our toolchain).

No, we can't backport anything to 11.2 because that's already been released.

I'll add it to the master, gcc-12, and gcc-11 branches, which will
mean it's present for 11.4, 12.3 and 13.1 (and all releases that
follow them).

If you are producing a combined work that includes the <barrier> code,
then unless/until you're able to wait for 11.4 and use that, you could
copy the fixed header into your own GCC 11.2 that you distribute.

  reply	other threads:[~2022-09-06 10:56 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-06 10:29 Tom James
2022-09-06 10:56 ` Jonathan Wakely [this message]
2022-09-07  9:49   ` Tom James
2022-09-07 11:22     ` Jonathan Wakely
2022-09-07 19:27       ` Jonathan Wakely
2022-09-08  7:37         ` Tom James

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAH6eHdQp7=fG32fCj87ogRdSLD81uNri3q+ToVLRRJ=eq--udA@mail.gmail.com' \
    --to=jwakely.gcc@gmail.com \
    --cc=libstdc++@gcc.gnu.org \
    --cc=moritz.kreutzer@cd-adapco.com \
    --cc=philip.m.jones@siemens.com \
    --cc=tom.james@cd-adapco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).