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