From d861678bdefc371a8cb6bf3d2c316437130a0b33 Mon Sep 17 00:00:00 2001 From: Dmitry Marakasov Date: Tue, 12 Jan 2016 14:20:35 +0000 Subject: Add support for "or later" variants of all GNU licenses. Now you can use, for example, LICENSE= GPLv2+ instead of incorrect LICENSE= GPLv2 GPLv3 or inaccurate and not machine readable LICENSE= GPLv2 # or later Also add some categorization to licenses list and fix some whitespace problems in bsd.licenses.db.mk Approved by: portmgr (bapt) Differential Revision: D4148 --- Mk/bsd.licenses.db.mk | 67 ++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 56 insertions(+), 11 deletions(-) diff --git a/Mk/bsd.licenses.db.mk b/Mk/bsd.licenses.db.mk index e3c84281447b..1df90cf68ac9 100644 --- a/Mk/bsd.licenses.db.mk +++ b/Mk/bsd.licenses.db.mk @@ -39,12 +39,29 @@ Licenses_db_Include_MAINTAINER= portmgr@FreeBSD.org # _LICENSE_LIST_GROUPS - List of defined license groups # -_LICENSE_LIST= AGPLv3 APACHE10 APACHE11 APACHE20 ART10 ARTPERL10 ART20 \ - BSD BSD2CLAUSE BSD3CLAUSE BSD4CLAUSE BSL CC0-1.0 CDDL ClArtistic CPAL-1.0 EPL GFDL \ - GMGPL GPLv1 GPLv2 GPLv3 GPLv3RLE ISCL LGPL20 LGPL21 LGPL3 \ - LPPL10 LPPL11 LPPL12 LPPL13 LPPL13a LPPL13b LPPL13c MIT \ - MPL OpenSSL OFL10 OFL11 OWL PostgreSQL PHP202 PHP30 PHP301 PSFL RUBY \ - ZLIB ZPL21 +_LICENSE_LIST= BSL CC0-1.0 CDDL CPAL-1.0 ClArtistic EPL GFDL GMGPL \ + ISCL MIT MPL OFL10 OFL11 OWL OpenSSL PSFL PostgreSQL \ + RUBY ZLIB ZPL21 + +# GNU family +_LICENSE_LIST+= AGPLv3 GPLv1 GPLv2 GPLv3 GPLv3RLE LGPL20 LGPL21 LGPL3 +_LICENSE_LIST+= AGPLv3+ GPLv1+ GPLv2+ GPLv3+ GPLv3RLE+ LGPL20+ LGPL21+ \ + LGPL3+ + +# BSD family +_LICENSE_LIST+= BSD BSD2CLAUSE BSD3CLAUSE BSD4CLAUSE + +# LaTeX family +_LICENSE_LIST+= LPPL10 LPPL11 LPPL12 LPPL13 LPPL13a LPPL13b LPPL13c + +# Apache family +_LICENSE_LIST+= APACHE10 APACHE11 APACHE20 + +# Artistic family +_LICENSE_LIST+= ART10 ARTPERL10 ART20 + +# PHP family +_LICENSE_LIST+= PHP202 PHP30 PHP301 # List of groups (only names must be present) @@ -54,7 +71,7 @@ _LICENSE_NAME_GPL= GPL Compatible _LICENSE_NAME_OSI= OSI Approved -_LICENSE_NAME_COPYFREE= Comply with Copyfree Standard Definition. +_LICENSE_NAME_COPYFREE= Complies with Copyfree Standard Definition _LICENSE_NAME_FONTS= Font licenses @@ -73,10 +90,15 @@ _LICENSE_PERMS_DEFAULT= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept # - General permissions from groups are added to each license, if not defined. # - _LICENSE_NAME_AGPLv3= GNU Affero General Public License version 3 _LICENSE_GROUPS_AGPLv3= FSF GPL OSI +# Note that though plus is allowed in a variable (and this license) name it +# needs an extra space before following equals sign for them not to be parsed +# as a single += operator +_LICENSE_NAME_AGPLv3+ = ${_LICENSE_NAME_AGPLv3} (or later) +_LICENSE_GROUPS_AGPLv3+ = ${_LICENSE_GROUPS_AGPLv3} + _LICENSE_NAME_APACHE10= Apache License 1.0 _LICENSE_GROUPS_APACHE10= FSF @@ -94,7 +116,7 @@ _LICENSE_GROUPS_ARTPERL10= OSI _LICENSE_NAME_ART20= Artistic License version 2.0 _LICENSE_GROUPS_ART20= FSF GPL OSI - + _LICENSE_NAME_BSD= BSD license Generic Version (deprecated) _LICENSE_GROUPS_BSD= FSF OSI COPYFREE @@ -103,7 +125,7 @@ _LICENSE_GROUPS_BSD2CLAUSE= FSF OSI COPYFREE _LICENSE_NAME_BSD3CLAUSE= BSD 3-clause "New" or "Revised" License _LICENSE_GROUPS_BSD3CLAUSE= FSF OSI COPYFREE - + _LICENSE_NAME_BSD4CLAUSE= BSD 4-clause "Original" or "Old" License _LICENSE_GROUPS_BSD4CLAUSE= FSF @@ -134,27 +156,48 @@ _LICENSE_GROUPS_GMGPL= FSF GPL OSI _LICENSE_NAME_GPLv1= GNU General Public License version 1 _LICENSE_GROUPS_GPLv1= FSF GPL OSI +_LICENSE_NAME_GPLv1+ = ${_LICENSE_NAME_GPLv1} (or later) +_LICENSE_GROUPS_GPLv1+ = ${_LICENSE_GROUPS_GPLv1} + _LICENSE_NAME_GPLv2= GNU General Public License version 2 _LICENSE_GROUPS_GPLv2= FSF GPL OSI +_LICENSE_NAME_GPLv2+ = ${_LICENSE_NAME_GPLv2} (or later) +_LICENSE_GROUPS_GPLv2+ = ${_LICENSE_GROUPS_GPLv2} + _LICENSE_NAME_GPLv3= GNU General Public License version 3 _LICENSE_GROUPS_GPLv3= FSF GPL OSI +_LICENSE_NAME_GPLv3+ = ${_LICENSE_NAME_GPLv3} (or later) +_LICENSE_GROUPS_GPLv3+ = ${_LICENSE_GROUPS_GPLv3} + _LICENSE_NAME_GPLv3RLE= GNU GPL version 3 Runtime Library Exception _LICENSE_GROUPS_GPLv3RLE= FSF GPL OSI +_LICENSE_NAME_GPLv3RLE+ = ${_LICENSE_NAME_GPLv3RLE} (or later) +_LICENSE_GROUPS_GPLv3RLE+ = ${_LICENSE_GROUPS_GPLv3RLE} + _LICENSE_NAME_ISCL= Internet Systems Consortium License _LICENSE_GROUPS_ISCL= FSF GPL OSI COPYFREE _LICENSE_NAME_LGPL20= GNU Library General Public License version 2.0 _LICENSE_GROUPS_LGPL20= FSF GPL OSI +_LICENSE_NAME_LGPL20+ = ${_LICENSE_NAME_LGPL20} (or later) +_LICENSE_GROUPS_LGPL20+ = ${_LICENSE_GROUPS_LGPL20} + _LICENSE_NAME_LGPL21= GNU Lesser General Public License version 2.1 _LICENSE_GROUPS_LGPL21= FSF GPL OSI +_LICENSE_NAME_LGPL21+ = ${_LICENSE_NAME_LGPL21} (or later) +_LICENSE_GROUPS_LGPL21+ = ${_LICENSE_GROUPS_LGPL21} + _LICENSE_NAME_LGPL3= GNU Lesser General Public License version 3 _LICENSE_GROUPS_LGPL3= FSF GPL OSI +_LICENSE_NAME_LGPL3+ = ${_LICENSE_NAME_LGPL3} (or later) +_LICENSE_GROUPS_LGPL3+ = ${_LICENSE_GROUPS_LGPL3} + _LICENSE_NAME_LPPL10= LaTeX Project Public License version 1.0 _LICENSE_GROUPS_LPPL10= FSF OSI _LICENSE_PERMS_LPPL10= dist-mirror dist-sell @@ -229,6 +272,8 @@ _LICENSE_GROUPS_ZPL21= GPL OSI .for lic in ${_LICENSE_LIST} . if !defined(_LICENSE_PERMS_${lic}) -_LICENSE_PERMS_${lic}= ${_LICENSE_PERMS_DEFAULT} +# note that space before = is needed to correctly handle licenses +# ending with a plus sign +_LICENSE_PERMS_${lic} = ${_LICENSE_PERMS_DEFAULT} . endif .endfor -- cgit v1.2.3