From wolfgang@lyxys.ka.sub.org  Mon Nov 11 15:20:20 2013
Return-Path: <wolfgang@lyxys.ka.sub.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1])
	(using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by hub.freebsd.org (Postfix) with ESMTP id D78B69C0
	for <FreeBSD-gnats-submit@freebsd.org>; Mon, 11 Nov 2013 15:20:20 +0000 (UTC)
	(envelope-from wolfgang@lyxys.ka.sub.org)
Received: from saturn.lyxys.ka.sub.org (saturn.lyxys.ka.sub.org [217.29.35.151])
	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by mx1.freebsd.org (Postfix) with ESMTPS id 61B7A2EEA
	for <FreeBSD-gnats-submit@freebsd.org>; Mon, 11 Nov 2013 15:20:19 +0000 (UTC)
Received: from juno.lyxys.ka.sub.org (juno.lyx [IPv6:fd2a:89ca:7d54:0:20f:feff:fe0e:7312])
	by saturn.lyxys.ka.sub.org (8.14.7/8.14.7) with ESMTP id rABF8N78035210
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO)
	for <FreeBSD-gnats-submit@freebsd.org>; Mon, 11 Nov 2013 16:08:23 +0100 (CET)
	(envelope-from wolfgang@lyxys.ka.sub.org)
Received: from juno.lyxys.ka.sub.org (localhost [127.0.0.1])
	by juno.lyxys.ka.sub.org (8.14.7/8.14.7) with ESMTP id rABF8N2i087525
	for <FreeBSD-gnats-submit@freebsd.org>; Mon, 11 Nov 2013 16:08:23 +0100 (CET)
	(envelope-from wolfgang@lyxys.ka.sub.org)
Received: (from wolfgang@localhost)
	by juno.lyxys.ka.sub.org (8.14.7/8.14.7/Submit) id rABF8N9C087524;
	Mon, 11 Nov 2013 16:08:23 +0100 (CET)
	(envelope-from wolfgang)
Message-Id: <201311111508.rABF8N9C087524@juno.lyxys.ka.sub.org>
Date: Mon, 11 Nov 2013 16:08:23 +0100 (CET)
From: Wolfgang Zenker <wolfgang@lyxys.ka.sub.org>
Reply-To: Wolfgang Zenker <wolfgang@lyxys.ka.sub.org>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: mail/majordomo fails after perl upgrade
X-Send-Pr-Version: 3.114
X-GNATS-Notify:

>Number:         183863
>Category:       ports
>Synopsis:       mail/majordomo fails after perl upgrade
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    anders
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Nov 11 15:30:00 UTC 2013
>Closed-Date:    Sun Nov 24 15:11:19 UTC 2013
>Last-Modified:  Sun Nov 24 15:11:19 UTC 2013
>Originator:     Wolfgang Zenker
>Release:        FreeBSD 8.4-STABLE i386
>Organization:
>Environment:
System: FreeBSD juno.lyx 8.4-STABLE FreeBSD 8.4-STABLE #12: Wed Sep 11 08:40:18 CEST 2013 wolfgang@juno.lyx:/usr/obj/usr/src/sys/JUNO i386

	perl5-5.16.3_2
	majordomo-1.94.5_7

>Description:
	After upgrading perl from 5.8.something to 5.16 majordomo
	fails to send out mails, with error message

	Can't locate getopts.pl in @INC (@INC contains: /usr/local/lib/perl5/5.16/BSDPAN
	+/usr/local/lib/perl5/site_perl/5.16/mach /usr/local/lib/perl5/site_perl/5.16
	+/usr/local/lib/perl5/5.16/mach /usr/local/lib/perl5/5.16 .) at
	+/usr/local/majordomo/resend line 74.
	554 5.3.0 unknown mailer error 2

	Reason appears to be that new perl installations don't have
	a getopts.pl any more. NetBSDs package has a patch for this and
	also for now missing ctime.pl

>How-To-Repeat:
	Upgrade machine with majordomo installation to perl 5.16 and try
	to distribute mail to the list.

>Fix:

	


>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-ports-bugs->anders 
Responsible-Changed-By: edwin 
Responsible-Changed-When: Mon Nov 11 15:30:09 UTC 2013 
Responsible-Changed-Why:  
Over to maintainer (via the GNATS Auto Assign Tool) 

