All of lore.kernel.org
 help / color / mirror / Atom feed
From: Helmut Grohne <helmut.grohne@intenta.de>
To: <linux-gpio@vger.kernel.org>, Bartosz Golaszewski <bartekgola@gmail.com>
Subject: [libgpiod] consider changing the license of the C++ bindings
Date: Wed, 12 Feb 2020 08:42:44 +0100	[thread overview]
Message-ID: <20200212074243.GA17928@laureti-dev> (raw)

Hi,

I've recently encountered libgpiod and found that its API is nice to
work with. Thank you for this piece of software.

IANAL

The library is licensed LGPL, which makes it available to non-free uses
in principle. For the C library, I think this is a good license. For the
C++ bindings, LGPL poses a little problem as code can be generated from
the header. For instance, libgpiodcxx is using `ctor() = default;`.
Strict intepretation of the LGPL would mean that a downstream user
should be able to recompile the whole product using libgpiodcxx.
Effectively, libgpiodcxx can be considered GPL (not LGPL) licensed for
practical purposes. You can find more background at:
 * https://blogs.msmvps.com/gdicanio/2016/07/11/the-lgpl-and-libraries-exposing-a-c-interface/
 * Eigen was initially LGPL and was converted to MPL2:
   https://eigen.tuxfamily.org/index.php?title=News:Relicensing_to_MPL2!
 * QT4 has also encountred this:
   https://lwn.net/Articles/315251/
I think that the LGPL when applied to C++ results in an unclear
licensing situation at best and an effective GPL at a strict
interpretation. Varying license interpretation rarely results in
anything good.

For these reasons, I ask you to consider changing the license for
libgpiodcxx only (and not for libgpiod nor for the Python bindings). I
propose following Eigen and switching to MPL2. If however, the intention
is the strict reading of the non-lesser GPL, consider switching to that
instead. Either change improves the clarity of the licensing and makes
the intention visible.

Thank you for considering

Helmut

             reply	other threads:[~2020-02-12  7:48 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-12  7:42 Helmut Grohne [this message]
2020-02-12 10:00 ` [libgpiod] consider changing the license of the C++ bindings Bartosz Golaszewski
2020-02-12 12:36   ` Kent Gibson
2020-02-12 12:58   ` Bartosz Golaszewski
2020-02-13 10:15     ` Helmut Grohne
2020-02-13 10:17       ` Bartosz Golaszewski
2020-02-13 10:28         ` Helmut Grohne

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=20200212074243.GA17928@laureti-dev \
    --to=helmut.grohne@intenta.de \
    --cc=bartekgola@gmail.com \
    --cc=linux-gpio@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.