The cyrus imapd port is outdated, and it fails to cleanly build if tcl is not installed. Fix: A patch to upgrade the cyrus port (1.5.2) to the current version (1.5.14) is included below. I contacted the original port submitter, but the mail bounced. Seems like a new committer is needed for this port. How-To-Repeat: cd /usr/ports/mail/cyrus; make
I'd like to raise a couple of points on this PR http://www.scriptics.com/software/download.html says: "Tcl/Tk 8.1. These are the newest experimental releases; they are available only in alpha form, so they are not very stable yet." Should we not be depending on tcl-8.0.2 instead? The last part of these patches refers to a separate port, i.e. my port of Makedepend. I think that should've been on a separate PR, copied to me? Also, wasn't the man/man1/makedepend.1.gz line deliberately dropped from the PLIST because of the recent changes to bsd.port.mk? - Ian
On Mon, 31 Aug 1998, Ian Vaudrey wrote: > http://www.scriptics.com/software/download.html says: "Tcl/Tk 8.1. > These are the newest experimental releases; they are available only > in alpha form, so they are not very stable yet." Should we not be > depending on tcl-8.0.2 instead? I do not object at all. I'm not normally using tcl (expect for cyrus), so I just kept the dependency as it was. I changed the port to use tcl-8.0.2 in the patch included below. > The last part of these patches refers to a separate port, i.e. my port > of Makedepend. I think that should've been on a separate PR, copied > to me? Sorry. Culpa mea. I left the makedepend stuff out in the patch included below so that you (or anyone else) can take care of that. > Also, wasn't the man/man1/makedepend.1.gz line deliberately > dropped from the PLIST because of the recent changes to bsd.port.mk? Sorry again for my ignorance. I left the man pages out of cyrus' PLIST to follow said convention. -Hans diff --exclude=CVS -ru cyrus.old/Makefile cyrus/Makefile --- cyrus.old/Makefile Tue May 19 15:55:53 1998 +++ cyrus/Makefile Mon Aug 31 14:35:38 1998 @@ -6,22 +6,23 @@ # $Id: Makefile,v 1.7 1998/02/25 09:41:30 asami Exp $ # -DISTNAME= cyrus-imapd-v1.5.2 -PKGNAME= cyrus-1.5.2 -CATEGORIES= mail tcl81 +DISTNAME= cyrus-imapd-v1.5.14 +PKGNAME= cyrus-1.5.14 +CATEGORIES= mail tcl80 MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ MAINTAINER= jfitz@FreeBSD.ORG -LIB_DEPENDS= tcl81\\.1\\.:${PORTSDIR}/lang/tcl81 +LIB_DEPENDS= tcl80\\.1\\.:${PORTSDIR}/lang/tcl80 BUILD_DEPENDS= makedepend:${PORTSDIR}/devel/makedepend HAS_CONFIGURE= YES CONFIGURE_ARGS= --with-cyrus-prefix=${PREFIX}/cyrus \ --with-cyrus-group=cyrus \ - --with-tcl=${PREFIX} \ --with-login=unix_pwcheck \ - --with-auth=unix + --with-tclsh=${PREFIX}/bin/tclsh8.0 \ + --with-auth=unix \ + --with-com-err MAN1= cyradm.1 MAN3= imclient.3 diff --exclude=CVS -ru cyrus.old/README.html cyrus/README.html --- cyrus.old/README.html Tue Oct 21 14:23:28 1997 +++ cyrus/README.html Mon Aug 31 14:49:05 1998 @@ -18,9 +18,9 @@ a summary on how to use the ports collection. <p> -This port requires package(s) "makedepend-95.07.05" to build. +This port requires package(s) "makedepend-95.07.05 tcl-8.0.2" to build. <p> - +This port requires package(s) "tcl-8.0.2" to run. <p><hr><p> <a href="../README.html"> Go up one level</a> diff --exclude=CVS -ru cyrus.old/files/md5 cyrus/files/md5 --- cyrus.old/files/md5 Fri May 30 21:59:08 1997 +++ cyrus/files/md5 Wed Aug 26 11:17:58 1998 @@ -1 +1 @@ -MD5 (cyrus-imapd-v1.5.2.tar.gz) = d9e1471469320c7bc43837ce1b781945 +MD5 (cyrus-imapd-v1.5.14.tar.gz) = e90555be60ec3a647f1661e10cc16458 diff --exclude=CVS -ru cyrus.old/patches/patch-ba cyrus/patches/patch-ba --- cyrus.old/patches/patch-ba Sun Feb 15 13:14:14 1998 +++ cyrus/patches/patch-ba Wed Aug 26 11:29:16 1998 @@ -1,46 +1,42 @@ ---- pwcheck/pwcheck.c.orig Sat Dec 21 02:09:01 1996 -+++ pwcheck/pwcheck.c Wed Oct 8 15:00:36 1997 -@@ -18,9 +18,16 @@ - #include <sys/socket.h> - #include <sys/un.h> - #include <sys/uio.h> -+#include <paths.h> -+#include <unistd.h> -+#include <syslog.h> - - extern int errno; - -+#if !defined(_PATH_PWCHECKPID) -+ #define _PATH_PWCHECKPID _PATH_VARRUN "pwcheck.pid" -+#endif -+ - /* - * Unix pwcheck daemon-authenticated login (shadow password) - */ -@@ -35,6 +42,26 @@ - struct sockaddr_un clientaddr; - int r; - int len; -+ char *pid_file = _PATH_PWCHECKPID; -+ FILE *fp; -+ pid_t pid; -+ -+ /* -+ * Record process ID - shamelessly stolen from inetd (I.V.) -+ */ -+ pid = getpid(); -+ fp = fopen(pid_file, "w"); -+ if (fp) { -+ fprintf(fp, "%ld\n", (long)pid); -+ fclose(fp); -+ } else { -+ syslog(LOG_WARNING, "%s: %m", pid_file); -+ } -+ -+ /* -+ * Make sure socket is rw for everyone (T.S.) -+ */ -+ umask(0); - - s = socket(AF_UNIX, SOCK_STREAM, 0); - if (s == -1) { +*** pwcheck/pwcheck.c.orig Fri May 15 23:55:22 1998 +--- pwcheck/pwcheck.c Wed Aug 26 11:28:01 1998 +*************** +*** 31,36 **** +--- 31,43 ---- + #include <sys/un.h> + #include <sys/uio.h> + #include <sys/stat.h> ++ #include <paths.h> ++ #include <unistd.h> ++ #include <syslog.h> ++ ++ #if !defined(_PATH_PWCHECKPID) ++ # define _PATH_PWCHECKPID _PATH_VARRUN "pwcheck.pid" ++ #endif + + extern int errno; + +*************** +*** 49,54 **** +--- 56,76 ---- + int r; + int len; + mode_t oldumask; ++ char *pid_file = _PATH_PWCHECKPID; ++ FILE *fp; ++ pid_t pid; ++ ++ /* ++ * Record process ID - shamelessly stolen from inetd (I.V.) ++ */ ++ pid = getpid(); ++ fp = fopen(pid_file, "w"); ++ if (fp) { ++ fprintf(fp, "%ld\n", (long)pid); ++ fclose(fp); ++ } else { ++ syslog(LOG_WARNING, "%s: %m", pid_file); ++ } + + s = socket(AF_UNIX, SOCK_STREAM, 0); + if (s == -1) { diff --exclude=CVS -ru cyrus.old/patches/patch-bb cyrus/patches/patch-bb --- cyrus.old/patches/patch-bb Tue Feb 24 22:43:07 1998 +++ cyrus/patches/patch-bb Mon Aug 31 14:40:25 1998 @@ -1,13 +1,22 @@ ---- cyradm/Makefile.in.orig Sat Dec 21 02:07:57 1996 -+++ cyradm/Makefile.in Wed Oct 8 13:56:57 1997 -@@ -21,8 +21,8 @@ - RANLIB = @RANLIB@ - - DEFS = @DEFS@ --CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../lib -I$(srcdir)/../et @CPPFLAGS@ --LIBS = @LIBS@ @TCLLIBS@ -+CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../lib -I$(srcdir)/../et -I$(prefix)/include/tcl8.1 @CPPFLAGS@ -+LIBS = @LIBS@ -L/usr/local/lib -ltcl81 -lm - DEPLIBS = ../lib/libcyrus.a @DEPLIBS@ - - CFLAGS = @CFLAGS@ +*** cyradm/Makefile.in.orig Tue Jun 9 06:30:40 1998 +--- cyradm/Makefile.in Wed Aug 26 11:35:46 1998 +*************** +*** 33,41 **** + RANLIB = @RANLIB@ + + DEFS = @DEFS@ @TCL_DEFS@ +! CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../lib -I$(srcdir)/../et @CPPFLAGS@ @TCL_CPPFLAGS@ +! # lazy approach to linking: just do it a lot +! LIBS = @TCL_LIBS@ @LIBS@ @TCL_LIBS@ @LIBS@ + DEPLIBS = ../lib/libcyrus.a @DEPLIBS@ + + CFLAGS = @CFLAGS@ +--- 33,40 ---- + RANLIB = @RANLIB@ + + DEFS = @DEFS@ @TCL_DEFS@ +! CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../lib -I$(srcdir)/../et -I$(prefix)/include/tcl8.0 @CPPFLAGS@ +! LIBS = @LIBS@ -L/usr/local/lib -ltcl80 -lm + DEPLIBS = ../lib/libcyrus.a @DEPLIBS@ + + CFLAGS = @CFLAGS@ diff --exclude=CVS -ru cyrus.old/patches/patch-bc cyrus/patches/patch-bc --- cyrus.old/patches/patch-bc Sun Feb 15 13:14:14 1998 +++ cyrus/patches/patch-bc Wed Aug 26 11:42:40 1998 @@ -1,11 +1,19 @@ ---- imap/Makefile.in.orig Thu Mar 13 10:23:01 1997 -+++ imap/Makefile.in Wed Oct 8 13:56:57 1997 -@@ -34,7 +34,7 @@ - CYRUS_USER=@cyrus_user@ - CYRUS_GROUP=@cyrus_group@ - --DEFS = @DEFS@ -+DEFS = @DEFS@ -DCONFIG_FILENAME=\"$(prefix)/etc/imapd.conf\" - CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../lib -I$(srcdir)/../et @CPPFLAGS@ - LIBS = @LIBS@ - DEPLIBS = ../et/libcom_err.a ../lib/libcyrus.a @DEPLIBS@ +*** imap/Makefile.in Wed Aug 26 11:40:10 1998 +--- imap/Makefile.in.orig Wed Aug 26 11:37:56 1998 +*************** +*** 47,53 **** + CYRUS_USER=@cyrus_user@ + CYRUS_GROUP=@cyrus_group@ + +! DEFS = @DEFS@ @LOCALDEFS@ + CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../lib @COM_ERR_CPPFLAGS@ @CPPFLAGS@ + LIBS = @LIBS@ @COM_ERR_LIBS@ + DEPLIBS = ../lib/libcyrus.a @DEPLIBS@ +--- 47,53 ---- + CYRUS_USER=@cyrus_user@ + CYRUS_GROUP=@cyrus_group@ + +! DEFS = @DEFS@ @LOCALDEFS@ -DCONFIG_FILENAME=\"$(prefix)/etc/imapd.conf\" + CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../lib @COM_ERR_CPPFLAGS@ @CPPFLAGS@ + LIBS = @LIBS@ @COM_ERR_LIBS@ + DEPLIBS = ../lib/libcyrus.a @DEPLIBS@ diff --exclude=CVS -ru cyrus.old/patches/patch-bd cyrus/patches/patch-bd --- cyrus.old/patches/patch-bd Sun Feb 15 13:14:14 1998 +++ cyrus/patches/patch-bd Wed Aug 26 11:45:05 1998 @@ -1,13 +1,22 @@ ---- imap/config.c.orig Sat Dec 21 02:08:11 1996 -+++ imap/config.c Wed Oct 8 13:56:58 1997 -@@ -23,7 +23,9 @@ - - extern int errno; - --#define CONFIG_FILENAME "/etc/imapd.conf" -+#if !defined(CONFIG_FILENAME) -+ #define CONFIG_FILENAME "/etc/imapd.conf" -+#endif - - struct configlist { - char *key; +*** imap/config.c.orig Fri May 15 23:48:14 1998 +--- imap/config.c Wed Aug 26 11:44:18 1998 +*************** +*** 37,43 **** + + extern int errno; + +! #define CONFIG_FILENAME "/etc/imapd.conf" + /* You'd think this'd be EX_CONFIG, but you'd be wrong. + If it's EX_CONFIG then sendmail's result is to fatally reject the + message; this isn't desireable, we just want to fail the message in a +--- 37,46 ---- + + extern int errno; + +! #if !defined(CONFIG_FILENAME) +! # define CONFIG_FILENAME "/etc/imapd.conf" +! #endif +! + /* You'd think this'd be EX_CONFIG, but you'd be wrong. + If it's EX_CONFIG then sendmail's result is to fatally reject the + message; this isn't desireable, we just want to fail the message in a diff --exclude=CVS -ru cyrus.old/pkg/PLIST cyrus/pkg/PLIST --- cyrus.old/pkg/PLIST Tue May 19 15:55:54 1998 +++ cyrus/pkg/PLIST Mon Aug 31 14:45:10 1998 @@ -34,18 +34,6 @@ include/cyrus/util.h include/cyrus/xmalloc.h lib/libcyrus.a -man/man1/cyradm.1.gz -man/man3/imclient.3.gz -man/man5/imapd.conf.5.gz -man/man8/arbitron.8.gz -man/man8/collectnews.8.gz -man/man8/cyrquota.8.gz -man/man8/deliver.8.gz -man/man8/imapd.8.gz -man/man8/pop3d.8.gz -man/man8/reconstruct.8.gz -man/man8/rmnews.8.gz -man/man8/syncnews.8.gz share/doc/cyrus/html/bugs.html share/doc/cyrus/html/changes.html share/doc/cyrus/html/htmlstrip.c
On 31 August 1998 15:52, Hans Huebner wrote: > On Mon, 31 Aug 1998, Ian Vaudrey wrote: > > > http://www.scriptics.com/software/download.html says: "Tcl/Tk 8.1. > > These are the newest experimental releases; they are available only > > in alpha form, so they are not very stable yet." Should we not be > > depending on tcl-8.0.2 instead? > > I do not object at all. I'm not normally using tcl (expect for cyrus), > so I just kept the dependency as it was. I changed the port to use > tcl-8.0.2 in the patch included below. Ah, sorry, I thought you had changed the dependency. > > The last part of these patches refers to a separate port, i.e. my port > > of Makedepend. I think that should've been on a separate PR, copied > > to me? > > Sorry. Culpa mea. I left the makedepend stuff out in the patch included > below so that you (or anyone else) can take care of that. Please go ahead and PR the update for Makedepend. As long as it's on a separate PR and I know it's going to happen, I've no problem with that at all. Just the opposite in fact - it saves me some work! <snip> > -Hans > - Ian
Responsible Changed From-To: freebsd-ports->stb Evaluating patches, hoopefully updating port tomorrow.
State Changed From-To: open->closed