Can I use code with license X in project with license Y ?

A while back Simon asked me to explain my preference for MIT license (as opposed to GPL) for my projects and keep it civil.

Despite the hardship of latter condition, I managed to put together illustration of how popular software licenses play with each other (or don’t).

Compatibility of licenses

code
GPLv2+ GPLv2 GPLv3 MIT BSD Apache v2
project GPLv2+ yes no no yes yes no
GPLv2 yes yes no yes yes no
GPLv3 yes no yes yes yes yes
MIT no no no yes yes yes
BSD no no no yes yes yes
Apache v2 no no no yes yes yes

TL;DR

I prefer MIT because it has affinity for code to drift around, without strings attached. GPL doesn’t play well with other licenses, including the different versions of itself.

I have projects which I can’t release sources of, because of GPL compatibility issues. Sad panda.

Related Posts