I'm currently examining the possibilities and implications of linking against a GPL library for an application in a commercial context.
From what I've understood of the GPL, as long as the application is used internally there is no obligation to release its code (even if a copy is moved to a controlled subsidiary).
What I don't understand is the following point from the FAQ :
If a library is released under the GPL (not the LGPL), does that mean that any software which uses it has to be under the GPL or a GPL-compatible license?
Yes, because the software as it is actually run includes the library.
If I take a look at the GPL-compatible licenses, some of them (like the boost one) don't seem to impose the release of the code. Using it would create a situation where you could be compliant with the GPL licence without having to respect its obligation of making your code public (which doesn't seem very credible).
(NB : there are components in Adobe Photoshop licensed under boost and I don't think the code is available on demand)
The most reasonable explication would be that I'm missing something… Could you please tell me where I made a mistake ?
Best Answer
Short answer: They're not. They'll become subject to the copyleft.
Long answer:
The Wikipedia article on license compatibility has a good section on GPL compatibility:
[emphasis added]
And more explicitly from the FSF FAQ on GPL compatibility:
And just for edification, here's the FSF's comments on various licenses
FSF's comment on the boost license
Which means that anything licensed under Boost is easily subsumed by the GPL.
Where it gets tricky
Let's say we have project
Foo
licensed under Boost, and projectBar
licensed under GPL and which wants to useFoo
.Bar+Foo
is allowed since the licenses are compatible, and the release ofBar+Foo
must be GPL asBar
is GPL.Foo
, by itself and withoutBar
orBar+Foo
, is still available under the Boost license. Said another way,Bar+Foo
has no license impact uponFoo
itself.The resulting license of the project combination is a forward acting event for the combination only. It is not a retroactive event.
So if someone else wants to take
Foo
and do something else with it, they are still free to do so without the copyleft provision of the GPL. However, if they takeBar+Foo
, deleteBar
and only use+Foo
then they are still bound by the terms of the GPL sinceBar+Foo
was GPL'd.Your other question:
This is directly answered by the FSF GPL FAQ on source distribution
Wholly owned subsidiaries are considered part of the parent organization, so you would legally be in the clear. FSF would point out that you are violating the spirit of Free Software though.