Date: Wed, 16 Mar 2005 14:04:13 -0300 (BRST) From: Renato Botelho <renato@galle.com.br> To: FreeBSD-gnats-submit@FreeBSD.org Cc: lioux@FreeBSD.org Subject: ports/78923: [UPDATE] Some changes on qmail and all slave ports Message-ID: <200503161704.j2GH4DTj023510@data.galle.com.br> Resent-Message-ID: <200503161710.j2GHA11a077711@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 78923 >Category: ports >Synopsis: [UPDATE] Some changes on qmail and all slave ports >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: Wed Mar 16 17:10:01 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Renato Botelho >Release: FreeBSD 5.3-RELEASE-p5 i386 >Organization: Galle Folheados - http://www.galle.com.br >Environment: System: FreeBSD data.galle.com.br 5.3-RELEASE-p5 FreeBSD 5.3-RELEASE-p5 #7: Thu Mar 3 09:03:28 BRST 2005 root@srv1.galle.com.br:/usr/obj/usr/src/sys/GALLE i386 >Description: I think is a good idea remove perl dependence on qmail ports. Today, it's used just to change some files and by two scripts, mkaliasdir and pkg-install. Here is a version of qmail and all slave ports, with the first step to do this, and some other changes. If this PR is approved, I'll work to convert pkg-install and mkaliasdir from perl to sh and remove all perl dependencies. Resume of changes: - Remove ${PERL} use on Makefiles, change it to ${REINPLACE_CMD} and ${SED} - Change LIB_DEPEND to USE_MYSQL on qmail-mysql - Reduce portlint WARN and FATAL messages - Change PRE_MK_INCLUDED to _PREMKINCLUDED, PRE_MK_INCLUDED was not set on all slave ports. Files added: - mail/qmail/files/bootfiles.sed.in Qmail maintainer (lioux@freebsd.org) was cc'd. >How-To-Repeat: >Fix: --- qmail-ports.diff begins here --- diff -ruN --exclude=CVS mail.orig/qmail/Makefile mail/qmail/Makefile --- mail.orig/qmail/Makefile Fri Mar 11 13:40:55 2005 +++ mail/qmail/Makefile Wed Mar 16 13:21:04 2005 @@ -6,7 +6,7 @@ # PORTNAME= qmail -PORTVERSION?= ${QMAIL_VERSION} +PORTVERSION?= ${QMAIL_VERSION} PORTREVISION?= 3 CATEGORIES= mail MASTER_SITES+= http://cr.yp.to/software/ \ @@ -16,6 +16,9 @@ ${MASTER_SITE_QMAIL} DISTNAME= ${PORTNAME}-${QMAIL_VERSION} +MAINTAINER?= lioux@FreeBSD.org +COMMENT?= A secure, reliable, efficient, simple, and fast MTA + # qmail-* skeleton ports including this port may not want # its patches .if !defined(MAIN_QMAIL_PORT_DNS_PATCH_BARRIER) @@ -34,10 +37,10 @@ PATCHFILES+= sendmail-flagf.patch:sendmail_flagf .endif # MAIN_QMAIL_PORT_SENDMAIL_F_PATCH_BARRIER -PATCH_SITES+= ${MASTER_SITE_LOCAL:S/$/:local,dns,ldap,mysql,smtp_auth_tls,tls/} -PATCH_SITE_SUBDIR+= lioux/:local,dns,ldap,mysql,smtp_auth_tls,tls +PATCH_SITES+= ${MASTER_SITE_LOCAL:S/$/:local,dns,ldap,mysql,smtp_auth_tls,tls/} +PATCH_SITE_SUBDIR+= lioux/:local,dns,ldap,mysql,smtp_auth_tls,tls -MASTER_SITE_QMAIL+= \ +MASTER_SITE_QMAIL+= \ http://qmail.geto.net/%SUBDIR%/ \ http://qmail.palomine.net/%SUBDIR%/ \ http://qmail.mirrors.summersault.com/%SUBDIR%/ \ @@ -114,7 +117,7 @@ # MAIN_QMAIL_PORT_WITH_OUTGOINGIP_PATCH_BARRIER # .if defined(WITH_QMAILQUEUE_PATCH)&&!defined(MAIN_QMAIL_PORT_WITH_QMAILQUEUE_PATCH_BARRIER) -PATCHFILES+= qmailqueue-patch +PATCHFILES+= qmailqueue-patch .endif # WITH_QMAILQUEUE_PATCH && !MAIN_QMAIL_PORT_WITH_QMAILQUEUE_PATCH_BARRIER .if defined(WITH_BIG_TODO_PATCH)&&!defined(MAIN_QMAIL_PORT_WITH_BIG_TODO_PATCH_BARRIER) PATCHFILES+= big-todo.103.patch @@ -126,9 +129,6 @@ PATCHFILES+= outgoingip.patch .endif # WITH_OUTGOINGIP_PATCH && !MAIN_QMAIL_PORT_WITH_OUTGOINGIP_PATCH_BARRIER -MAINTAINER?= lioux@FreeBSD.org -COMMENT?= A secure, reliable, efficient, simple, and fast MTA - NO_PACKAGE= djb\'s packaging license does not allow non-standard\ qmail binary distributions @@ -213,6 +213,7 @@ NO_MTREE= yes USE_PERL5_BUILD=yes +USE_REINPLACE= yes .if !defined(_PREMKINCLUDED) .include <bsd.port.pre.mk> @@ -275,7 +276,7 @@ .endif post-post-patch: - @${PERL} -pi -ne "s!/var/qmail!${PREFIX}!;s!/usr/local/!${LOCALBASE}/!" ${WRKSRC}/Makefile + @${REINPLACE_CMD} "s!/var/qmail!${PREFIX}!;s!/usr/local/!${LOCALBASE}/!" ${WRKSRC}/Makefile # If you want to change the qmail users, they must be changed in both # work/*/conf-users and pkg/INSTALL. @@ -343,13 +344,17 @@ # Ugh... ;-) thereal-post-patch: + @${SED} 's!%%PREFIX%%!${PREFIX}!g; \ + s!%%ECHO_CMD%%!${ECHO_CMD}!g' \ + ${FILESDIR}/bootfiles.sed.in > \ + ${WRKDIR}/bootfiles.sed .for i in ${BOOTFILES} @if [ -f ${i}.sh ] ; \ then \ - ${PERL} -p -ne 's!QMAIL/!${PREFIX}/!;s!^(exec)!case "\$$1" in\nstart)\n\t\1!;s!(qmail)$$!\1\&\n\texit 0\n\t;;\nstop)\n\texec killall qmail-send\n\t;;\n*)\n\t${ECHO_CMD} "Usage: `basename \$$0` {start|stop}" >&2\n\texit 64\n\t;;\nesac!' $i.sh > ${WRKDIR}/${i:T} ; \ + ${SED} -f ${WRKDIR}/bootfiles.sed $i.sh > ${WRKDIR}/${i:T} ; \ elif [ -f ${i} ] ; \ then \ - ${PERL} -p -ne 's!QMAIL/!${PREFIX}/!;s!^(exec)!case "\$$1" in\nstart)\n\t\1!;s!(qmail)$$!\1\&\n\texit 0\n\t;;\nstop)\n\texec killall qmail-send\n\t;;\n*)\n\t${ECHO_CMD} "Usage: `basename \$$0` {start|stop}" >&2\n\texit 64\n\t;;\nesac!' $i > ${WRKDIR}/${i:T} ; \ + ${SED} -f ${WRKDIR}/bootfiles.sed $i > ${WRKDIR}/${i:T} ; \ fi .endfor @${SED} s!/var/qmail/!${PREFIX}/!g ${FILESDIR}/mailer.conf.sample > \ diff -ruN --exclude=CVS mail.orig/qmail/files/bootfiles.sed.in mail/qmail/files/bootfiles.sed.in --- mail.orig/qmail/files/bootfiles.sed.in Wed Dec 31 21:00:00 1969 +++ mail/qmail/files/bootfiles.sed.in Wed Mar 16 12:33:33 2005 @@ -0,0 +1,15 @@ +s!QMAIL/!%%PREFIX%%/! +s!^\(exec\)!case "\$1" in\ +start)\ +\ \1! +s!\(qmail\)$!\1\&\ +\ exit 0\ +\ ;;\ +stop)\ +\ exec killall qmail-send\ +\ ;;\ +*)\ +\ %%ECHO_CMD%% "Usage: `basename \$0` {start|stop}" >\&2\ +\ exit 64\ +\ ;;\ +esac! diff -ruN --exclude=CVS mail.orig/qmail/pkg-install mail/qmail/pkg-install --- mail.orig/qmail/pkg-install Sat Jul 25 17:05:53 1998 +++ mail/qmail/pkg-install Tue Mar 15 09:49:11 2005 @@ -15,6 +15,8 @@ exit 0; } +$pw = "/usr/sbin/pw"; +$nonexistent = "/nonexistent"; @groups = ("qmail", "qnofiles"); %users = ('qmaild', "qnofiles", 'qmaill', "qnofiles", 'qmailp', "qnofiles", 'qmailq', "qmail", 'qmailr', "qmail", 'qmails', "qmail"); @@ -33,7 +35,7 @@ do checkrpw; # May exit $x = "-g $gids{$group}"; - $result = system ("/usr/sbin/pw groupadd $group $x"); + $result = system ("$pw groupadd $group $x"); if ($result) { die "Failed to add group $group as gid $gids{$group}\n"; } @@ -44,7 +46,7 @@ do checkrpw; # May exit $x = "-u $uids{'alias'}"; - $result = system ("/usr/sbin/pw useradd alias -g qnofiles -d \"$ENV{PKG_PREFIX}/alias\" -s /nonexistent $x"); + $result = system ("$pw useradd alias -g qnofiles -d \"$ENV{PKG_PREFIX}/alias\" -s $nonexistent $x"); if ($result) { die "Failed to add user alias as uid $uids{'alias'}\n"; } @@ -55,7 +57,7 @@ do checkrpw; # May exit $x = "-u $uids{$user}"; - $result = system ("/usr/sbin/pw useradd $user -g $users{$user} -d \"$ENV{PKG_PREFIX}\" -s /nonexistent $x"); + $result = system ("$pw useradd $user -g $users{$user} -d \"$ENV{PKG_PREFIX}\" -s $nonexistent $x"); if ($result) { die "Failed to add user $user as uid $uids{$user}\n"; } @@ -84,7 +86,7 @@ exit 0; sub checkrpw { - if (! -x "/usr/sbin/pw") { + if (! -x "$pw") { print <<'EOM'; This system looks like a pre-2.2 version of FreeBSD. We see that it is missing the "pw" utility. We need this utility. Please get and @@ -93,7 +95,7 @@ ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/usr.sbin/pw.tar.gz EOM - die "No /usr/sbin/pw"; + die "No $pw"; } if ($> != 0) { diff -ruN --exclude=CVS mail.orig/qmail-ldap/Makefile mail/qmail-ldap/Makefile --- mail.orig/qmail-ldap/Makefile Fri Feb 11 19:11:51 2005 +++ mail/qmail-ldap/Makefile Wed Mar 16 08:38:14 2005 @@ -13,20 +13,21 @@ PATCH_SITES= http://www.nrg4u.com/qmail/:ldap PATCHFILES= qmail-ldap-1.03-${LDAP_PATCH_DATE}.patch.gz:ldap -PATCH_DIST_STRIP+= -p1 - -EXTRA_PATCHES+= ${QMAIL_PORT_PATCHDIR}/patch-ab ${QMAIL_PORT_PATCHDIR}/patch-ac MAINTAINER= lioux@FreeBSD.org COMMENT= A SECURE, reliable, and FAST MTA for UNIX systems WITH LDAP support -CONFLICTS= nss-* emboss-* digest-* +EXTRA_PATCHES+= ${QMAIL_PORT_PATCHDIR}/patch-ab ${QMAIL_PORT_PATCHDIR}/patch-ac +PATCH_DIST_STRIP+= -p1 + +CONFLICTS= nss-[0-9]* emboss-[0-9]* digest-[0-9]* USE_OPENLDAP= yes +USE_REINPLACE= yes PKGNAMESUFFIX:= ${PKGNAMESUFFIX}2 .if !defined(WITHOUT_TLS) -PKGNAMESUFFIX:= ${PKGNAMESUFFIX}-with_tls +PKGNAMESUFFIX:= ${PKGNAMESUFFIX}-with_tls USE_OPENSSL= yes .endif # WITHOUT_TLS @@ -41,7 +42,7 @@ PREFIX?= ${QMAIL_PORT_PREFIX} #PREFIX= /var/qmail-ldap -.if !defined(PRE_MK_INCLUDED) +.if !defined(_PREMKINCLUDED) .include <bsd.port.pre.mk> .endif @@ -71,32 +72,32 @@ slaveport-post-patch: qmail-ldap-post-patch qmail-ldap-post-patch: - @${PERL} -pi -ne "s|LDAPLIBS=-L/usr/local/lib|LDAPLIBS=-L${LOCALBASE}/lib|;s|LDAPINCLUDES=-I/usr/local/include|LDAPINCLUDES=-I${LOCALBASE}/include|" ${WRKSRC}/Makefile + @${REINPLACE_CMD} "s|LDAPLIBS=-L/usr/local/lib|LDAPLIBS=-L${LOCALBASE}/lib|;s|LDAPINCLUDES=-I/usr/local/include|LDAPINCLUDES=-I${LOCALBASE}/include|" ${WRKSRC}/Makefile .if !defined(WITHOUT_TLS) - @${PERL} -pi -ne "s|#TLSON=|TLSON=|; \ + @${REINPLACE_CMD} "s|#TLSON=|TLSON=|; \ s|#TLSINCLUDES=-I/usr/local/include|TLSINCLUDES=-I${OPENSSLBASE}/include|; \ s|#TLSLIBS=-L/usr/local/lib|TLSLIBS=-L${OPENSSLBASE}/lib|; \ s|#OPENSSLBIN=/usr/local/bin/openssl|OPENSSLBIN=${OPENSSLBASE}/bin/openssl|" \ ${WRKSRC}/Makefile .endif # !WITHOUT_TLS .if !defined(WITHOUT_LDAP_CLUSTER) - @${PERL} -pi -ne "s|#LDAPFLAGS=-DQLDAP_CLUSTER\s+-DEXTERNAL_TODO|LDAPFLAGS\+=-DQLDAP_CLUSTER -DEXTERNAL_TODO#|" ${WRKSRC}/Makefile + @${REINPLACE_CMD} "s|#LDAPFLAGS=-DQLDAP_CLUSTER\s+-DEXTERNAL_TODO|LDAPFLAGS\+=-DQLDAP_CLUSTER -DEXTERNAL_TODO#|" ${WRKSRC}/Makefile .endif # WITHOUT_LDAP_CLUSTER .if !defined(WITHOUT_AUTOMAILDIRMAKE) - @${PERL} -pi -ne "s|#MDIRMAKE=-DAUTOMAILDIRMAKE|MDIRMAKE=-DAUTOMAILDIRMAKE|" ${WRKSRC}/Makefile + @${REINPLACE_CMD} "s|#MDIRMAKE=-DAUTOMAILDIRMAKE|MDIRMAKE=-DAUTOMAILDIRMAKE|" ${WRKSRC}/Makefile .endif # WITHOUT_AUTOMAILDIRMAKE .if !defined(WITHOUT_AUTOHOMEDIRMAKE) - @${PERL} -pi -ne "s|#HDIRMAKE=-DAUTOHOMEDIRMAKE|HDIRMAKE=-DAUTOHOMEDIRMAKE|" ${WRKSRC}/Makefile + @${REINPLACE_CMD} "s|#HDIRMAKE=-DAUTOHOMEDIRMAKE|HDIRMAKE=-DAUTOHOMEDIRMAKE|" ${WRKSRC}/Makefile .endif # WITHOUT_AUTOHOMEDIRMAKE .if defined(WITH_LDAP_DEBUG) - @${PERL} -pi -ne "s|#DEBUG=-DDEBUG|DEBUG=-DDEBUG|" ${WRKSRC}/Makefile + @${REINPLACE_CMD} "s|#DEBUG=-DDEBUG|DEBUG=-DDEBUG|" ${WRKSRC}/Makefile .endif # WITH_LDAP_DEBUG .if defined(WITH_CLEARTEXTPASSWD) - @${PERL} -pi -ne "s|^#\s*-DCLEARTEXTPASSWD.*$$|LDAPFLAGS\+=-DCLEARTEXTPASSWD|" \ + @${REINPLACE_CMD} "s|^#\s*-DCLEARTEXTPASSWD.*$$|LDAPFLAGS\+=-DCLEARTEXTPASSWD|" \ ${WRKSRC}/Makefile .endif # WITH_CLEARTEXTPASSWD .if defined(WITH_DASH_EXT) - @${PERL} -pi -ne "s|^# -DDASH_EXT.*$$|LDAPFLAGS\+=-DDASH_EXT|" \ + @${REINPLACE_CMD} "s|^# -DDASH_EXT.*$$|LDAPFLAGS\+=-DDASH_EXT|" \ ${WRKSRC}/Makefile .endif # WITH_DASH_EXT @@ -113,7 +114,5 @@ DESCR= ${PKGDIR_LOCAL}/pkg-descr PKGMESSAGE= ${PKGDIR_LOCAL}/pkg-message PLIST= ${PKGDIR_LOCAL}/pkg-plist - -PRE_MK_INCLUDED= yes .include "${MASTERDIR}/Makefile" diff -ruN --exclude=CVS mail.orig/qmail-mysql/Makefile mail/qmail-mysql/Makefile --- mail.orig/qmail-mysql/Makefile Tue Mar 15 12:05:50 2005 +++ mail/qmail-mysql/Makefile Wed Mar 16 08:38:24 2005 @@ -18,6 +18,7 @@ COMMENT= A SECURE, reliable, and FAST MTA for UNIX systems WITH MySQL support USE_MYSQL= yes +USE_REINPLACE= yes # patches from the master port that brake this one are now allowed MAIN_QMAIL_PORT_WITH_QMAILQUEUE_PATCH_BARRIER= yes @@ -28,7 +29,7 @@ PREFIX?= ${QMAIL_PORT_PREFIX} #PREFIX= /var/qmail-mysql -.if !defined(PRE_MK_INCLUDED) +.if !defined(_PREMKINCLUDED) .include <bsd.port.pre.mk> .endif @@ -40,7 +41,7 @@ slaveport-post-patch: qmail-mysql-post-patch qmail-mysql-post-patch: - @${PERL} -pi -ne \ + @${REINPLACE_CMD} \ 's|/opt/mysql|${LOCALBASE}|' \ ${WRKSRC}/Makefile @@ -49,7 +50,5 @@ PKGDIR_LOCAL= ${.CURDIR} DESCR= ${PKGDIR_LOCAL}/pkg-descr PKGMESSAGE= ${PKGDIR_LOCAL}/pkg-message - -PRE_MK_INCLUDED= yes .include "${MASTERDIR}/Makefile" diff -ruN --exclude=CVS mail.orig/qmail-smtp_auth+tls/Makefile mail/qmail-smtp_auth+tls/Makefile --- mail.orig/qmail-smtp_auth+tls/Makefile Thu Mar 11 23:28:38 2004 +++ mail/qmail-smtp_auth+tls/Makefile Wed Mar 16 08:38:29 2005 @@ -20,6 +20,7 @@ ONLY_FOR_ARCHS= i386 USE_OPENSSL= YES +USE_REINPLACE= yes # Patches from the main qmail port are not wanted MAIN_QMAIL_PORT_WITH_OUTGOINGIP_PATCH_BARRIER= yes @@ -30,7 +31,7 @@ PREFIX?= ${QMAIL_PORT_PREFIX} #PREFIX= /var/qmail-smtp_auth+tls -.if !defined(PRE_MK_INCLUDED) +.if !defined(_PREMKINCLUDED) .include <bsd.port.pre.mk> .endif @@ -58,7 +59,7 @@ @${HEAD} -6 ${DISTDIR}/qmail-1.03-starttls-smtp-auth.patch \ | ${TAIL} -5 \ > ${WRKDIR}/SMTP_AUTH+TLS.readme - @${PERL} -pi -ne "s|/usr/local/ssl|${OPENSSLBASE}|" ${WRKSRC}/Makefile + @${REINPLACE_CMD} "s|/usr/local/ssl|${OPENSSLBASE}|" ${WRKSRC}/Makefile # Primary Ugh... ;-) # idea stolen from www/apache13-ssl, a target written by adam@algroup.co.uk diff -ruN --exclude=CVS mail.orig/qmail-spamcontrol/Makefile mail/qmail-spamcontrol/Makefile --- mail.orig/qmail-spamcontrol/Makefile Mon Mar 14 16:59:10 2005 +++ mail/qmail-spamcontrol/Makefile Wed Mar 16 08:10:47 2005 @@ -33,12 +33,13 @@ MOREIPME "Additional control files moreipme & notipme" off \ BIGTODO "Bruce Guenter's BigToDo patch" off -.if !defined(PRE_MK_INCLUDED) +.if !defined(_PREMKINCLUDED) .include <bsd.port.pre.mk> .endif # Using default from master port, i.e., /var/qmail -QMAIL_PORT= ${PORTSDIR}/mail/qmail +#QMAIL_PORT= ${PORTSDIR}/mail/qmail +QMAIL_PORT= ${.CURDIR}/../qmail QMAIL_PORT_PREFIX!= cd ${QMAIL_PORT} && ${MAKE} -V PREFIX MASTERDIR= ${QMAIL_PORT} diff -ruN --exclude=CVS mail.orig/qmail-tls/Makefile mail/qmail-tls/Makefile --- mail.orig/qmail-tls/Makefile Sun Mar 7 18:08:27 2004 +++ mail/qmail-tls/Makefile Wed Mar 16 08:38:38 2005 @@ -18,6 +18,7 @@ COMMENT= A SECURE, reliable, and FAST MTA for UNIX systems WITH TLS support USE_OPENSSL= YES +USE_REINPLACE= yes # Patches from the main qmail port are not wanted MAIN_QMAIL_PORT_WITH_OUTGOINGIP_PATCH_BARRIER= yes @@ -28,7 +29,7 @@ PREFIX?= ${QMAIL_PORT_PREFIX} #PREFIX= /var/qmail-tls -.if !defined(PRE_MK_INCLUDED) +.if !defined(_PREMKINCLUDED) .include <bsd.port.pre.mk> .endif @@ -53,7 +54,7 @@ qmail-tls-post-patch: @${HEAD} -74 ${DISTDIR}/tls.patch > ${WRKDIR}/TLS.readme - @${PERL} -pi -ne "s|/usr/local/ssl|${OPENSSLBASE}|" ${WRKSRC}/Makefile + @${REINPLACE_CMD} "s|/usr/local/ssl|${OPENSSLBASE}|" ${WRKSRC}/Makefile # Primary Ugh... ;-) # idea stolen from www/apache13-ssl, a target written by adam@algroup.co.uk --- qmail-ports.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200503161704.j2GH4DTj023510>