License for binary copies of REDUCE downloaded from Sourceforge =============================================================== Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: % * Redistributions of source code must retain the relevant copyright notice, this list of conditions and the following disclaimer. * 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 THE COPYRIGHT OWNERS OR 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. ======================================================================== Commentary and further explanation ================================== The CSL-based binary versions of Reduce are linked with code that is subject to the LGPL 2.1. A copy of that license is present in the reduce.doc directory (which is where this file is). As of May 2016 the LGPL libraries involved are FOX GUI toolkit, crlibm, wxWidgets. The use of these (and any other LGPL code) is covered by the LGPL. LGPL states, in part: "6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications." The Reduce binaries are works containing part of the library as in the above, and I choose to make them available under the BSD license as at the top of this file. Note that one objective of the LGPL is that applications linked against an LGPL library can even be released subject to commercial closed licenses, and those could permit or prohibit further distribution at their whim. The BSD license should in general be seen as more open than any proprietary distribution, so its use should not cause worry to any (L)GPL enthusiast. When the complete binary archive (a .tar.bz2 or .zip file) is fetched it will automatically include a copy of this Reduce documentation and hence it will satisfy license terms as regard propogation of the conditions of use. To ensure that my initial distribution of the binary is valid under terms of LGPL 2.1 I note (a) the BSD license that I apply downstream permits modification and reverse engineering, so the LGPL requirement that these be allowed is satisfied. (b) This notice is intended to be "prominent notice" of the use of LGPL libraries and that my actions are sanctioned by the LGPL 2.1. (c) My intent is that the executable program will not display copyright notices. If other developers change that state then they have a responsibility to arrange to add in matching copyright notices related to the LGPL code. (d) in accordance with Sourceforge policy as well as the LGPL full source of all components (well beyond the "minimal source" that LGPL identifies) will be released on sourceforge alongside any binary distribution, thus LGPL (6)(d) is used to cover source distribution. (e) again since this is an open source project under the BSD license all relevant data, utility programs, build scripts and the like to make it possible to recompile everything on a standard system is naturally present. Observe that the consequences of all the above is that the license terms that apply to anybody who downloads a binary distribution from Sourceforge are the permissive BSD ones rather than any more restrictive (L)GPL ones. Also note that anybody who fetches source and rebuilds or relinks against any LGPL libraries themselves will need to ensure that they adhere to the license terms if they distribute the resulting binary, and they will probably also wish to place a source archive beside their own binaries. The Reduce builds also make use of a collection of other generously licensed components such as libedit, the Berkeley SoftFloat code, in the future there may be use of the Boehm conservative garbage collector, an MD5-evaluation library and other code fragments, in addition to all the standard libraries the come along with the operating environment. The Reduce developers are grateful to all the authors of these libraries, and the full set of Reduce sources should contain clean copies of the versions that we started from and full attribution. In a similar way various font files are also used and the proper credits should be included along with them. Arthur Norman May 2016