From owner-svn-ports-all@freebsd.org Mon Mar 2 22:23:12 2020 Return-Path: Delivered-To: svn-ports-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 2C0A025C63D; Mon, 2 Mar 2020 22:23:12 +0000 (UTC) (envelope-from marcus@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48WZR34jWGz4b88; Mon, 2 Mar 2020 22:23:11 +0000 (UTC) (envelope-from marcus@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 993D523395; Mon, 2 Mar 2020 22:23:11 +0000 (UTC) (envelope-from marcus@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 022MNBub036119; Mon, 2 Mar 2020 22:23:11 GMT (envelope-from marcus@FreeBSD.org) Received: (from marcus@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 022MNBul036117; Mon, 2 Mar 2020 22:23:11 GMT (envelope-from marcus@FreeBSD.org) Message-Id: <202003022223.022MNBul036117@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marcus set sender to marcus@FreeBSD.org using -f From: Joe Marcus Clarke Date: Mon, 2 Mar 2020 22:23:11 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r527653 - in head/ports-mgmt/portlint: . src X-SVN-Group: ports-head X-SVN-Commit-Author: marcus X-SVN-Commit-Paths: in head/ports-mgmt/portlint: . src X-SVN-Commit-Revision: 527653 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Mar 2020 22:23:12 -0000 Author: marcus Date: Mon Mar 2 22:23:10 2020 New Revision: 527653 URL: https://svnweb.freebsd.org/changeset/ports/527653 Log: Update to 2.18.11 * No longer warn for manpages installed under share/man [1] * Remove code to combine comments and blank lines in a section [2] * Remove code to combine comments and blank lines [3] * USE_PYQT sets the necessary QT USES [4] * Only warn on lack of INSTALLS_ICONS when USES=gnome is set [5] * Check for files that have been patched multiple times [6] PR: 240359 [2] 244480 [3] 240445 [4] 244039 [5] 243600 [6] Submitted by: 0mp [1] [5] vladimir.chukharev@gmail.com [4] swills [6] Differential Revision: D23896 [1] Modified: head/ports-mgmt/portlint/Makefile head/ports-mgmt/portlint/src/portlint.pl Modified: head/ports-mgmt/portlint/Makefile ============================================================================== --- head/ports-mgmt/portlint/Makefile Mon Mar 2 21:17:59 2020 (r527652) +++ head/ports-mgmt/portlint/Makefile Mon Mar 2 22:23:10 2020 (r527653) @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= portlint -PORTVERSION= 2.18.10 +PORTVERSION= 2.18.11 CATEGORIES= ports-mgmt MASTER_SITES= # none DISTFILES= # none Modified: head/ports-mgmt/portlint/src/portlint.pl ============================================================================== --- head/ports-mgmt/portlint/src/portlint.pl Mon Mar 2 21:17:59 2020 (r527652) +++ head/ports-mgmt/portlint/src/portlint.pl Mon Mar 2 22:23:10 2020 (r527653) @@ -15,7 +15,7 @@ # was removed. # # $FreeBSD$ -# $MCom: portlint/portlint.pl,v 1.498 2019/09/04 15:03:38 jclarke Exp $ +# $MCom: portlint/portlint.pl,v 1.505 2020/03/02 22:19:11 jclarke Exp $ # use strict; @@ -50,7 +50,7 @@ $portdir = '.'; # version variables my $major = 2; my $minor = 18; -my $micro = 10; +my $micro = 11; # default setting - for FreeBSD my $portsdir = '/usr/ports'; @@ -160,7 +160,7 @@ my @varlist = qw( ALLFILES CHECKSUM_ALGORITHMS INSTALLS_ICONS GNU_CONFIGURE CONFIGURE_ARGS MASTER_SITE_SUBDIR LICENSE LICENSE_COMB NO_STAGE DEVELOPER SUB_FILES SHEBANG_LANG MASTER_SITES_SUBDIRS FLAVORS - USE_PYTHON LICENSE_PERMS + USE_PYTHON LICENSE_PERMS USE_PYQT ); my %makevar; @@ -307,6 +307,8 @@ foreach my $i (@checker) { } } +checkpatches(<$makevar{FILESDIR}/patch-*>); + if ($committer) { sub find_proc { return if /^\.\.?$/; @@ -895,10 +897,11 @@ sub checkplist { "accordingly.") unless ($check_xxxdir_ok{$3} eq $1); } - if ($_ =~ m#share/man/#) { - &perror("FATAL", $file, $., "Man pages must be installed into ". - "``man'' not ``share/man''."); - } + # It is now recommended for manpages to be installed under share/man. + #if ($_ =~ m#share/man/#) { + # &perror("FATAL", $file, $., "Man pages must be installed into ". + # "``man'' not ``share/man''."); + #} if ($_ =~ m#man/([^/]+/)?man[1-9ln]/([^\.]+\.[1-9ln])(\.gz)?$#) { if (!$3) { @@ -1035,6 +1038,26 @@ sub checklastline { close(IN); } +sub checkpatches { + my (@patchfiles) = @_; + my @patched_files; + foreach my $file (@patchfiles) { + open(IN, "< $file") || return 0; + while () { + if ($_ =~ /^\+\+\+\s(.*?)\s.*/) { + #if($1 ~~ @patched_files) { + if (grep {$_ eq $1} @patched_files) { + &perror("WARN", $file, -1, "$1 patched multiple times"); + } + else { + push(@patched_files, $1); + } + + } + } + } +} + sub checkpatch { my($file) = @_; my($whole); @@ -1741,6 +1764,10 @@ sub checkmakefile { foreach my $i ((@opt, @aopt, @aropt)) { # skip global options next if ($i eq 'DOCS' or $i eq 'NLS' or $i eq 'EXAMPLES' or $i eq 'IPV6' or $i eq 'X11' or $i eq 'DEBUG'); + my $odescr = &get_makevar("${i}_DESC"); + if (!$odescr) { + &perror("FATAL", $file, -1, "OPTION $i does not have a description (${i}_DESC)."); + } if (!grep(/^$i$/, (@mopt, @popt))) { if ($whole !~ /\n${i}_($m)(_\w+)?(.)?=[^\n]+/ and $whole !~ /\n[-\w]+-${i}-(on|off):\n/) { if (!$slaveport) { @@ -2332,7 +2359,7 @@ xargs xmkmf # # whole file: USES=pyqt:5 # - if ($makevar{USES} =~ /\bpyqt:5/ && $whole !~ /^USE_PYQT[?:]?=\s(.*)$/m) { + if ($makevar{USES} =~ /\bpyqt:5/ && $whole !~ /^USE_PYQT[?:]?=\s(.*)$/m && $makevar{USE_PYQT} eq '') { &perror("WARN", $file, -1, "When USES=pyqt:5 is defined, you must also define ". "USE_PYQT=xxxx"); } @@ -2591,7 +2618,8 @@ xargs xmkmf $tmp = $rawwhole; $tmp =~ s/\\\n/ /g; # keep comment, blank line, comment in the same section - $tmp =~ s/(#.*\n)\n+(#.*)/$1$2/g; + # XXX: Take this out since it breaks some commenting; see PR240359. + #$tmp =~ s/(#.*\n)\n+(#.*)/$1$2/g; @sections = split(/\n\n+/, $tmp); for ($i = 0; $i <= $#sections; $i++) { if ($sections[$i] !~ /\n$/) { @@ -3855,10 +3883,8 @@ sub urlcheck { } } -# GNOME wants INSTALL_ICONS, but Qt-based applications, including KDE, don't. -# Be pessimistic: everything needs it unless we know it doesn't. sub needs_installs_icons { - return $makevar{USE_QT5} eq '' && $makevar{USE_QT} eq '' + return $makevar{USES} =~ /gnome/ } sub TRUE {1;}