licensing: relicense C++ bindings under LGPL-2.1-or-later
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Tue, 16 Apr 2024 21:21:40 +0000 (23:21 +0200)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Mon, 22 Apr 2024 12:04:19 +0000 (14:04 +0200)
commit76ecc337c519d65c16e331343c9402f176eead5a
treeda0a509a670f192d80b828a9c6add5e9b5de1bda
parent6c3d0b644c5622dbe732df27b1babb758a17acbe
licensing: relicense C++ bindings under LGPL-2.1-or-later

Commit ea84f882d5d3 ("licensing: relicense C++ library code under
LGPL-3.0-or-later") changed the license of C++ bindings in order to
solve potential issues with code generated from templates[1], default
implementations, etc. However this change makes the bindings less
attractive to projects that have strict licensing restrictions and avoid
GPL-3.0 code[2].

After talking to Grant Likely I decided that the best approach is to
make the bindings available under LGPL-v2.1-or-later and simply let the
end user decide which version's text to apply.

While at it: tweak the README to also mention that examples are provided
under GPL-2.0-or-later.

Link: [1] https://www.spinics.net/lists/linux-gpio/msg46605.html
Link: [2] https://github.com/brgl/libgpiod/issues/72
Suggested-by: Walter Lozano <walter.lozano@collabora.com>
Suggested-by: Grant Likely <grant.likely@linaro.org>
Acked-by: Kent Gibson <warthog618@gmail.com>
Acked-by: Kevin Hilman <khilman@baylibre.com>
Acked-by: Grant Likely <grant.likely@linaro.org>
Link: https://lore.kernel.org/r/20240416212141.6683-2-brgl@bgdev.pl
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
38 files changed:
COPYING
LICENSES/LGPL-3.0-or-later.txt [deleted file]
bindings/cxx/chip-info.cpp
bindings/cxx/chip.cpp
bindings/cxx/edge-event-buffer.cpp
bindings/cxx/edge-event.cpp
bindings/cxx/exception.cpp
bindings/cxx/gpiod.hpp
bindings/cxx/gpiodcxx/chip-info.hpp
bindings/cxx/gpiodcxx/chip.hpp
bindings/cxx/gpiodcxx/edge-event-buffer.hpp
bindings/cxx/gpiodcxx/edge-event.hpp
bindings/cxx/gpiodcxx/exception.hpp
bindings/cxx/gpiodcxx/info-event.hpp
bindings/cxx/gpiodcxx/line-config.hpp
bindings/cxx/gpiodcxx/line-info.hpp
bindings/cxx/gpiodcxx/line-request.hpp
bindings/cxx/gpiodcxx/line-settings.hpp
bindings/cxx/gpiodcxx/line.hpp
bindings/cxx/gpiodcxx/misc.hpp
bindings/cxx/gpiodcxx/request-builder.hpp
bindings/cxx/gpiodcxx/request-config.hpp
bindings/cxx/gpiodcxx/timestamp.hpp
bindings/cxx/info-event.cpp
bindings/cxx/internal.cpp
bindings/cxx/internal.hpp
bindings/cxx/line-config.cpp
bindings/cxx/line-info.cpp
bindings/cxx/line-request.cpp
bindings/cxx/line-settings.cpp
bindings/cxx/line.cpp
bindings/cxx/misc.cpp
bindings/cxx/request-builder.cpp
bindings/cxx/request-config.cpp
bindings/cxx/tests/gpiosim.cpp
bindings/cxx/tests/gpiosim.hpp
bindings/cxx/tests/helpers.cpp
bindings/cxx/tests/helpers.hpp