Its very easy for a license to fix this. They can either use common conditions, or they do like GPLv3 and have a list of additional conditions which may be added in order to be compatible with other licenses. MPL do not have that, nor does CDDL, and thus we have the situation where they are incompatible with most other copyleft licenses.
The primary difference between MPL 1.1 and CDDL 1.0 with MPL 2.0 is that sections 1.7 and 3.3 of MPLv2 explicitly bow to GPL, a concession made by Mozilla to attempt to end this nonsense. Section 3.7 of MPL 1.0 and 1.1 (3.6 of CDDL) are clauses that imply GPL compatibility, without explicitly naming GPL. That wasn't good enough for the FSF, thus, MPLv2.
MPL was chosen as a template for CDDL because sections 3.7 (CDDL 3.6) gives it a quality like BSD, that the binaries can be larger works with different license terms while the rest of the license retains the copyleft qualities of the source code. Thus, CDDL would have "all the advantages of BSD, all the advantages of GPL".
Any supposed incompatibility is in the legal opinion of the FSF, who never stated their reasons, only the final conclusion, preventing healthy discussion on the matter.
Since the FSF and GNU identify all versions of MPL and CDDL to be "free" and "copyleft", why is the burden on CDDL or MPL? The FSF could have solved this by explicitly naming MPL/CDDL in GPLv3 (as they did with AGPL).
That issue was resolved with a specific section in the MPLv2 that allows licensing the code under (L)GPLv2+/AGPLv3+.
1.12. “Secondary License”
means either the GNU General Public License, Version 2.0, the GNU Lesser General Public License, Version 2.1, the GNU Affero General Public License, Version 3.0, or any later versions of those licenses.
The MPLv1.0/v1.1 allows automatically upgrading to any later version of the MPL, in section "6.2. Effect of New Versions. ". Therefore (IANAL etc.) any code published under MPL is compatible with GPLv2+.CDDL is and was created with the purpose of being GPL incompatible, because Sun did not want Linux to be able to use ZFS and DTRACE which were technical crown-jewels of Solaris.
>The binary in memory linking clause is the most harmful thing to ever happen to free software.
What ?
Not true at all.
* https://www.reddit.com/r/IAmA/comments/31ny87/i_am_the_cto_o...
* https://www.youtube.com/watch?v=-zRN7XLCRhc&feature=youtu.be...
(usual disclaimer, not a lawyer, etc.). CDDL is file based - basically saying "if you modify this file, and distribute the software, you must provide the source code to the modified files".
Sun's intent (as far as I understand) was to appease OEMs by allowing them add additional files to Solaris (think device drivers, etc.) without requiring them to give away the source to their IP.
They were initially waiting for GPLv3 to be finalized (which would have been fine since Linux is GPLv2 ONLY) but it took too much time so they created CDDL which was, of course GPL incompatible.
* https://www.youtube.com/watch?v=-zRN7XLCRhc&feature=youtu.be...
If you want it both ways, go dual lincense with GPL and a commercial license. Just be up front and honest about it.
That said, I need to reread GPL3 in detail...
But otherwise, yes: GPL, LGPL, BSD/MIT are the principle cases.
With the following preferred licenses you'd get explicit patent clauses, in ascending order of copyleft-ness:
ALv2 MPLv2 LGPLv3 GPLv3 AGPLv3
Perhaps the Eclipse Public License would also be an alternative at the same level as MPLv2 but I'm not familiar with it.
ALv2 == Apache License, v2.
Common Development and Distribution License (CDDL), version 1.0 (#CDDL)
This is a free software license.
The binary in memory linking clause is the most harmful thing to ever happen to free software. It destroys collaboration and restricts user freedom. It causes partisanship and infighting within our communities and prevents good ideas, the best ideas, from being freely shared (breaking both freedoms 2 & 3!). GNU has declared war on other licenses for far less than that.
Can we all admit that the in memory linking clause makes GPL non-free software? We'd all be better off to realize it.