views:

1733

answers:

3

In section 3(d), the Microsoft Public License (Ms-PL) states: "If you distribute any portion of the software in compiled or object code form, you may only do so under a license that complies with this license". It seems to me that the statement "complies with this license" means that software that contains the Ms-PL-licensed code must also be as free as the Ms-PL permits. Is this a viral requirement, similar to the GNU GPL?

+2  A: 

It seems that you could distribute the compiled Ms-PL code in a separate library, licensed under Ms-PL (or compatible), and distribute your own code compiled in a different library that you could license as you see fit. Apologies if this does not answer the question as asked.

Chris Marasti-Georg
yay drive-bys. Why is the answer wrong?
Chris Marasti-Georg
+10  A: 

No. What that clause means is that you need to comply with the license for the code licensed under the MS-Pl. There's no requirement that the complete derivative work needs to be similarly licensed or that you need to provide source code to your modifications or anything like that.

The only thing you need to do is include the original license text. You'll still have to comply with the patent and trademark (etc) clauses though. As long as you include the license and aren't doing anything that directly violates the license, you can do pretty much anything with the code. Make any changes you like, put any restrictions you want on your code, sell it, distribute it in binary-only form, etc.

skoob
+1  A: 

I also was worried this text looked a lot like a viral requirement.

But several analysis on the web confirms that in fact this text only means that the first part of clause 3(d) (include the licence text) does not apply to redistribution of binaries, but that the other restrictions of the licence still apply (don't abuse Trademark, don't remove copyright notice, renounce any patent claim against other contributors).

See http://www.codeproject.com/info/Licenses.aspx : Compiled derived code can be distributed, for both commercial and non-commercial use. If the source code is to be redistributed then a complete copy of this license must be included in the redistribution. - Bug fixes / extensions must be released to the public domain: False - Can be used in proprietary (closed source) applications: True - Is a viral licence: False

and blogs.technet.com/b/tarpara/archive/2009/04/06/microsoft-open-sources-asp-net-mvc-1-0-with-bsd-like-ms-pl-license.aspx : There is not a whole lot to deal with as it effectively behaves like a BSD license.

jmd