On Thu, Nov 17, 2022 at 8:31 AM Viresh Kumar viresh.kumar@linaro.org wrote:
On 16-11-22, 11:29, Bartosz Golaszewski wrote:
Hi Viresh,
There are some licensing issues I noticed now: can you make sure `reuse lint` doesn't return errors for rust bindings?
I have fixed couple of those now, but there are few which I am not sure about.
# MISSING COPYRIGHT AND LICENSING INFORMATION
The following files have no copyright and licensing information:
- ../../bindings/rust/Cargo.toml
- ../../bindings/rust/gpiosim/Cargo.toml
- ../../bindings/rust/gpiosim/README.md
- ../../bindings/rust/gpiosim/src/bindings.rs
- ../../bindings/rust/libgpiod/Cargo.toml
- ../../bindings/rust/libgpiod-sys/Cargo.toml
- ../../bindings/rust/libgpiod-sys/README.md
- ../../bindings/rust/libgpiod-sys/src/bindings.rs
File types:
Cargo.toml
Most of these have a different style for versioning, though the workspace specific files doesn't have a version set. I checked few other projects and they didn't mention it as well.
Just use regular SPDX header at the top of the file in a # comment block?
README.md
Here also version is mentioned differently (added now), based on how I found it elsewhere, i.e. towards the bottom of the file.
The main README.md just has a regular header at the top of the file. I'm fine with this. I guess the bottom of the file is good too.
bindings.rs
These are automatically genrated files, with bindgen. Not sure if we should edit them to add Licensing info.
Can we not generate them at build-time then? When I was first flirting with implementing a dbus daemon for libgpiod, I used gdbus-codegen to generate dbus bindings from xml but I generated them at build-time instead of putting them into the repo. It would also shrink the release checklist for rust if we didn't have to manually regenerate them.
Bart
One other thing is the license of the rust bindings themselves - I'm not a lawyer but it seems to me that if you link against LGPL code statically, your code must be licensed under an LGPL-compatible license. It seems that BSD-3-Clause and Apache-2.0 are compatible but it would be great to have someone knowledgeable comment on that. Is there anyone at linaro we could contact?
Hmm, not sure. Cc'ing Arnd, in case he can help.
I think that's been clarified by Linus below. We should be good.
Bartosz