http://www.freebsd.org/cgi/query-pr.cgi?pr=183863 

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/183863: commit references a PR
Date: Sun, 24 Nov 2013 15:04:06 +0000 (UTC)

 Author: az
 Date: Sun Nov 24 15:03:51 2013
 New Revision: 334732
 URL: http://svnweb.freebsd.org/changeset/ports/334732
 
 Log:
   - Add patches to allow run under perl 5.16
   
   PR:		ports/183863
   Submitted by:	wolfgang@lyxys.ka.sub.org
   With hat:	perl@
 
 Added:
   head/mail/majordomo/files/patch-approve   (contents, props changed)
   head/mail/majordomo/files/patch-archive2.pl   (contents, props changed)
   head/mail/majordomo/files/patch-config-test   (contents, props changed)
   head/mail/majordomo/files/patch-contrib__sequencer   (contents, props changed)
   head/mail/majordomo/files/patch-majordomo   (contents, props changed)
   head/mail/majordomo/files/patch-md-sub__md-sub.cgi   (contents, props changed)
   head/mail/majordomo/files/patch-resend   (contents, props changed)
 Modified:
   head/mail/majordomo/Makefile
 
 Modified: head/mail/majordomo/Makefile
 ==============================================================================
 --- head/mail/majordomo/Makefile	Sun Nov 24 14:53:40 2013	(r334731)
 +++ head/mail/majordomo/Makefile	Sun Nov 24 15:03:51 2013	(r334732)
 @@ -3,7 +3,7 @@
  
  PORTNAME=	majordomo
  PORTVERSION=	1.94.5
 -PORTREVISION=	7
 +PORTREVISION=	8
  CATEGORIES=	mail
  MASTER_SITES=	ftp://ftp.nuug.no/pub/anders/distfiles/ \
  		ftp://ftp.sgi.com/other/majordomo/1.94.5/ \
 
 Added: head/mail/majordomo/files/patch-approve
 ==============================================================================
 --- /dev/null	00:00:00 1970	(empty, because file is newly added)
 +++ head/mail/majordomo/files/patch-approve	Sun Nov 24 15:03:51 2013	(r334732)
 @@ -0,0 +1,14 @@
 +--- ./approve.orig	2013-11-24 18:53:39.307114948 +0400
 ++++ ./approve	2013-11-24 18:45:58.000000000 +0400
 +@@ -70,9 +70,9 @@
 +     if !$MAILER;
 + 
 + 
 +-require "getopts.pl";
 ++use Getopt::Std;
 + 
 +-&Getopts("df:") ||
 ++getopts("df:") ||
 +     die("USAGE: approve [-f <config-file>] [-d] [<file> ...]\nStopped");
 + 
 + if (!defined($opt_f)) {
 
 Added: head/mail/majordomo/files/patch-archive2.pl
 ==============================================================================
 --- /dev/null	00:00:00 1970	(empty, because file is newly added)
 +++ head/mail/majordomo/files/patch-archive2.pl	Sun Nov 24 15:03:51 2013	(r334732)
 @@ -0,0 +1,29 @@
 +--- ./archive2.pl.orig	2013-11-24 18:52:35.932149986 +0400
 ++++ ./archive2.pl	2013-11-24 18:49:56.000000000 +0400
 +@@ -74,7 +74,7 @@
 + 
 + # All these should be in the standard PERL library
 + unshift(@INC, $homedir);
 +-require "ctime.pl";		# To get MoY definitions for month abbrevs
 ++use POSIX qw(ctime);
 + require "majordomo_version.pl";	# What version of Majordomo is this?
 + require "majordomo.pl";		# all sorts of general-purpose Majordomo subs
 + require "shlock.pl";		# NNTP-style file locking
 +@@ -85,7 +85,7 @@
 + 
 + # Here's where the fun begins...
 + 
 +-require "getopts.pl";
 ++use Getopt::Std;
 + 
 + $m = 1;
 + foreach (@ctime'MoY) {
 +@@ -94,7 +94,7 @@
 + 
 + $usage = "Usage: $0 -f <file> {-u|-a} [-d|-D|-m|-M|-y|-Y] [file ...]";
 + 
 +-&Getopts("f:uadDmMyY") || die("$usage\nStopped");
 ++getopts("f:uadDmMyY") || die("$usage\nStopped");
 + 
 + if (!defined($opt_f)) {
 +     print STDERR "'-f <list>' required\n$usage\n";
 
 Added: head/mail/majordomo/files/patch-config-test
 ==============================================================================
 --- /dev/null	00:00:00 1970	(empty, because file is newly added)
 +++ head/mail/majordomo/files/patch-config-test	Sun Nov 24 15:03:51 2013	(r334732)
 @@ -0,0 +1,13 @@
 +--- ./config-test.orig	2013-11-24 18:52:22.394976553 +0400
 ++++ ./config-test	2013-11-24 18:49:26.000000000 +0400
 +@@ -7,8 +7,8 @@
 + # execute this by cd to your majordomo dir, then 'wrapper config-test'
 + #
 + 
 +-@requires = ( "ctime.pl",
 +-	     "majordomo_version.pl",
 ++use POSIX qw(ctime);
 ++@requires = ( "majordomo_version.pl",
 + 	     "majordomo.pl",
 + 	     "shlock.pl",
 + 	     "config_parse.pl",
 
 Added: head/mail/majordomo/files/patch-contrib__sequencer
 ==============================================================================
 --- /dev/null	00:00:00 1970	(empty, because file is newly added)
 +++ head/mail/majordomo/files/patch-contrib__sequencer	Sun Nov 24 15:03:51 2013	(r334732)
 @@ -0,0 +1,18 @@
 +--- ./contrib/sequencer.orig	2013-11-24 18:53:58.067356022 +0400
 ++++ ./contrib/sequencer	2013-11-24 18:48:32.000000000 +0400
 +@@ -59,13 +59,13 @@
 + 
 + chdir($homedir) || die("Can't chdir(\"$homedir\"): $!");
 + unshift(@INC, $homedir);
 ++use Getopt::Std;
 + require "majordomo.pl";
 + require "majordomo_version.pl";
 +-require "getopts.pl";
 + require "config_parse.pl";
 + require "shlock.pl";
 + 
 +-&Getopts("Aa:df:h:I:l:m:M:nNp:Rr:s") || die("sequencer: Getopts() failed: $!");
 ++getopts("Aa:df:h:I:l:m:M:nNp:Rr:s") || die("sequencer: Getopts() failed: $!");
 + 
 + if (! defined($opt_l) || ! defined($opt_h)) {
 +     die("sequencer: must specify both '-l list' and '-h host' arguments");
 
 Added: head/mail/majordomo/files/patch-majordomo
 ==============================================================================
 --- /dev/null	00:00:00 1970	(empty, because file is newly added)
 +++ head/mail/majordomo/files/patch-majordomo	Sun Nov 24 15:03:51 2013	(r334732)
 @@ -0,0 +1,11 @@
 +--- ./majordomo.orig	2013-11-24 18:52:53.333372091 +0400
 ++++ ./majordomo	2013-11-24 18:50:33.000000000 +0400
 +@@ -71,7 +71,7 @@
 + 
 + # All these should be in the standard PERL library
 + unshift(@INC, $homedir);
 +-require "ctime.pl";		# To get MoY definitions for month abbrevs
 ++use POSIX qw(ctime);		# To get MoY definitions for month abbrevs
 + require "majordomo_version.pl";	# What version of Majordomo is this?
 + require "majordomo.pl";		# all sorts of general-purpose Majordomo subs
 + require "shlock.pl";		# NNTP-style file locking
 
 Added: head/mail/majordomo/files/patch-md-sub__md-sub.cgi
 ==============================================================================
 --- /dev/null	00:00:00 1970	(empty, because file is newly added)
 +++ head/mail/majordomo/files/patch-md-sub__md-sub.cgi	Sun Nov 24 15:03:51 2013	(r334732)
 @@ -0,0 +1,20 @@
 +--- ./md-sub/md-sub.cgi.orig	2013-11-24 18:54:07.634476295 +0400
 ++++ ./md-sub/md-sub.cgi	2013-11-24 18:47:15.000000000 +0400
 +@@ -78,7 +78,7 @@
 + #
 + # Required file
 + require 'cgi-lib.pl';
 +-require 'getopts.pl';
 ++use Getopt::Std;
 + 
 + #
 + # Version number
 +@@ -90,7 +90,7 @@
 + 
 + #
 + # Call Getopts
 +-&Getopts( 'C:v');
 ++getopts( 'C:v');
 + 
 + #
 + # Check to see if we are creating a DB
 
 Added: head/mail/majordomo/files/patch-resend
 ==============================================================================
 --- /dev/null	00:00:00 1970	(empty, because file is newly added)
 +++ head/mail/majordomo/files/patch-resend	Sun Nov 24 15:03:51 2013	(r334732)
 @@ -0,0 +1,23 @@
 +--- ./resend.orig	2013-11-24 18:53:15.076805222 +0400
 ++++ ./resend	2013-11-24 18:50:15.000000000 +0400
 +@@ -71,8 +71,9 @@
 + # getopts.pl was place where it's supposed to be.  This changes previous
 + # behavior which allowed getopts.pl to be in the same place as
 + # majordomo.cf.
 +-require "getopts.pl";
 +-&Getopts("C:c:Aa:df:h:I:l:M:p:Rr:s") || die("resend: Getopts() failed: $!");
 ++use Getopt::Std;
 ++
 ++getopts("C:c:Aa:df:h:I:l:M:p:Rr:s") || die("resend: Getopts() failed: $!");
 + 
 + if (! defined($opt_l)) {
 +   die("resend: must specify '-l list'");
 +@@ -105,7 +106,7 @@
 + chdir($homedir) || die("Can't chdir(\"$homedir\"): $!");
 + 
 + unshift(@INC, $homedir);
 +-require "ctime.pl";  # For logging purposes
 ++use POSIX qw(ctime); # For logging purposes
 + require "majordomo.pl";
 + require "majordomo_version.pl";
 + require "config_parse.pl";
 _______________________________________________
 svn-ports-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/svn-ports-all
 To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
 
State-Changed-From-To: open->closed 
State-Changed-By: az 
State-Changed-When: Sun Nov 24 15:11:17 UTC 2013 
State-Changed-Why:  
Must be fixed in r334732 

http://www.freebsd.org/cgi/query-pr.cgi?pr=183863 
>Unformatted:
