license.txt issues

General discussion about LÖVE, Lua, game development, puns, and unicorns.
Post Reply
User avatar
pgimeno
Party member
Posts: 3544
Joined: Sun Oct 18, 2015 2:58 pm

license.txt issues

Post by pgimeno »

Again, sorry for reporting this here instead of bitbucket. I can't use bitbucket's bugtracker.

I've been checking license.txt and noticed a few issues with the license statements for mpg123 and OpenAL.

First, mpg123 is LGPL 2.1 only, while OpenAL is LGPL 2.0 or greater. However, the LGPL/GPL 3.0 texts are included, which doesn't make much sense. OpenAL may be relicensed under the LGPL 3.0, if there's a point to doing it (as anyone can grab a LGPL 2.0 copy anyway), but mpg123 may not be relicensed.

Second, there are several files in OpenAL under a different license. Debian has made a great job tracking these, so I'll reproduce it here (see my summary under it) (NOTE: edited to remove emails for spam reasons):

Code: Select all

Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: openal-soft
Upstream-Contact: Chris Robinson <email removed>
Source: http://kcat.strangesoft.net/openal.html

Files: *
Copyright:
 © 1999-2014 the OpenAL team
 © 2008-2015 Christopher Fitzgerald
 © 2009-2015 Chris Robinson
 © 2013 Anis A. Hireche
 © 2013 Nasca Octavian Paul
 © 2013 Mike Gorchak
 © 2014 Timothy Arceri
License: LGPL-2+
 This library is free software; you can redistribute it and/or
 modify it under the terms of the GNU Library General Public
 License as published by the Free Software Foundation; either
 version 2 of the License, or (at your option) any later version.
 .
 This library is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 Library General Public License for more details.
 .
 You should have received a copy of the GNU Library General Public
 License along with this library; if not, write to the Free Software
 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA  02110-1301 USA

Files: Alc/backends/opensl.c
Copyright: 2011 The Android Open Source Project
License: Apache
 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at
 .
 http://www.apache.org/licenses/LICENSE-2.0
 .
 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.

Files:
 examples/alhrtf.c
 examples/allatency.c
 examples/alloopback.c
 examples/alreverb.c
 examples/alstream.c
 examples/altonegen.c
 examples/common/alhelpers.c
 examples/common/sdl_sound.c
 utils/openal-info.c
Copyright:
 © 2010, 2015 Chris Robinson <email removed>
License: Expat

Files:
 examples/alffplay.c
Copyright:
 © 2003 Fabrice Bellard
 © Martin Bohme
Comment:
 No copyright or license specified for alffplay.c. Assumed to be under the
 same license as ffplay, on which it was based, which is LGPL-2.1+ with the
 license grant quoted here.
License: LGPL-2.1+
 FFmpeg is free software; you can redistribute it and/or
 modify it under the terms of the GNU Lesser General Public
 License as published by the Free Software Foundation; either
 version 2.1 of the License, or (at your option) any later version.
 .
 FFmpeg is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 Lesser General Public License for more details.
 .
 You should have received a copy of the GNU Lesser General Public
 License along with FFmpeg; if not, write to the Free Software
 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Files: Alc/bs2b.c
 OpenAL32/Include/bs2b.h
Copyright: 2005 by Boris Mikhaylov
License: Expat

License: Expat
 Permission is hereby granted, free of charge, to any person obtaining
 a copy of this software and associated documentation files (the
 "Software"), to deal in the Software without restriction, including
 without limitation the rights to use, copy, modify, merge, publish,
 distribute, sublicense, and/or sell copies of the Software, and to
 permit persons to whom the Software is furnished to do so, subject to
 the following conditions:
 .
 The above copyright notice and this permission notice shall be
 included in all copies or substantial portions of the Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
 CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
 TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Files:
 cmake/FindALSA.cmake
 cmake/FindFFmpeg.cmake
 cmake/FindJACK.cmake
 cmake/FindSDL2.cmake
Copyright:
 © 2006 Matthias Kretz
 © 2008 Alexander Neundorf
 © 2003-2011 Kitware, Inc.
 © 2009-2011 Philip Lowman
 © 2011 Michael Jansen
 © 2012 Benjamin Eikel
License: BSD-3-clause-cmake
 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 above 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.
 .
  * The names of Kitware, Inc., the Insight Consortium, or the names of
    any consortium members, or of any contributors, may not be used to
    endorse or promote products derived from this software without
    specific prior written permission.
 .
 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER 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 AUTHORS 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.

Files: utils/makehrtf.c
Copyright: 2011-2014 Christopher Fitzgerald
License: GPL-2+
 This program is free software; you can redistribute it
 and/or modify it under the terms of the GNU General Public
 License as published by the Free Software Foundation; either
 version 2 of the License, or (at your option) any later
 version.
 .
 This program is distributed in the hope that it will be
 useful, but WITHOUT ANY WARRANTY; without even the implied
 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
 PURPOSE.  See the GNU General Public License for more
 details.
 .
 You should have received a copy of the GNU General Public
 License along with this package; if not, write to the Free
 Software Foundation, Inc., 51 Franklin St, Fifth Floor,
 Boston, MA  02110-1301 USA
 .
 On Debian systems, the full text of the GNU General Public
 License version 2 can be found in the file
 /usr/share/common-licenses/GPL-2.

Files: debian/*
Copyright: 2008-2014, Debian Games Team
License: GPL-3+
 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.
 .
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 .
 On a Debian system a full copy of the GPL version 3 is available in
 /usr/share/common-licenses/GPL-3.
Note in particular that:
  • Alc/bs2b.c and the corresponding .h are licensed under the Expat ("MIT") license, therefore the copyright and the list of conditions should be reproduced.
  • Alc/backends/opensl.c is licensed under the Apache license. If that file is used in any of the binaries (I guess it's used in Android?) then the license should be taken into account, which probably means including the copyright holders and mentioning the license.
  • There are other files with Expat and other licenses but it doesn't look like they end up being part of the binary.
Third, while not explicit in the license for binaries, I think that the copyright holders of the LGPL works should be mentioned, together with the license statement. See how Debian did it above for an example.

Fourth, I'm not sure if offering access to the location of the original sources suffices to comply with the LGPL, because you're not pointing to the specific revision that was used to build the binaries. Perhaps it would be better to host a copy of the sources used for the build, and link to them instead (or additionally). This is especially important if there was any modification beyond mere compiling, though I guess that's not the case.

Lastly, there's no need to reproduce the Expat license so many times; that's not a requirement of the license. See how Debian did it. Something like this could work: "Work blahblah is licensed under the Expat license. Copyright blah blah. See the full text of the license below" (rinse, repeat) then: "Some of these works are under the Expat license. The text of the license is as follows: blahblah" (the choice of order is for the term "above" in the license to make sense).
User avatar
bartbes
Sex machine
Posts: 4946
Joined: Fri Aug 29, 2008 10:35 am
Location: The Netherlands
Contact:

Re: license.txt issues

Post by bartbes »

I've updated the license file, do you think it's (more) compliant now?
User avatar
pgimeno
Party member
Posts: 3544
Joined: Sun Oct 18, 2015 2:58 pm

Re: license.txt issues

Post by pgimeno »

I believe it is, thank you very much!
Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot] and 65 guests