Third-Party Libraries Licenses and Compliance Requirements
Third-Party Libraries Licenses and Compliance Requirements
The BSD 3-Clause License (BSD-3) is a permissive open-source license that allows you to use, modify, and distribute code with minimal restrictions. When including third-party libraries in this project without modifying their code, the following licenses are generally compatible:
✅ Compatible Licenses for Libraries in a BSD-3 Project
- BSD (2-Clause, 3-Clause, 4-Clause)
- MIT
- ISC
- Apache 2.0
- Zlib/libpng
- Boost Software License
- Public Domain (CC0, Unlicense, etc.)
- MPL 2.0 (Mozilla Public License)
- LGPL (Lesser General Public License)
- EPL (Eclipse Public License)
❌ Incompatible or Risky Licenses
- GPL (General Public License, all versions) → Strong copyleft, requires project to be GPL if used as a library.
- AGPL (Affero GPL) → Even stricter than GPL; should be avoided unless explicitly intended.
- Proprietary Licenses → Only if explicitly permitted by the license terms.
📜 What We Need to Provide for Each License
| License | Requirements for Delivery |
|---|---|
| BSD (2-Clause, 3-Clause, 4-Clause) | Include the original license file and copyright notice. |
| MIT | Include the license file and copyright notice. |
| ISC | Include the license file and copyright notice. |
| Apache 2.0 | Include the license file, copyright notice, and a NOTICE file (if provided). If you modify the library, you must mark changes. |
| Zlib/libpng | Include the license file. |
| Boost Software License | Include the license file. |
| Public Domain (CC0, Unlicense, etc.) | No legal requirements, but attribution is good practice. |
| MPL 2.0 | Include the license file. If modified, provide source code for changes. |
| LGPL (Lesser GPL) | Include the license file and inform users they can relink with a modified version of the library. You must provide a way to replace the LGPL library. |
| EPL (Eclipse Public License) | Include the license file and, if modified, provide source code for changes. |
If the project redistributes compiled binaries, make sure to provide the required license files inside the distribution package.