-
Notifications
You must be signed in to change notification settings - Fork 143
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Licence and use of generated code in a commercial product? Go / No-Go? #620
Comments
You're welcome, I've also learned so much myself and always appreciate feedback! IANAL, however I've had some basic training while working at ARM regarding copyright:
The MPLv2 license applies to the generated code. The C preprocessor is a code generator too (in fact very similiar to Jinja2 for basic use), and it doesn't change the license terms either of course. In particular, modm adds significant "original work" to the modm-devices data, thus the threshold of originality is met.
We chose the MPLv2 specifically because it only applies to the modm files only, and not all project files like the "greedy" GPL license. My recommended workflow:
Note that the code in So basically:
|
Thanks @salkinium for the useful guidance. What to do with these as I'll need to adapt to support a bootloader: Can you see any pitfalls? Thank you kindly! |
Yes, that will fully comply with the MPLv2 terms (and the BSD, MIT etc terms in
Hm, that's a good point I haven't considered before. These files are supposed to be adapted for the specific project, it's a bit dumb to have licensed them with MPLv2 🤦♂️. I'll check if I can relicense these files to BSD (but I'm not the sole author).
I want to point out that #568 has a new CMake implementation, that better than what we have right now, with more IDE integration (written by someone who actually knows how CMake works). It needs some minor polish before merge, but it's basically done. |
All top-level build scripts are now BSD 2-clause licensed, incl. the new CMake generator. |
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
Hi folks,
I like this project - I've played and tinkered and it's been a great help shifting my mindset towards modern C++.
Many thanks to the creators and maintainers. The next step is applying it to the next project that lands on my desk. For me it's fun, but for my boss, it's a commercial product!
My main dev work will be on the generated source code - which I will detach and 'run with' separate from the lbuild / templates directories. This detached code will get fixes and changes specific to my project. I'm happy to feed fixes and relevant improvments back into the template code, realistically my future colleagues may not. I can't open source changes specific to the product without getting slapped by my scary boss.
But - I'm not working on the template code in Github, only the generated code (basically a copy with bits chopped out!)
Where does this stand as far as MPL2?
Is there even an acceptable workflow for a commercial product using modm as a BSP starting point under the MPL2 licence? If so, what would it be?
What are your thoughts?
Again, thanks to @salkinium & all for the many hours of free time put into this project. Its been a great learning experience if nothing else can come of it.
The text was updated successfully, but these errors were encountered: