Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 687276 - games-fps/gzdoom-4.1.2: License of bundled cephes-2.8 math library
Summary: games-fps/gzdoom-4.1.2: License of bundled cephes-2.8 math library
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: William Breathitt Gray
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks:
 
Reported: 2019-06-03 14:36 UTC by William Breathitt Gray
Modified: 2019-06-05 13:56 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description William Breathitt Gray 2019-06-03 14:36:49 UTC
The cephes license is simple and has just a single clause: "What you see here may be used freely but it comes with no support or guarantee."

See the license text here: https://www.netlib.org/cephes/readme
Comment 1 Ulrich Müller gentoo-dev 2019-06-03 15:33:06 UTC
(In reply to William Breathitt Gray from comment #0)
> The cephes license is simple and has just a single clause: "What you see
> here may be used freely but it comes with no support or guarantee."

As I read the above, it only grants the right to use (freedom 0), but not the right to modify or redistribute copies.
Comment 2 William Breathitt Gray 2019-06-03 15:43:15 UTC
(In reply to Ulrich Müller from comment #1)
> (In reply to William Breathitt Gray from comment #0)
> > The cephes license is simple and has just a single clause: "What you see
> > here may be used freely but it comes with no support or guarantee."
> 
> As I read the above, it only grants the right to use (freedom 0), but not
> the right to modify or redistribute copies.

That is a fair assessment I believe; I didn't find any other license document provided by the Cephes authors, so this is likely the extend of the rights granted.
Comment 3 Kristian Fiskerstrand (RETIRED) gentoo-dev 2019-06-04 12:15:40 UTC
(In reply to Ulrich Müller from comment #1)
> (In reply to William Breathitt Gray from comment #0)
> > The cephes license is simple and has just a single clause: "What you see
> > here may be used freely but it comes with no support or guarantee."
> 
> As I read the above, it only grants the right to use (freedom 0), but not
> the right to modify or redistribute copies.

That is my reading as well, this license doesn't qualify for MISC-FREE and any package using this license as its sole grant of rights must be bindist and mirror restricted.
Comment 4 Ulrich Müller gentoo-dev 2019-06-04 13:55:04 UTC
(In reply to Kristian Fiskerstrand from comment #3)
> That is my reading as well, this license doesn't qualify for MISC-FREE and
> any package using this license as its sole grant of rights must be bindist
> and mirror restricted.

Here is an old Debian discussion about the issue, where the author gave permission to distribute cephes 2.8 (which is the version bundled with games-fps/gzdoom) under the BSD license:
https://lists.debian.org/debian-legal/2004/12/msg00295.html
Comment 5 Ulrich Müller gentoo-dev 2019-06-04 14:18:07 UTC
So as far as I can see, this can be distributed under a free software license, and I would suggest the following:
- Remove "cephes" from gzdoom's LICENSE ("BSD" is already there).
- Contact upstream and point them to the Debian discussion. Maybe they could add the author's boilerplate to their bundled lib.

Reassigning to maintainer, but please wait for an ack from the license team.

Disclaimer: IANAL, TINLA.
Comment 6 Stefan Strogin gentoo-dev 2019-06-04 14:33:55 UTC
I don't know if it is helpful here, but FYI. There is https://github.com/deepmind/torch-cephes - as I can see it is the same library, distributed under BSD with permission of the author:
https://github.com/deepmind/torch-cephes/blob/master/LICENSE.txt
Comment 7 William Breathitt Gray 2019-06-04 14:53:36 UTC
Upstream notified: https://github.com/coelckers/gzdoom/pull/859
Comment 8 Kristian Fiskerstrand (RETIRED) gentoo-dev 2019-06-04 21:33:28 UTC
(In reply to Ulrich Müller from comment #4)
> (In reply to Kristian Fiskerstrand from comment #3)
> > That is my reading as well, this license doesn't qualify for MISC-FREE and
> > any package using this license as its sole grant of rights must be bindist
> > and mirror restricted.
> 
> Here is an old Debian discussion about the issue, where the author gave
> permission to distribute cephes 2.8 (which is the version bundled with
> games-fps/gzdoom) under the BSD license:
> https://lists.debian.org/debian-legal/2004/12/msg00295.html

I'm a bit confused as to whether that is actually the case, in particular with regards to "   * This software is derived from the Cephes Math Library and is
   * incorporated herein by permission of the author." seems to be potentially discriminatory and not adhering to the full BSD. Can the same code be used for other projects without permission?
Comment 9 Kristian Fiskerstrand (RETIRED) gentoo-dev 2019-06-04 21:36:22 UTC
(In reply to Kristian Fiskerstrand from comment #8)
> (In reply to Ulrich Müller from comment #4)
> > (In reply to Kristian Fiskerstrand from comment #3)
> > > That is my reading as well, this license doesn't qualify for MISC-FREE and
> > > any package using this license as its sole grant of rights must be bindist
> > > and mirror restricted.
> > 
> > Here is an old Debian discussion about the issue, where the author gave
> > permission to distribute cephes 2.8 (which is the version bundled with
> > games-fps/gzdoom) under the BSD license:
> > https://lists.debian.org/debian-legal/2004/12/msg00295.html
> 
> I'm a bit confused as to whether that is actually the case, in particular
> with regards to "   * This software is derived from the Cephes Math Library
> and is
>    * incorporated herein by permission of the author." seems to be
> potentially discriminatory and not adhering to the full BSD. Can the same
> code be used for other projects without permission?

To elaborate on this, to be me it sounds like the main code is licensed under BSD as before, but it embends a copy of the code of cephes, which is not under BSD, with the permission of the author. Not making cephes BSD itself.
Comment 10 Kristian Fiskerstrand (RETIRED) gentoo-dev 2019-06-04 21:53:57 UTC
(In reply to Kristian Fiskerstrand from comment #9)
> (In reply to Kristian Fiskerstrand from comment #8)
> > (In reply to Ulrich Müller from comment #4)
> > > (In reply to Kristian Fiskerstrand from comment #3)
> > > > That is my reading as well, this license doesn't qualify for MISC-FREE and
> > > > any package using this license as its sole grant of rights must be bindist
> > > > and mirror restricted.
> > > 
> > > Here is an old Debian discussion about the issue, where the author gave
> > > permission to distribute cephes 2.8 (which is the version bundled with
> > > games-fps/gzdoom) under the BSD license:
> > > https://lists.debian.org/debian-legal/2004/12/msg00295.html
> > 
> > I'm a bit confused as to whether that is actually the case, in particular
> > with regards to "   * This software is derived from the Cephes Math Library
> > and is
> >    * incorporated herein by permission of the author." seems to be
> > potentially discriminatory and not adhering to the full BSD. Can the same
> > code be used for other projects without permission?
> 
> To elaborate on this, to be me it sounds like the main code is licensed
> under BSD as before, but it embends a copy of the code of cephes, which is
> not under BSD, with the permission of the author. Not making cephes BSD
> itself.

I should probably start thinking things through fully before writing, but continuing on this. If the above is a correct interpretation we would indeed be able to redistribute the original code, but it is not Free Software. We wouldn't be able to split out the library in an own package to use with other projects (as should be done to begin with), and if e.g a security bug is discovered in the original code we might not be able to update it to fix it, even if the library upstream has fixed it in a new version, as the grant to embed the code can be read exclusive for the upstream of the game.

Safe to say I don't much like that "solution"
Comment 11 William Breathitt Gray 2019-06-04 23:58:43 UTC
(In reply to Kristian Fiskerstrand from comment #10)
> (In reply to Kristian Fiskerstrand from comment #9)
> > (In reply to Kristian Fiskerstrand from comment #8)
> > > (In reply to Ulrich Müller from comment #4)
> > > > (In reply to Kristian Fiskerstrand from comment #3)
> > > > > That is my reading as well, this license doesn't qualify for MISC-FREE and
> > > > > any package using this license as its sole grant of rights must be bindist
> > > > > and mirror restricted.
> > > > 
> > > > Here is an old Debian discussion about the issue, where the author gave
> > > > permission to distribute cephes 2.8 (which is the version bundled with
> > > > games-fps/gzdoom) under the BSD license:
> > > > https://lists.debian.org/debian-legal/2004/12/msg00295.html
> > > 
> > > I'm a bit confused as to whether that is actually the case, in particular
> > > with regards to "   * This software is derived from the Cephes Math Library
> > > and is
> > >    * incorporated herein by permission of the author." seems to be
> > > potentially discriminatory and not adhering to the full BSD. Can the same
> > > code be used for other projects without permission?
> > 
> > To elaborate on this, to be me it sounds like the main code is licensed
> > under BSD as before, but it embends a copy of the code of cephes, which is
> > not under BSD, with the permission of the author. Not making cephes BSD
> > itself.
> 
> I should probably start thinking things through fully before writing, but
> continuing on this. If the above is a correct interpretation we would indeed
> be able to redistribute the original code, but it is not Free Software. We
> wouldn't be able to split out the library in an own package to use with
> other projects (as should be done to begin with), and if e.g a security bug
> is discovered in the original code we might not be able to update it to fix
> it, even if the library upstream has fixed it in a new version, as the grant
> to embed the code can be read exclusive for the upstream of the game.
> 
> Safe to say I don't much like that "solution"

A more recent email exchange (7 September 2018) with the Cephes author is provided by the node-cephes team: https://github.com/nearform/node-cephes/blob/master/LICENSE

    You are welcome to distribute the Cephes material
    posted to the net under a BSD license.

So it appears that the Cephes author is not opposed to release of Cephes under the BSD license for the code on the netlib website. However, for whatever reason, the netlib website has not been updated so we are forced to assume any updates to Cephes will be released under the more restrictive cephes license: https://www.netlib.org/cephes/

This may be simply that the Cephes author has not been directly asked to updated the netlib website. For what it's worth, it looks like Cephes is effectively an abandoned project since the copyrights listed from the netlib site suggest version 2.8 was released in 2000 and no new versions have been since released. If there are security/bug issues, it would likely have to be resolved via a fork of the project anyway.
Comment 12 Kristian Fiskerstrand (RETIRED) gentoo-dev 2019-06-05 12:54:39 UTC
(In reply to William Breathitt Gray from comment #11)
> A more recent email exchange (7 September 2018) with the Cephes author is
> provided by the node-cephes team:
> https://github.com/nearform/node-cephes/blob/master/LICENSE
> 
>     You are welcome to distribute the Cephes material
>     posted to the net under a BSD license.
> 

This statement is much better for a broader interpretation, indeed.
Comment 13 Larry the Git Cow gentoo-dev 2019-06-05 13:56:35 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ecf073cc710fdf64b246e2e5d66d73d0f067e8e2

commit ecf073cc710fdf64b246e2e5d66d73d0f067e8e2
Author:     William Breathitt Gray <vilhelm.gray@gmail.com>
AuthorDate: 2019-06-04 14:10:12 +0000
Commit:     Ulrich Müller <ulm@gentoo.org>
CommitDate: 2019-06-05 13:55:09 +0000

    games-fps/gzdoom: Remove cephes from LICENSES list
    
    The Cephes code used in GZDoom is provided under the BSD license, so the
    cephes license is not necessary.
    See also <https://lists.debian.org/debian-legal/2004/12/msg00295.html>.
    
    Closes: https://bugs.gentoo.org/687276
    Closes: https://github.com/gentoo/gentoo/pull/12191
    Package-Manager: Portage-2.3.67, Repoman-2.3.13
    Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
    Signed-off-by: Ulrich Müller <ulm@gentoo.org>

 games-fps/gzdoom/gzdoom-4.1.2.ebuild | 2 +-
 licenses/cephes                      | 9 ---------
 2 files changed, 1 insertion(+), 10 deletions(-)