aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Marakasov <amdmi3@FreeBSD.org>2016-01-12 14:20:35 +0000
committerDmitry Marakasov <amdmi3@FreeBSD.org>2016-01-12 14:20:35 +0000
commitd861678bdefc371a8cb6bf3d2c316437130a0b33 (patch)
tree6add81daec7f7e27870cc2557eb9f1f8a51cf396
parentbcaa72f8cf9c5c381bd2d1fcc61c2e5d82f8e46e (diff)
downloadports-d861678bdefc371a8cb6bf3d2c316437130a0b33.tar.gz
ports-d861678bdefc371a8cb6bf3d2c316437130a0b33.zip
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
Notes
Notes: svn path=/head/; revision=405873
-rw-r--r--Mk/bsd.licenses.db.mk67
1 files 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