Page MenuHomeFreeBSD

mail/dcc-dccd: Fixes for changes in FreeBSD 11 /usr/share/mk
ClosedPublic

Authored by ultima on Jun 15 2017, 2:24 AM.

Details

Summary
  • Updated to 1.3.159
  • Added upstream configure switches for DCC
  • Remove gmake
  • Fixed portlint items
  • Install stripped

PR\: 216799
Sumitted by\: Vernon Schryver <vjs@rhyolite.com>
Reviewed by\: lifanov (mentor), matthew (mentor)
Approved by\: Piotr Kubaj <pkubaj@anongoth.pl> (maintainer) lifanov (mentor), matthew (mentor)
Differential Revision\: https://reviews.freebsd.org/DXXXXX

Test Plan

portlint:
WARN: /usr/home/ricky/FreeBSD/ports/mail/dcc-dccd/pkg-plist: [58]: @cwd is deprecated. Please use absolute pathnames instead.
WARN: Makefile: possible use of absolute pathname "/var/dcc".
WARN: Makefile: possible use of absolute pathname "/var/dcc".
WARN: Makefile: possible use of absolute pathname "/usr".
WARN: Makefile: for new port, make $FreeBSD$ tag in comment section empty, to make SVN happy.
WARN: Makefile: new ports should not set PORTREVISION.
WARN: Makefile: using hyphen in PORTNAME. consider using PKGNAMEPREFIX and/or PKGNAMESUFFIX.
0 fatal errors and 7 warnings found.

Not sure how to fix the @cwd issue. Others are false positives.

poudriere:
103i386
103amd64
110i386
110amd64
12i386
12amd64

INSTALL_TARGET= install-strip failed to work correctly, so added strips individually. Tested with defaults and inverted defaults.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

The @cwd in pkg-plist warning that portlint generates also needs attention -- I think everything else that portlint is complaining about
are false positives.

mail/dcc-dccd/Makefile
6 ↗(On Diff #29635)

Generally delete PORTREVISION lines rather than setting them to 0. The only exception is when there
are slave ports that need a different PORTREVISION.

matthew requested changes to this revision.Jun 15 2017, 9:01 AM
This revision now requires changes to proceed.Jun 15 2017, 9:01 AM

Hmmm... the comments in the Makefile about the milter interface being 'sendmail only' are no longer
correct. Other MTAs now support the milter interface. Most of the logic in this block:

## dccm milter support
#
.if ${PORT_OPTIONS:MDCCM}

.if !exists(/usr/lib/libmilter.a) && !exists(${LOCALBASE}/lib/libmilter.a)
IGNORE=         neither base system nor Ports version of Sendmail installed, cannot build milter
.endif
.if ! ${PORT_OPTIONS:MPORTS_SENDMAIL} && !exists(/usr/lib/libmilter.a)
IGNORE=         base system Sendmail not found or too old, rebuild with WITH_PORTS_SENDMAIL=yes or WITHOUT_DCCM=yes
.endif
.if ${PORT_OPTIONS:MPORTS_SENDMAIL} && !exists(${LOCALBASE}/lib/libmilter.a)
IGNORE=         ports Sendmail not found, rebuild with WITHOUT_PORTS_SENDMAIL=yes or WITHOUT_DCCM=yes
.endif

.if ! ${PORT_OPTIONS:MPORTS_SENDMAIL}
MILTERBASE=     /usr
.else
MILTERBASE?=    ${LOCALBASE}
.endif

MILTERINC=      ${MILTERBASE}/include
MILTERLIB=      ${MILTERBASE}/lib

is outdated. Turning on the DCCM option should just add a dependency on the mail/libmilter port,
and set MILTERBASE to ${LOCALBASE} unconditionally.

The @cwd in pkg-plist warning that portlint generates also needs attention -- I think everything else that portlint is complaining about
are false positives.

Responding to myself. Having had a look at this: yes, it is not trivial to remove the @cwd from pkg-plist. It's all down to the presence of
the ALT_HOME option, which shifts some config files from the FreeBSD standard location ${PREFIX}/dcc to /var/db/dcc Not sure why ALT_HOME is
provided, since one of the points of porting is to make software conform to the standardized FreeBSD layout. I don't think this would be
acceptable if the port was being created today.

The @cwd in pkg-plist warning that portlint generates also needs attention -- I think everything else that portlint is complaining about
are false positives.

Responding to myself. Having had a look at this: yes, it is not trivial to remove the @cwd from pkg-plist. It's all down to the presence of
the ALT_HOME option, which shifts some config files from the FreeBSD standard location ${PREFIX}/dcc to /var/db/dcc Not sure why ALT_HOME is
provided, since one of the points of porting is to make software conform to the standardized FreeBSD layout. I don't think this would be
acceptable if the port was being created today.

It actually sets to /var/dcc. However changing this could break many users installation, so this may be best left alone.
Should it be remove and add an updating entry or is it best to leave as is? Tough choice as it will always be incorrect if not fixed...

I'm going to leave that part out for the time being and open a new bug to get some attention from the maintainer, unless you feel it needs to be
addressed immediately.

Yes, I think that's a good idea. Please make a note of your plans about @cwd in the commit message.
This port is in need of bringing fully up to modern standards and fixing various comments to match
the current practice with a separate libmilter port rather than forcing sendmail to be installed.

This revision is now accepted and ready to land.Jun 16 2017, 11:55 AM
This revision was automatically updated to reflect the committed changes.