Updated: Aug 23, 2022

Leptonica has adopted a highly unrestricted form of copyright license for source code. The terms are summarized at the top of each source file:

/*====================================================================*
 -  Copyright (C) 2001 Leptonica.  All rights reserved.
 -
 -  Redistribution and use in source and binary forms, with or without
 -  modification, are permitted provided that the following conditions
 -  are met:
 -  1. Redistributions of source code must retain the above copyright
 -     notice, this list of conditions and the following disclaimer.
 -  2. Redistributions in binary form must reproduce the above
 -     copyright notice, this list of conditions and the following
 -     disclaimer in the documentation and/or other materials
 -     provided with the distribution.
 -
 -  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 -  ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 -  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 -  A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL ANY
 -  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 -  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 -  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 -  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
 -  OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 -  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 -  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *====================================================================*/

A comparison with the GNU open source General Public License (GPL) is instructive. The GPL aggressively promotes open source by requiring that if any modification of open source is used in a commercial product, the source for the ENTIRE product must be made open source, along with any modification of the open source code that was imported. This is the reason that Bill Gates is terrified of open source. He has forbidden Microsoft employees from having any contact with it.

A far less restrictive license would omit the "infection" clause, but still require that any modifications used in products must be made available to the open source community.

The Leptonica copyright is less restrictive still. We use the BSD 2-clause license, which is similar to the Apache license but much briefer. Kirk McKusick playfully called the BSD license a copycenter, as differentiated from the usual copyright and the GPL copyleft: "Take it down to the copy center and make as many copies as you want." The BSD restrictions can be approximately summarized as: (1) Don't pretend that you wrote this, and (2) Don't sue us if it doesn't work.

For Leptonica, as with Apache and BSD, modifications of the source code that are used in commercial products can be made without any obligation to make them available in open source. (This does happen voluntarily -- it's likely that the majority of issues noted by people working on commercial products are reported back, often with patches.) The Leptonica license only requires that any use of the source, whether in original or modified form, must include the Leptonica copyright notice, and that modified versions must be clearly marked as such.

Why use a minimally restrictive license? Simple. Between NIH ("not invented here") and the learning curve for a large software package, it makes no sense to add further barriers to the use of this library. Also, as explained elsewhere (e.g., see README.html), everything possible has been done to simplify the integration of Leptonica with other C and C++ packages that you are using. And by making Leptonica available and useful to the largest possible community of developers, we get the benefit of their help in testing and bug reporting.

At present there are about 70 different licenses that have been approved by the Open Source Initiative, all of which can be found here. GNU has five of them, including 2 versions of GPL and 2 versions of the "lesser" GPL. Version 3 of GPL is twice as long and four times as complicated as Version 2. I am anxiously awaiting the introduction of Version 4.


Creative Commons License
This documentation is licensed by Dan Bloomberg under a Creative Commons Attribution 3.0 United States License.

© Copyright 2001-2023, Leptonica