ports/158306: [patch] Add logic to ports-mgmt/portlint
Ilya A. Arkhipov
micro at heavennet.ru
Sun Jun 26 08:40:09 UTC 2011
>Number: 158306
>Category: ports
>Synopsis: [patch] Add logic to ports-mgmt/portlint
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Sun Jun 26 08:40:00 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator: Ilya A. Arkhipov
>Release: FreeBSD 9.0-CURRENT
>Organization:
>Environment:
FreeBSD micro 9.0-CURRENT FreeBSD 9.0-CURRENT #2: Fri Mar 18 07:11:37 UTC 2011 root at micro:/usr/obj/usr/src/sys/GENERIC amd64
>Description:
Add logical check LICENSE after MAINTAINER block
>How-To-Repeat:
>Fix:
Patch attached with submission follows:
--- portlint.pl_old 2011-03-21 09:27:45.173097885 +0300
+++ portlint.pl 2011-06-26 12:19:41.829771354 +0400
@@ -2234,7 +2234,6 @@
}
#
- #
# section 2: PORTNAME/PORTVERSION/...
#
print "OK: checking first section of $file (PORTNAME/...).\n"
@@ -2393,21 +2392,6 @@
}
}
- # check value of LICENSE_COMB
- if ($makevar{LICENSE_COMB} && $makevar{LICENSE_COMB} !~ /^(single|dual|multi$)/) {
- &perror("FATAL", $file, -1, "LICENSE_COMB contains invalid value '$1' - must be one of 'single', 'dual', 'multi'");
- }
-
- # check LICENSE
- if ($makevar{LICENSE} && $makevar{LICENSE} ne '') {
- my $comb = $makevar{LICENSE_COMB} // 'single';
-
- my @tokens = split(/ /, $makevar{LICENSE});
- if ($comb eq 'single' && scalar(@tokens) > 1) {
- &perror("FATAL", $file, -1, "LICENSE contains multiple licenses but LICENSE_COMB is not set to 'dual' or 'multi'");
- }
- }
-
# check the URL
if (($tmp =~ /\nMASTER_SITES[+?]?=[ \t]*([^\n]*)\n/
&& $1 !~ /^[ \t]*$/) || ($makevar{MASTER_SITES} ne '')) {
@@ -2703,7 +2687,7 @@
#
print "OK: checking third section of $file (MAINTAINER).\n"
if ($verbose);
- $tmp = $sections[$idx++];
+ $tmp = $sections[$idx];
&checkearlier($file, $tmp, @varnames);
&checkorder('MAINTAINER', $tmp, $file, qw(
@@ -2756,14 +2740,53 @@
}
}
+ $idx++;
+
push(@varnames, qw(
MAINTAINER COMMENT
));
#
- # section 5: *_DEPENDS (may not be there)
+ # section 5: LICENSE
+ #
+ print "OK: checking fourth section of $file (LICENSE).\n"
+ if ($verbose);
+ $tmp = $sections[$idx];
+
+ if ($makevar{LICENSE}){
+
+ &checkorder('LICENSE', $tmp, $file, qw(
+ LICENSE LICENSE_COMB LICENSE_GROUPS LICENSE_NAME
+ LICENSE_TEXT LICENSE_FILE LICENSE_PERMS
+ ));
+
+ # check LICENSE
+ if ($makevar{LICENSE} && $makevar{LICENSE} ne '') {
+ my $comb = $makevar{LICENSE_COMB} // 'single';
+
+ my @tokens = split(/ /, $makevar{LICENSE});
+ if ($comb eq 'single' && scalar(@tokens) > 1) {
+ &perror("FATAL", $file, -1, "LICENSE contains multiple licenses but LICENSE_COMB is not set to 'dual' or 'multi'");
+ }
+ }
+
+ # check value of LICENSE_COMB
+ if ($makevar{LICENSE_COMB} && $makevar{LICENSE_COMB} !~ /^(single|dual|multi$)/) {
+ &perror("FATAL", $file, -1, "LICENSE_COMB contains invalid value '$1' - must be one of 'single', 'dual', 'multi'");
+ }
+
+ $idx++;
+
+ push(@varnames, qw(
+ LICENSE LICENSE_COMB LICENSE_GROUPS LICENSE_NAME
+ LICENSE_TEXT LICENSE_FILE LICENSE_PERMS
+ ));
+ }
+
+ #
+ # section 6: *_DEPENDS (may not be there)
#
- print "OK: checking fourth section of $file (*_DEPENDS).\n"
+ print "OK: checking fifth section of $file (*_DEPENDS).\n"
if ($verbose);
$tmp = $sections[$idx];
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list