[etherlab-users] IgH Master License

Gavin Lambert gavin.lambert at tomra.com
Thu Jul 26 02:06:14 CEST 2018


On 25 July 2018 22:46, quoth Mike O'Connor:
> The IgH Ethercat Master is GPL with parts being LGPL also mentioned so its
> not clear to me which set of rules would apply.
> 
> LGPL allows you to bind via a library and not have your own code be come
> `infected` by the GPL requirements of releasing your own code under the
> GPL also.
> 
> Code which is under GPL and your code build against it must be release to
> the public.
> 
> The only really safe way is to write parts which directly connect to Ethercat
> Master as OSS code but have this communicate to your private code.

That's not correct.

The kernel-mode parts of the master (and the user-mode command line tool) are GPL (just like most of the kernel itself).  You are required to make the source code available to anyone which you distribute binaries to (which does not necessarily mean the public in general).  If you have made changes to kernel-mode code (such as writing your own kernel-mode application), this is required to use the same license and thus again you must make the source for that available to anyone who receives the binaries.  (This includes even if they receive them as part of an "appliance" that they're not expected to modify.)  If you have not made any modifications to the kernel-mode code and you have not added a kernel-mode application then providing a link to where they can download the source from the etherlab.org website or SourceForge is sufficient for this purpose (although you must be prepared to supply the full source if requested, especially if those sites go down in future).

The user-mode library of the master is LGPL.  You are again required to make the source of the library itself available to anyone that you distribute the binaries to -- a link is adequate if you haven't modified the source.  You are not required to distribute the source for an application that merely dynamic-links to the user-mode library, but you can if you wish.  The key requirement is that someone should be able to modify and recompile the library and it should still work with your proprietary app (if they didn't break the interface).

Also note that in general, you can't "bypass" the GPL by releasing a GPL app that calls a proprietary app to do the "real work".  If the GPL app cannot operate without the proprietary app, then the proprietary app is still considered part of the same overall application and thus can't be proprietary and must be GPL instead.



More information about the Etherlab-users mailing list