[Bug 222509] Mk/bsd.license.db.mk, Templates/Licenses, Mk/bsd.sanity.mk: Fix mixed-up status of MIT license

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Fri Sep 22 08:05:03 UTC 2017


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=222509

            Bug ID: 222509
           Summary: Mk/bsd.license.db.mk,Templates/Licenses,Mk/bsd.sanity.
                    mk: Fix mixed-up status of MIT license
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: Ports Framework
          Assignee: portmgr at FreeBSD.org
          Reporter: yasu at utahime.org
                CC: freebsd-ports-bugs at FreeBSD.org

Created attachment 186612
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=186612&action=edit
patch file

1. Changes done by attached patch

* Add 3 license named MIT_CURRENT, MIT_LEGACY and MIT_ANCIENT to
  Mk/bsd.license.db.mk.
* Add 3 files under Templates/Licenses as license document of them.
* Add codes to Mk/bsd.sanity.mk that warns maintainers that MIT is
  deprecated and one of MIT_[CURRENT|LEGACY|ANCIENT] should be used
  instead.

2. Intension to submit this patch

3 licenses with different sentences are specified as 'LICENSE=MIT'in
Makefile of different ports. I would like to fix this mixed-up status
of MIT license.

3. Backgrounds and Details

While trying to add license information to some ports, I noticed that
3 licenses consisting of different sentences are specified as
'LICENSE=MIT' in the Makefile of different ports. Following are
examples of each case.

Case 1. License of lang/lua53

According to doc/readme.html of source archive, this software is
licensed under following sentenses.

----------------------------------------------------------------------
Copyright (C) 1994-2017 Lua.org, PUC-Rio.

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.
----------------------------------------------------------------------

This is the one certified as 'The MIT License' by Open Source Initiative.

https://opensource.org/licenses/MIT

It seems that a lot of relatively new softwares adopt it.

Case 2. License of x11/xinit

Acording to COPYING of source archive, this software is licensed under
following sentences.

----------------------------------------------------------------------
Copyright 1986, 1988, 1993, 1998 The Open Group

Permission to use, copy, modify, distribute, and sell this software
and its documentation for any purpose is hereby granted without fee,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation.

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 OPEN GROUP 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.

Except as contained in this notice, the name of The Open Group shall
not be used in advertising or otherwise to promote the sale, use or
other dealings in this Software without prior written authorization
from The Open Group.
----------------------------------------------------------------------

First 3 paragraphs of this license are same as license of case 1. But
there is additional 4th paragraph. On TLDLegal this is named as 'X11
License'.

https://tldrlegal.com/license/x11-license#fulltext

Some softwares from Xorg adopt it.

Case 3. License of x11-wm/tvtwm

According to source code files, this software is licensed under
following sentenses.

----------------------------------------------------------------------
     Copyright 1988 by Evans & Sutherland Computer Corporation,
                        Salt Lake City, Utah
Portions Copyright 1989 by the Massachusetts Institute of Technology
                      Cambridge, Massachusetts

                         All Rights Reserved

    Permission to use, copy, modify, and distribute this software and    
    its documentation  for  any  purpose  and  without  fee is hereby    
    granted, provided that the above copyright notice appear  in  all    
    copies and that both  that  copyright  notice  and  this  permis-    
    sion  notice appear in supporting  documentation,  and  that  the    
    names of Evans & Sutherland and M.I.T. not be used in advertising    
    in publicity pertaining to distribution of the  software  without    
    specific, written prior permission.                                  

    EVANS & SUTHERLAND AND M.I.T. DISCLAIM ALL WARRANTIES WITH REGARD    
    TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES  OF  MERCHANT-    
    ABILITY  AND  FITNESS,  IN  NO  EVENT SHALL EVANS & SUTHERLAND OR    
    M.I.T. BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL  DAM-    
    AGES OR  ANY DAMAGES WHATSOEVER  RESULTING FROM LOSS OF USE, DATA    
    OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER    
    TORTIOUS ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE    
    OR PERFORMANCE OF THIS SOFTWARE.                                     
----------------------------------------------------------------------

It seems that license conditions provided by above sentences are same
as that of case 2 license. But sentences themselves are different.

I couldn't find what this lincense is named.

Some old softwares for X Window System adopt it.

Case 4. Multi license of above 3 license.

There are some softwares that specify 'LICENSE=MIT' in Makefile of the
port but that is actually multi license of above 3 licenses. For
example x11-server/xorg-server belongs to this case. (Exactly saying,
it is multi license of them plus some other ones. But I ignore it for
now.)

4. Why these 3 licenses exist?

For me they seems result of revising MIT license. That is,

* At first license of case 3 was MIT license.
* Some years passed and rivise happened. Then license of case 2 became
  MIT license.
* Some more years passed and revise happened again. Now license of
  case 1 became MIT license.

I am not certain. But comparing copyright year of softwares and
considering the fact that xorg-server is multi license of them, I
don't think the probability is low that abobe is right.

5. Should current status be fixed?

Yes, I think so.

Licenses of case 1 and 2 are different in the same way as 2 and 3
clause BSD licenses are different. As for case 3, condition of license
may be same as case 2. But if you said that, condition of 2 clause BSD
license, ISC license and case 1 can be considered as same. But still
they are regarded as diffrent licenses.

After all they are diffrent licenses. So they should be treated as
different in license framework.

5. How can current status be fixed?

A way used to fix 'LICENSE=BSD' issue is also applicable to current
status of 'LICENSE=MIT'. That is.

* Define codes of 3 licenses as MIT_CURRENT, MIT_LEGACY and
  MIT_ANCIENT, and register them to Mk/bsd.license.db.mk.
* Modify Mk/bsd.sanity.mk so following warging message is displayed if
  value of LICENSE includes MIT.
  "LICENSE must not contain MIT, instead use MIT_[CURRENT|LEGACY|ANCIENT]"

This worked very well to purge BSD from LICENSE in Makefile of each
ports. So same result can be expected to fix this issue.

6. Things that need more consideration

I admit that my naming sence is not so good because
MIT_[CURRENT|LEGACY|ANCIENT] are not so intuitive as
BSD[234]CLAUSE. So I hope better code names strike someone else.

And full license names (value of LICENSE_NAME_*) also need some more
consideration.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the freebsd-ports-bugs mailing list