mail/courier build failures on newer FreeBSD versions

Milan Obuch freebsd-ports at dino.sk
Mon May 26 15:53:13 UTC 2014


On Mon, 26 May 2014 10:30:57 -0500
Scot Hetzel <swhetzel at gmail.com> wrote:

> On Mon, May 26, 2014 at 3:05 AM, Milan Obuch <freebsd-ports at dino.sk>
> wrote:
> > On Mon, 26 May 2014 02:45:45 -0500
> > Scot Hetzel <swhetzel at gmail.com> wrote:
> >
> >>  On Mon, May 26, 2014 at 12:04 AM, Milan Obuch
> >> <freebsd-ports at dino.sk> wrote:

[ snip ]

> >> > Error: Orphaned: etc/courier/courierd
> >> > Error: Orphaned: etc/courier/esmtpd
> >> > Error: Orphaned: etc/courier/esmtpd-msa
> >> > Error: Orphaned: etc/courier/esmtpd-ssl
> >> > Error: Orphaned: etc/courier/imapd
> >> > Error: Orphaned: etc/courier/imapd-ssl
> >> > Error: Orphaned: etc/courier/ldapaddressbook
> >> > Error: Orphaned: etc/courier/pop3d
> >> > Error: Orphaned: etc/courier/pop3d-ssl
> >> > Error: Orphaned: etc/courier/sqwebmaild
> >> > Error: Orphaned: etc/courier/webmlmrc
> >> >
> >> I looked at the ports Makefile, but didn't see how these files are
> >> installed.  Are they being installed by the Courier's source
> >> Makefile's?  If they are, you just need to stop it from creating
> >> them, as they will be created when pkg installs the port.
> >>
> >
> > They are comming from pkg-plist, see below...
> >
> When these files are installed into the STAGEDIR, the @exec lines in
> the pkg-plist are not executed.  They are only executed when pkg
> installs the freshly created courier-0.65.3 package.
> 
> I noticed that the post-install target has:
> 
> 316 @${GREP} '^@exec ' ${TMPPLIST} \
> 317 | ${SED} -e 's:^@exec ::' -e 's:%D:${PREFIX}:g' \
> 318 > ${WRKDIR}/.PLIST.exec \
> 319 && ${SH} ${WRKDIR}/.PLIST.exec
> 
> This looks like it might cause the issue, especially if you had
> changed it to:
> 
> 316 @${GREP} '^@exec ' ${TMPPLIST} \
> 317 | ${SED} -e 's:^@exec ::' -e 's:%D:${STAGEDIR}${PREFIX}:g' \
> 318 > ${WRKDIR}/.PLIST.exec \
> 319 && ${SH} ${WRKDIR}/.PLIST.exec
> 
> You should be able to remove this from the ports Makefile, as pkg will
> run the @exec lines when the package is installed.
>

This part of port was there long time ago, before I adopt it as
mantainer... which means it could solve some old issue and cause
others. I will definitelly try what you suggest.

[ snip ]

> >> The new way to specify sample configuration files is to use the
> >> @sample keyword in the pkg-plist:
> >>
> >> @sample etc/courier/courierd.sample
> >> @sample etc/courier/esmtpd.sample
> >> @sample etc/courier/esmtpd-msa.sample
> >> @sample etc/courier/esmtpd-ssl.sample
> >> @sample etc/courier/imapd.sample
> >> @sample etc/courier/imapd-ssl.sample
> >> @sample etc/courier/ldapaddressbook.sample
> >> @sample etc/courier/pop3d.sample
> >> @sample etc/courier/pop3d-ssl.sample
> >> @sample etc/courier/sqwebmaild.sample
> >> @sample etc/courier/webmlmrc.sample
> >>
> >> Note: you would have to change the port to install the files with a
> >> .sample suffix, instead of a .dist suffix.
> >>
> >
> > Where can I find this docummented? I read in some mailing list post
> > about @sample, found this in Porter's handbook,
> > http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/plist-config.html
> > but I would like to see what it actually does... I will try, but
> > nevertheless, better description would be thanked for...
> >
> 
> I had found the info on @sample here:
> 
> http://www.freebsd.org/doc/en/books/porters-handbook/plist-keywords.html#plist-keywords-your-own
> 
> It is implemented in ${PORTSDIR}/Keywords.
> 

All .dist files are coming from distribution tarball, so it could be
error-prone a bit to find them all and rename them. For now, I leave it
as is... if it will continue to work :)

Milan


More information about the freebsd-ports mailing list