Question

Is it legal to use a third party library in a software project that is itself licensed under MPL 2.0?

So some potential project hierarchies would look like this

  • Library Project [MPL 2.0] (Open Source, Distributed)
    • Third party library [Proprietary] (Closed source, not distributed)

  • Someone else's project [MPL 2.0] (Open source, distributed)
    • Library Project [MPL 2.0] (Open Source, Distributed)
      • Third party library [Proprietary] (Closed source, not distributed)

My practical feeling is that this is fine otherwise there could be no use of this license on many platforms whose base libraries are proprietary, like on iOS for example. The only difference being that these libraries are distributed to registered developers.

Was it helpful?

Solution

It should be sufficient to just read the MPL.

3.2. If You distribute Covered Software in Executable Form then:

  • Such Covered Software must also be made available in Source Code Form, as described in Section 3.1, and You must inform recipients of the Executable Form how they can obtain a copy of such Source Code Form by reasonable means in a timely manner, at a charge no more than the cost of distribution to the recipient; and

  • You may distribute such Executable Form under the terms of this License, or sublicense it under different terms, provided that the license for the Executable Form does not attempt to limit or alter the recipients’ rights in the Source Code Form under this License.

3.3. Distribution of a Larger Work

  • You may create and distribute a Larger Work under terms of Your choice, provided that You also comply with the requirements of this License for the Covered Software. If the Larger Work is a combination of Covered Software with a work governed by one or more Secondary Licenses, and the Covered Software is not Incompatible With Secondary Licenses, this License permits You to additionally distribute such Covered Software under the terms of such Secondary License(s), so that the recipient of the Larger Work may, at their option, further distribute the Covered Software under the terms of either this License or such Secondary License(s).

So the MPL isn't viral in the sense that the GPL is. MPL software can't be re-licensed under your own incompatible license, but you can distribute it with any other code under any other license as long as the other license doesn't conflict with the MPL (as the GPL does), and as long as you still distribute the MPL source.

Also, if you're not distributing the software to anyone, then the discussion is moot, as you're not required to distribute source to anyone to whom you don't distribute binaries.

Licensed under: CC-BY-SA with attribution
scroll top