Replies: 4 comments 13 replies
-
Meson allows you to declare your licenses, and e.g. write a dependency manifest describing exchange license used in the project (and its subprojects). It doesn't have any enforcement method though, it's purely advisory. I'm not sure what license compliance enforcement at the build system level would look like anyway. As far as providing license kwargs to
|
Beta Was this translation helpful? Give feedback.
-
What I think we could potentially do:
What I personally would be totally against is making policy decisions in Meson. We are not a lawyer firm and deciding which licenses are compatible is a full time job for a whole legal team. |
Beta Was this translation helpful? Give feedback.
-
We formally recommend people not use a list of licenses in the project() field, but to use SPDX expressions instead as those support conditional logic, booleans and/or, and so on. So at a minimum your idea would require parsing the textual content and figuring out whether a forbidden license is optional and thus not a real restriction. |
Beta Was this translation helpful? Give feedback.
-
Here is my proposal:
|
Beta Was this translation helpful? Give feedback.
-
One requirement I have is to ensure that all the libs my project uses have compatible licenses, and to distribute the license files for every dependency. I know that
project()
already haslicense
andlicense_files
fields. I also know that pkg-config does not provide that kind of information.What would be the best strategy to achieve my goal? Is it something that could (should?) eventually be managed by meson?
One possible idea I have would be to add
license
andlicense_files
attributes todependency()
, and to have a global switch to make those keywords mandatory. This would force every dependency to specify its license. Then there could be a module with functions to install license files, and to check for license compatibility (something similar to Python liccheck package).Beta Was this translation helpful? Give feedback.
All reactions