This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Project ideas for graduate course


On Tue, 31 Jul 2007, Andrew Lunn wrote:
I'm not sure (again :-) what you mean by "customer":
- a customer of FMTC that wants to sell a (closed source) product
  based on eCos + EML pays a licence fee to FMTC, obtains a LGPL
  version of EML and can create a closed source product, right?  If
  they want, they can modify the EML code [Let's call this customer
  CustomerFoo]

  Note: the LGPL version is exactly the same codebase, only provided a
  with a different license.  That code is "in the open" anyway with a
  GPL license, so why would we object against CustomerFoo
  redistributing the code.

Well, anybody can then pick up the LGPL version and avoid paying for it! The GPL version then becomes redundant. So you might as well distribute the LGPL version and remove the GPL version.

- a customer of CustomerFoo buys a closed source product. That's it.

Nope. Not quite. They buy the closed source produced, but also get a copy of the sources to the open source parts. eg eCos and the LGPL EtherCAT source. Plus, since you use the LGPL, you should supply the customer with the object code files for the closes source parts. The thing about the LGPL is that you are allowed to modify the LGPL code and relink it with the none LGPL parts you got in object code form to rebuild the application. This way, you can bug fix and extend the LGPL parts.

I see, you are right! This means the LGPL license isn't suited for
that purpose. Note that:
- FMTC doesn't consider the EML library as one of its core products,
that's the main reason we've put the code "out there" with a GPL
license for free (as in free beer).
- If someone would want to use this in a closed source product (and
hence make money out of it), the idea is they pay part of the
development cost to obtain a non-gpl license (but indeed the LGPL
isn't the license we want there).


Also, the customer is allowed to use eCos and the LGPL EtherCAT
themselves, since it is open source. They can distribute it, hack it,
do what they want under the GPL+exception and LGPL. However this is
where we might run into problems. the GPL(+exception) and LGPL is
transferable. The customer has just as many rights as the
distributor. However i suspect that the second license for the
EtherCAT is none transferable.

The GPL code is also licensed under another license at the same time
as being GPL. This i don't understand. How can it be GPL and something
else at the same time. This is where i would want copyright lawyers to
take a close look.

As I said, IANAL either :-), the exact "wording" from the license comes from lawyers@beckhoff. However, as I understand it (and that was the spirit of the license), you can consider it exactly the same mechanism as above where you state that eCos is licensed under GPL _plus_ exception. EML is GPL (or LGPL) + exception too, and the exception says that derived code should be compliant with the EtherCAT standard (in case you distribute/sell it, that is). So you should consider the 2 licences as being complementary, not being something else.

Well the eCos GPL+exception gives the user more rights. This is well accepted in the community.

The exception for the EtherCAT i think removes rights. I think it
removes the right to redistribute and the right to redistribute is the
core of the (L)GPL licenses. That is one point i would want a
copyright lawyer to look at if i were considering using EtherCAT
sources.

It does not remove the right to redistribute (modified code) of EML, as long as it stays compatible with the (open) EtherCAT standard (which I think is not so unlogically?)

Klaas




-- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]