Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Jan 2014 11:50:02 GMT
From:      Corey Halpin <chalpin@cs.wisc.edu>
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   Re: ports/185572: [PATCH] mail/fetchmail: fix StageDir
Message-ID:  <201401221150.s0MBo28W039563@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/185572; it has been noted by GNATS.

From: Corey Halpin <chalpin@cs.wisc.edu>
To: bug-followup@FreeBSD.ORG
Cc: takefu@airport.fm
Subject: Re: ports/185572: [PATCH] mail/fetchmail: fix StageDir
Date: Wed, 22 Jan 2014 05:43:07 -0600

 --ZfOjI3PrQbgiZnxM
 Content-Type: multipart/mixed; boundary="EeQfGwPcQSOJBaQU"
 Content-Disposition: inline
 
 
 --EeQfGwPcQSOJBaQU
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 Content-Transfer-Encoding: quoted-printable
 
   Thank you for the patch, and for your work on it.
 
   Unfortunately, it does not pass 'poudriere testport'.  This is because=20
 ${CHMOD} was still being used in the post-install.  See the fifth bullet un=
 der=20
 'Makefile ... targets' on the StageDir wiki page:=20
 https://wiki.freebsd.org/ports/StageDir .
 
   In the attached revision, I've moved the manipulation of /var/run/fetchma=
 il=20
 into the pkg-{de}install scripts.  Poudriere testport still says there is a=
 =20
 staging violation in %%ETCDIR%%rc ... but as far as I can tell, this is a=
 =20
 false positive.
 
 ~crh
 
 --EeQfGwPcQSOJBaQU
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: attachment; filename="fm_stage_crh.patch"
 Content-Transfer-Encoding: quoted-printable
 
 diff -ruN fetchmail/Makefile fetchmail_new/Makefile
 --- fetchmail/Makefile	2013-09-20 14:59:12.000000000 -0500
 +++ fetchmail_new/Makefile	2014-01-22 05:25:33.291640508 -0600
 @@ -10,63 +10,56 @@
  MAINTAINER=3D	chalpin@cs.wisc.edu
  COMMENT=3D	Batch mail retrieval utility for IMAP/POP3/ETRN/ODMR
 =20
 +LICENSE=3D	GPLv2 LGPL21
 +LICENSE_COMB=3D	dual
 +
  RUN_DEPENDS=3D	${LOCALBASE}/share/certs/ca-root-nss.crt:${PORTSDIR}/securi=
 ty/ca_root_nss
 =20
  # Note USERS can only contain a single word as parts below rely on that.
  USERS=3D	${PORTNAME}
  GROUPS=3D	${USERS}
 +NULLDIR?=3D	# None. portlint compliance
 =20
  USE_RC_SUBR=3D	fetchmail
  FETCHMAILRC=3D	${PREFIX}/etc/fetchmailrc
  SUB_FILES=3D	pkg-message
 =20
 -USE_XZ=3D	yes
 +USE_XZ=3D		yes
  USE_GMAKE=3D	yes
  GNU_CONFIGURE=3D	yes
  USE_OPENSSL=3D	yes
 +NLS_USES=3D	gettext
  CONFIGURE_ARGS=3D	--enable-opie --enable-RPA --enable-SDPS \
  		--without-hesiod --enable-fallback=3Dno \
  		--with-ssl=3D${OPENSSLBASE}
 =20
  LDFLAGS+=3D	-L${LOCALBASE}/lib
 -MAN1=3D	fetchmail.1
 -MLINKS=3D	fetchmail.1 fetchmailconf.1
 =20
 -OPTIONS_DEFINE=3D	X11 NLS NTLM GSSAPI
 +OPTIONS_DEFINE=3D	X11 NLS NTLM GSSAPI POP2
  OPTIONS_DEFAULT=3D	GSSAPI
 +OPTIONS_SUB=3D	yes
  X11_DESC=3D	Python/Tkinter dependencies for ``fetchmailconf''
 -NTLM_DESC=3D	Build in support for NTLM/MSN authentication
 -GSSAPI_DESC=3D	Build GSSAPI/Kerberos 5 support
 +POP2_DESC=3D	POP2 Protocol support[obsolete]
 =20
  PORTDOCS=3D	FAQ FEATURES NEWS NOTES README README.SSL \
  		design-notes.html fetchmail-FAQ.html fetchmail-features.html \
  		esrs-design-notes.html
 =20
 -NO_STAGE=3D	yes
  .include <bsd.port.options.mk>
 =20
  # Pop2 is obsolete
 -.if defined(WITH_POP2)
 +.if ${PORT_OPTIONS:MPOP2}
  CONFIGURE_ARGS+=3D	--enable-POP2
  .endif
 =20
  .if ${PORT_OPTIONS:MX11}
  USE_PYTHON_RUN=3D	yes
  RUN_DEPENDS+=3D	${PYTHON_PKGNAMEPREFIX}tkinter>=3D0:${PORTSDIR}/x11-toolki=
 ts/py-tkinter
 -PLIST_SUB+=3D	X11=3D"" NOX11=3D"@comment "
 +PLIST_SUB+=3D	NOX11=3D"@comment "
  .else
  CONFIGURE_ARGS+=3D	PYTHON=3D:
  SUB_FILES+=3D	fetchmailconf
 -PLIST_SUB+=3D	X11=3D"@comment " NOX11=3D""
 -.endif
 -
 -.if ${PORT_OPTIONS:MNLS}
 -CONFIGURE_ARGS+=3D	--enable-nls
 -PLIST_SUB+=3D	NLS=3D""
 -USES+=3D		gettext
 -.else
 -CONFIGURE_ARGS+=3D	--disable-nls
 -PLIST_SUB+=3D	NLS=3D"@comment "
 +PLIST_SUB+=3D	NOX11=3D""
  .endif
 =20
  .if ${PORT_OPTIONS:MGSSAPI}
 @@ -74,7 +67,7 @@
  .if exists(${LOCALBASE}/lib/libkrb5.a)
  KRB5_HOME=3D	${LOCALBASE}
  .elif exists(/usr/lib/libkrb5.a)
 -KRB5_HOME=3D	/usr
 +KRB5_HOME=3D	${NULLDIR}/usr
  .endif
  .endif
 =20
 @@ -101,24 +94,19 @@
 =20
  post-install:
  .if ${PORT_OPTIONS:MDOCS}
 -	${MKDIR} ${DOCSDIR}
 -	cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${DOCSDIR}
 +	@${MKDIR} ${STAGEDIR}${DOCSDIR}
 +	@cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
  .endif
 =20
  .if empty(PORT_OPTIONS:MX11)
 -	${INSTALL_SCRIPT} ${WRKDIR}/fetchmailconf ${PREFIX}/bin
 -	${INSTALL_SCRIPT} ${WRKSRC}/fetchmailconf.py ${PREFIX}/libexec
 +	${INSTALL_SCRIPT} ${WRKDIR}/fetchmailconf ${STAGEDIR}${PREFIX}/bin
 +	${INSTALL_SCRIPT} ${WRKSRC}/fetchmailconf.py ${STAGEDIR}${PREFIX}/libexec
  .endif
 -	${MKDIR} -m 0755 "/var/run/${PORTNAME}"
 -	${CHOWN} "${USERS}:${GROUPS}" "/var/run/${PORTNAME}"
 -	${INSTALL} -m 644 -o ${USERS} -g ${GROUPS} ${FILESDIR}/fetchmailrc.sample=
  ${PREFIX}/etc/fetchmailrc.sample
 +	${INSTALL} -m 644 ${FILESDIR}/fetchmailrc.sample\
 +		${STAGEDIR}${PREFIX}/etc/fetchmailrc.sample
  	if [ ! -f ${PREFIX}/etc/fetchmailrc ]; then \
 -		${CP} -p ${PREFIX}/etc/fetchmailrc.sample ${PREFIX}/etc/fetchmailrc ; \
 -		${CHMOD} 600 ${PREFIX}/etc/fetchmailrc ; \
 +		${CP} -p ${STAGEDIR}${PREFIX}/etc/fetchmailrc.sample\
 +			${STAGEDIR}${PREFIX}/etc/fetchmailrc ; \
 +		${CHMOD} 600 ${STAGEDIR}${PREFIX}/etc/fetchmailrc ; \
  	fi
 -
 -	@${ECHO_CMD} ""
 -	@${CAT} ${PKGMESSAGE}
 -	@${ECHO_CMD} ""
 -
  .include <bsd.port.mk>
 diff -ruN fetchmail/pkg-deinstall fetchmail_new/pkg-deinstall
 --- fetchmail/pkg-deinstall	1969-12-31 18:00:00.000000000 -0600
 +++ fetchmail_new/pkg-deinstall	2014-01-22 05:34:51.600646238 -0600
 @@ -0,0 +1,11 @@
 +#!/bin/sh
 +
 +if [ x$2 !=3D xPOST-DEINSTALL ]; then
 +  exit
 +fi
 +
 +if [ -f /var/run/fetchmail/fetchmail.pid ] ; then
 +  /bin/rm -f /var/run/fetchmail/fetchmail.pid=20
 +fi
 +
 +/bin/rmdir /var/run/fetchmail 2>/dev/null
 diff -ruN fetchmail/pkg-install fetchmail_new/pkg-install
 --- fetchmail/pkg-install	1969-12-31 18:00:00.000000000 -0600
 +++ fetchmail_new/pkg-install	2014-01-22 05:25:03.706646611 -0600
 @@ -0,0 +1,8 @@
 +#!/bin/sh
 +
 +if [ x$2 !=3D xPOST-INSTALL ]; then
 +  exit
 +fi
 +
 +/bin/mkdir -m 0755 -p /var/run/fetchmail
 +/usr/sbin/chown "fetchmail:fetchmail" /var/run/fetchmail
 diff -ruN fetchmail/pkg-plist fetchmail_new/pkg-plist
 --- fetchmail/pkg-plist	2013-03-26 03:56:28.000000000 -0500
 +++ fetchmail_new/pkg-plist	2014-01-22 05:25:23.339644812 -0600
 @@ -1,6 +1,8 @@
  @comment $FreeBSD: mail/fetchmail/pkg-plist 315268 2013-03-26 08:56:28Z ma=
 ndree $
  bin/fetchmail
  bin/fetchmailconf
 +man/man1/fetchmail.1.gz
 +man/man1/fetchmailconf.1.gz
  %%NOX11%%libexec/fetchmailconf.py
  %%NLS%%share/locale/ca/LC_MESSAGES/fetchmail.mo
  %%NLS%%share/locale/cs/LC_MESSAGES/fetchmail.mo
 @@ -33,6 +35,3 @@
  @unexec if cmp -s %D/etc/fetchmailrc.sample %D/etc/fetchmailrc; then rm -f=
  %D/etc/fetchmailrc; fi
  etc/fetchmailrc.sample
  @exec if [ ! -f %D/etc/fetchmailrc ] ; then cp -p %D/%F %B/fetchmailrc; fi
 -@cwd /var/run
 -@unexec rm -f %D/fetchmail/fetchmail.pid 2>/dev/null || true
 -@dirrmtry fetchmail
 
 --EeQfGwPcQSOJBaQU--
 
 --ZfOjI3PrQbgiZnxM
 Content-Type: application/pgp-signature
 
 -----BEGIN PGP SIGNATURE-----
 
 iF4EAREIAAYFAlLfrsoACgkQR8PgTIRJoTVi2AD+L4aahw0L8nJ3o0vCtbNRr8TU
 +BMsfYh9SaTcgg5HwYEBAIgfatRwpOI2VfgSwNpgVBwThV5esbitZENeikVpplhi
 =ZtII
 -----END PGP SIGNATURE-----
 
 --ZfOjI3PrQbgiZnxM--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201401221150.s0MBo28W039563>