License
Tup is dual-licensed; as such, you are able to choose which set of terms apply for you to use and distribute tup. You can use and distribute it freely under the GPL-v2 license, or choose a commercial license for distribution with a closed-source program (such as a commercial IDE).
Option 1: GPL-v2
Tup is available under the GPL-v2 license. See the tup/COPYING file for the actual license. In general, with the GPL-v2 license:
- You can freely use tup to construct any program, be it free or commercial, open or closed source. The fact that tup is licensed under the GPL does not mean that the program you build with it also must be licensed under the GPL, except as described below.
- You can distribute tup as part of a work based on it so long as all portions of the work are compatible with the GPL. For example, if you distribute an Integrated Development Environment (IDE) that uses tup as the build system (even if tup is imported as a plug-in), then all parts of the IDE must be open source, modifiable, and freely redistributable by the end user. Note that the exact method of how tup is invoked from the IDE is not relevant here, since an IDE is considered a work based on the Program (tup), and not a mere aggregation.
Option 2: Commercial
There is no single commercial license for tup. A commercial license is available for those wishing to include tup in a larger work, but where releasing all parts of the larger work under the GPL is not feasible. The terms and conditions for such a license are determined on a case-by-case basis. For more information, please contact Mike Shal - you can find my email in the git log.
Contributor License Agreement
Due to the dual-licensed nature of tup, contributors are asked to sign a Contributor License Agreement (CLA) and send it to the project owner. Such contributions (ie: patches sent to the mailing list, branches made available on GitHub, etc) will be made freely available under the GPL-v2 license, and may also be made available under commercial licenses. The CLA is located here: icla.txt
Third-party Libraries
Tup is distributed with several third-party utilities and libraries. These are licensed as follows:
- Queue and red-black tree implementations are distributed under the BSD license. See tup/src/bsd/queue.h and tup/src/bsd/tree.h for copyright information and license terms.
- The inih library is distributed under the New BSD license. See tup/src/inih/LICENSE.txt for copyright information and license terms.
- The SQLite library is in the public domain and freely redistributable. See tup/src/sqlite3/sqlite3.h or http://www.sqlite.org/copyright.html for information.
- The Lua programming language is distributed under the MIT license. MIT license. See tup/src/lua/LICENSE.txt or http://www.lua.org/license.html for information.