git: f63fdcf8eaea - main - sysutils/nut*: Convert to options helpers

From: Cy Schubert <cy_at_FreeBSD.org>
Date: Mon, 09 May 2022 18:11:21 UTC
The branch main has been updated by cy:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f63fdcf8eaea50c190123b8ea00e3d7b4eaf32ef

commit f63fdcf8eaea50c190123b8ea00e3d7b4eaf32ef
Author:     Cy Schubert <cy@FreeBSD.org>
AuthorDate: 2022-05-04 03:22:28 +0000
Commit:     Cy Schubert <cy@FreeBSD.org>
CommitDate: 2022-05-09 17:49:27 +0000

    sysutils/nut*: Convert to options helpers
    
    Modernize the sysutils/nut* ports replacing old-school options with
    options helpers, cleaning up the Makefiles a lot.
    
    PR:             263751
    Reported by:    dizzy
---
 sysutils/nut-devel/Makefile  | 137 +++++++----------------
 sysutils/nut-devel/pkg-plist | 251 +++++++++++++++++++++---------------------
 sysutils/nut/Makefile        | 135 +++++++----------------
 sysutils/nut/pkg-plist       | 252 +++++++++++++++++++++----------------------
 4 files changed, 325 insertions(+), 450 deletions(-)

diff --git a/sysutils/nut-devel/Makefile b/sysutils/nut-devel/Makefile
index efdcda3a5d64..6a12933363b5 100644
--- a/sysutils/nut-devel/Makefile
+++ b/sysutils/nut-devel/Makefile
@@ -31,19 +31,22 @@ NUT_GROUP?=	uucp
 STATEDIR?=	/var/db/nut
 PLIST_SUB+=	NUT_USER=${NUT_USER}
 PLIST_SUB+=	NUT_GROUP=${NUT_GROUP}
+CGIDIR?=	${PREFIX}/www/cgi-bin/${PORTNAME}
+CGIDIR_REL?=	${CGIDIR:S,^${PREFIX}/,,}
+PLIST_SUB+=	CGIDIR="${CGIDIR_REL}"
+PLIST_SUB+=	CGIETCDIR="etc/nut/"
 
-OPTIONS_DEFAULT=SERIAL USB SNMP NEON IPMI_OFF SSL_OFF
-OPTIONS_DEFINE=	SERIAL USB SNMP NEON PDU CGI BASH AVAHI DOCS
-OPTIONS_SINGLE=	IPMI SSL
-OPTIONS_SINGLE_IPMI=	IPMI_OFF IPMIPSU FREEIPMI
+OPTIONS_DEFAULT=SERIAL USB SNMP NEON SSL_OFF
+OPTIONS_DEFINE=	SERIAL USB SNMP NEON PDU CGI BASH AVAHI IPMIPSU FREEIPMI DOCS
+OPTIONS_SINGLE=	SSL
 OPTIONS_SINGLE_SSL=	SSL_OFF OPENSSL NSS
+OPTIONS_SUB=	yes
 
 SERIAL_DESC=	SERIAL support
 USB_DESC=	USB support
 NEON_DESC=	NEON XML/HTTP support
 PDU_DESC=	Powerman PDU support
 CGI_DESC=	Web CGI interface
-IPMI_OFF_DESC=	No IPMI support
 FREEIPMI_DESC=	freeipmi support
 IPMIPSU_DESC=	Use nut-ipmipsu support (experimental)
 SSL_OFF_DESC=	No SSL support
@@ -54,8 +57,6 @@ PLIST_SUB+=	STATEDIR=${STATEDIR}
 
 PORTDOCS=	*
 
-.include <bsd.port.options.mk>
-
 TMPDIR?=	/tmp
 INSTALL_TARGET=	install-strip
 CONFIGURE_ARGS=	--sysconfdir=${PREFIX}/etc/nut \
@@ -77,111 +78,47 @@ LIB_DEPENDS+=	libltdl.so:devel/libltdl
 
 BUILD_DEPENDS=	asciidoc:textproc/asciidoc
 
-.if ${PORT_OPTIONS:MCGI}
-LIB_DEPENDS+=	libgd.so:graphics/gd
-CGIDIR?=	${PREFIX}/www/cgi-bin/${PORTNAME}
-CGIDIR_REL?=	${CGIDIR:S,^${PREFIX}/,,}
-CONFIGURE_ARGS+=	--with-cgi --with-cgipath=${CGIDIR} \
+CGI_LIB_DEPENDS=	libgd.so:graphics/gd
+CGI_CONFIGURE_WITH=	cgi
+CGI_CONFIGURE_ON=	--with-cgipath=${CGIDIR} \
 			--with-htmlpath=${WWWDIR} \
 			--with-gd-includes=-I${LOCALBASE}/include \
 			--with-gd-libs="-L${LOCALBASE}/lib -lgd"
-PLIST_SUB+=	NUT_CGI=""
-PLIST_SUB+=	CGIDIR="${CGIDIR_REL}"
-PLIST_SUB+=	CGIETCDIR="etc/nut/"
-.else
-CONFIGURE_ARGS+=	--without-cgi
-PLIST_SUB+=	NUT_CGI="@comment "
-.endif
 
-.if ${PORT_OPTIONS:MSERIAL}
-CONFIGURE_ARGS+=	--with-serial
-PLIST_SUB+=	NUT_SERIAL=""
-.else
-CONFIGURE_ARGS+=	--without-serial
-PLIST_SUB+=	NUT_SERIAL="@comment "
-.endif
+SERIAL_CONFIGURE_WITH=	serial
 
-.if ${PORT_OPTIONS:MUSB}
-#EXTRA_PATCHES=	${FILESDIR}/extra-patch-m4_nut_check_libusb.m4
-CONFIGURE_ARGS+=	--with-usb=auto
-PLIST_SUB+=	NUT_USB=""
-.else
-CONFIGURE_ARGS+=	--without-usb
-PLIST_SUB+=	NUT_USB="@comment "
-.endif
+USB_CONFIGURE_WITH=	usb=auto
 
-.if ${PORT_OPTIONS:MSNMP}
-LIB_DEPENDS+=	libnetsnmp.so:net-mgmt/net-snmp
-CONFIGURE_ARGS+=	--with-snmp
-PLIST_SUB+=	NUT_SNMP=""
-.else
-CONFIGURE_ARGS+=	--without-snmp
-PLIST_SUB+=	NUT_SNMP="@comment "
-.endif
+SNMP_LIB_DEPENDS=	libnetsnmp.so:net-mgmt/net-snmp
+SNMP_CONFIGURE_WITH=	snmp
 
-.if ${PORT_OPTIONS:MNEON}
-LIB_DEPENDS+=	libneon.so:www/neon
-CONFIGURE_ARGS+=	--with-neon
-PLIST_SUB+=	NUT_NEON=""
-.else
-CONFIGURE_ARGS+=	--without-neon
-CONFIGURE_ARGS+=	--disable-neon
-PLIST_SUB+=	NUT_NEON="@comment "
-.endif
+NEON_LIB_DEPENDS=	libneon.so:www/neon
+NEON_CONFIGURE_WITH=	neon
 
-.if ${PORT_OPTIONS:MPDU}
-LIB_DEPENDS+=	libpowerman.so:sysutils/powerman
-CONFIGURE_ARGS+=	--with-powerman
-PLIST_SUB+=	NUT_PDU=""
-.else
-CONFIGURE_ARGS+=	--without-powerman
-PLIST_SUB+=	NUT_PDU="@comment "
-.endif
+PDU_LIB_DEPENDS=	libpowerman.so:sysutils/powerman
+PDU_CONFIGURE_WITH=	powerman
 
-.if ${PORT_OPTIONS:MBASH}
-BUILD_DEPENDS+=	${LOCALBASE}/share/bash-completion/bash_completion.sh:shells/bash-completion
-RUN_DEPENDS+=	${LOCALBASE}/share/bash-completion/bash_completion.sh:shells/bash-completion
-PLIST_SUB+=	BASH=""
-.else
-PLIST_SUB+=	BASH="@comment "
-.endif
+BASH_BUILD_DEPENDS=	${LOCALBASE}/share/bash-completion/bash_completion.sh:shells/bash-completion
+BASH_RUN_DEPENDS=	${LOCALBASE}/share/bash-completion/bash_completion.sh:shells/bash-completion
 
-.if ${PORT_OPTIONS:MAVAHI}
-BUILD_DEPENDS+=	${LOCALBASE}/include/avahi-ui/avahi-ui.h:net/avahi-header
-BUILD_DEPENDS+=	avahi-daemon:net/avahi-app
-RUN_DEPENDS+=	avahi-daemon:net/avahi-app
-CONFIGURE_ARGS+=	--with-avahi
-.else
-CONFIGURE_ARGS+=	--without-avahi
-.endif
+AVAHI_BUILD_DEPENDS=	${LOCALBASE}/include/avahi-ui/avahi-ui.h:net/avahi-header
+AVAHI_BUILD_DEPENDS=	avahi-daemon:net/avahi-app
+AVAHI_RUN_DEPENDS=	avahi-daemon:net/avahi-app
+AVAHI_CONFIGURE_WITH=	avahi
 
-.if ${PORT_OPTIONS:MFREEIPMI}
-LIB_DEPENDS+=	libfreeipmi.so:sysutils/freeipmi
-CONFIGURE_ARGS+=	--with-freeipmi
-PLIST_SUB+=	NUT_FREEIPMI=""
-.else
-CONFIGURE_ARGS+=	--without-freeipmi
-PLIST_SUB+=	NUT_FREEIPMI="@comment "
-.endif
+FREEIPMI_LIB_DEPENDS=	libfreeipmi.so:sysutils/freeipmi
+FREEIPMI_CONFIGURE_WITH=freeipmi
 
-.if ${PORT_OPTIONS:MIPMIPSU}
-LIB_DEPENDS+=	libfreeipmi.so:sysutils/freeipmi
-CONFIGURE_ARGS+=	--with-ipmi
-PLIST_SUB+=	NUT_IPMIPSU=""
-.else
-CONFIGURE_ARGS+=	--without-ipmi
-PLIST_SUB+=	NUT_IPMIPSU="@comment "
-.endif
+IPMIPSU_LIB_DEPENDS=	libfreeipmi.so:sysutils/freeipmi
+IPMIPSU_CONFIGURE_WITH=	ipmi
 
-.if ${PORT_OPTIONS:MOPENSSL}
-USES+=	ssl
-CONFIGURE_ARGS+=	--with-openssl
-.elif ${PORT_OPTIONS:MNSS}
-LIB_DEPENDS=		libnss3.so:security/nss
-CONFIGURE_ARGS+=	--with-nss
-.else
-CONFIGURE_ARGS+=	--without-openssl --without-ssl
-.endif
+OPENSSL_USES=		ssl
+OPENSSL_CONFIGURE_WITH=	openssl
+
+NSS_LIB_DEPENDS=	libnss3.so:security/nss
+NSS_CONFIGURE_WITH=	nss
+
+.include <bsd.port.pre.mk>
 
 post-patch:
 	@${REINPLACE_CMD} -i '' -e 's|python|${PYTHON_CMD}|' ${WRKSRC}/autogen.sh
@@ -215,4 +152,4 @@ post-install:
 	${INSTALL_DATA} ${PATCHDIR}/nut.newsyslog ${STAGEDIR}${EXAMPLESDIR}/newsyslog.sample
 	${MKDIR} ${STAGEDIR}/var/log/nut
 
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git a/sysutils/nut-devel/pkg-plist b/sysutils/nut-devel/pkg-plist
index be882f3530dc..b1dac90a6916 100644
--- a/sysutils/nut-devel/pkg-plist
+++ b/sysutils/nut-devel/pkg-plist
@@ -1,14 +1,14 @@
-%%NUT_CGI%%%%CGIDIR%%/upsimage.cgi
-%%NUT_CGI%%%%CGIDIR%%/upsset.cgi
-%%NUT_CGI%%%%CGIDIR%%/upsstats.cgi
-%%NUT_CGI%%@sample %%CGIETCDIR%%hosts.conf.sample
-%%NUT_CGI%%@sample %%CGIETCDIR%%upsset.conf.sample
-%%NUT_CGI%%@sample %%CGIETCDIR%%upsstats.html.sample
-%%NUT_CGI%%@sample %%CGIETCDIR%%upsstats-single.html.sample
-%%NUT_CGI%%%%WWWDIR%%/bottom.html
-%%NUT_CGI%%%%WWWDIR%%/header.html
-%%NUT_CGI%%%%WWWDIR%%/index.html
-%%NUT_CGI%%%%WWWDIR%%/nut-banner.png
+%%CGI%%%%CGIDIR%%/upsimage.cgi
+%%CGI%%%%CGIDIR%%/upsset.cgi
+%%CGI%%%%CGIDIR%%/upsstats.cgi
+%%CGI%%@sample %%CGIETCDIR%%hosts.conf.sample
+%%CGI%%@sample %%CGIETCDIR%%upsset.conf.sample
+%%CGI%%@sample %%CGIETCDIR%%upsstats.html.sample
+%%CGI%%@sample %%CGIETCDIR%%upsstats-single.html.sample
+%%CGI%%%%WWWDIR%%/bottom.html
+%%CGI%%%%WWWDIR%%/header.html
+%%CGI%%%%WWWDIR%%/index.html
+%%CGI%%%%WWWDIR%%/nut-banner.png
 %%ETCDIR%%/cmdvartab
 %%ETCDIR%%/driver.list
 @sample %%ETCDIR%%/nut.conf.sample
@@ -19,7 +19,7 @@
 @sample %%ETCDIR%%/upssched.conf.sample
 @sample %%EXAMPLESDIR%%/newsyslog.sample etc/newsyslog.conf.d/nut.conf
 @sample %%EXAMPLESDIR%%/syslog.sample etc/syslog.d/nut
-%%NUT_USB%%etc/devd/nut-usb.conf
+%%USB%%etc/devd/nut-usb.conf
 bin/nut-scanner
 bin/upsc
 bin/upscmd
@@ -56,61 +56,61 @@ libdata/pkgconfig/libnutclient.pc
 libdata/pkgconfig/libnutscan.pc
 libdata/pkgconfig/libupsclient.pc
 libdata/pkgconfig/libnutclientstub.pc
-%%NUT_SERIAL%%libexec/nut/al175
-%%NUT_SERIAL%%libexec/nut/apcupsd-ups
-%%NUT_USB%%libexec/nut/nutdrv_atcl_usb
-%%NUT_USB%%libexec/nut/nutdrv_qx
-%%NUT_SERIAL%%libexec/nut/riello_ser
-%%NUT_USB%%libexec/nut/riello_usb
-%%NUT_SERIAL%%libexec/nut/apcsmart
-%%NUT_SERIAL%%libexec/nut/apcsmart-old
-%%NUT_SERIAL%%libexec/nut/bcmxcp
-%%NUT_USB%%libexec/nut/bcmxcp_usb
-%%NUT_SERIAL%%libexec/nut/belkin
-%%NUT_SERIAL%%libexec/nut/belkinunv
-%%NUT_SERIAL%%libexec/nut/bestfcom
-%%NUT_SERIAL%%libexec/nut/bestfortress
-%%NUT_SERIAL%%libexec/nut/bestuferrups
-%%NUT_SERIAL%%libexec/nut/bestups
-%%NUT_SERIAL%%libexec/nut/blazer_ser
-%%NUT_USB%%libexec/nut/blazer_usb
-%%NUT_SERIAL%%libexec/nut/clone
-%%NUT_SERIAL%%libexec/nut/clone-outlet
-%%NUT_SERIAL%%libexec/nut/dummy-ups
-%%NUT_SERIAL%%libexec/nut/etapro
-%%NUT_SERIAL%%libexec/nut/everups
-%%NUT_SERIAL%%libexec/nut/gamatronic
-%%NUT_SERIAL%%libexec/nut/genericups
-%%NUT_SERIAL%%libexec/nut/isbmex
-%%NUT_SERIAL%%libexec/nut/ivtscd
-%%NUT_SERIAL%%libexec/nut/liebert
-%%NUT_SERIAL%%libexec/nut/liebert-esp2
-%%NUT_SERIAL%%libexec/nut/masterguard
-%%NUT_SERIAL%%libexec/nut/metasys
-%%NUT_SERIAL%%libexec/nut/mge-utalk
-%%NUT_SERIAL%%libexec/nut/microdowell
-%%NUT_SERIAL%%libexec/nut/microsol-apc
-%%NUT_SERIAL%%libexec/nut/mge-shut
-%%NUT_NEON%%libexec/nut/netxml-ups
-%%NUT_SERIAL%%libexec/nut/oneac
-%%NUT_SERIAL%%libexec/nut/optiups
-%%NUT_IPMIPSU%%libexec/nut/nut-ipmipsu
-%%NUT_SERIAL%%libexec/nut/nutdrv_siemens-sitop
-%%NUT_SERIAL%%libexec/nut/powercom
-%%NUT_PDU%%libexec/nut/powerman-pdu
-%%NUT_SERIAL%%libexec/nut/powerpanel
-%%NUT_SERIAL%%libexec/nut/rhino
-%%NUT_USB%%libexec/nut/richcomm_usb
-%%NUT_SERIAL%%libexec/nut/safenet
-%%NUT_SERIAL%%libexec/nut/skel
-%%NUT_SNMP%%libexec/nut/snmp-ups
-%%NUT_SERIAL%%libexec/nut/solis
-%%NUT_SERIAL%%libexec/nut/tripplite
-%%NUT_USB%%libexec/nut/tripplite_usb
-%%NUT_SERIAL%%libexec/nut/tripplitesu
-%%NUT_SERIAL%%libexec/nut/upscode2
-%%NUT_USB%%libexec/nut/usbhid-ups
-%%NUT_SERIAL%%libexec/nut/victronups
+%%SERIAL%%libexec/nut/al175
+%%SERIAL%%libexec/nut/apcupsd-ups
+%%USB%%libexec/nut/nutdrv_atcl_usb
+%%USB%%libexec/nut/nutdrv_qx
+%%SERIAL%%libexec/nut/riello_ser
+%%USB%%libexec/nut/riello_usb
+%%SERIAL%%libexec/nut/apcsmart
+%%SERIAL%%libexec/nut/apcsmart-old
+%%SERIAL%%libexec/nut/bcmxcp
+%%USB%%libexec/nut/bcmxcp_usb
+%%SERIAL%%libexec/nut/belkin
+%%SERIAL%%libexec/nut/belkinunv
+%%SERIAL%%libexec/nut/bestfcom
+%%SERIAL%%libexec/nut/bestfortress
+%%SERIAL%%libexec/nut/bestuferrups
+%%SERIAL%%libexec/nut/bestups
+%%SERIAL%%libexec/nut/blazer_ser
+%%USB%%libexec/nut/blazer_usb
+%%SERIAL%%libexec/nut/clone
+%%SERIAL%%libexec/nut/clone-outlet
+%%SERIAL%%libexec/nut/dummy-ups
+%%SERIAL%%libexec/nut/etapro
+%%SERIAL%%libexec/nut/everups
+%%SERIAL%%libexec/nut/gamatronic
+%%SERIAL%%libexec/nut/genericups
+%%SERIAL%%libexec/nut/isbmex
+%%SERIAL%%libexec/nut/ivtscd
+%%SERIAL%%libexec/nut/liebert
+%%SERIAL%%libexec/nut/liebert-esp2
+%%SERIAL%%libexec/nut/masterguard
+%%SERIAL%%libexec/nut/metasys
+%%SERIAL%%libexec/nut/mge-utalk
+%%SERIAL%%libexec/nut/microdowell
+%%SERIAL%%libexec/nut/microsol-apc
+%%SERIAL%%libexec/nut/mge-shut
+%%NEON%%libexec/nut/netxml-ups
+%%SERIAL%%libexec/nut/oneac
+%%SERIAL%%libexec/nut/optiups
+%%IPMIPSU%%libexec/nut/nut-ipmipsu
+%%SERIAL%%libexec/nut/nutdrv_siemens-sitop
+%%SERIAL%%libexec/nut/powercom
+%%PDU%%libexec/nut/powerman-pdu
+%%SERIAL%%libexec/nut/powerpanel
+%%SERIAL%%libexec/nut/rhino
+%%USB%%libexec/nut/richcomm_usb
+%%SERIAL%%libexec/nut/safenet
+%%SERIAL%%libexec/nut/skel
+%%SNMP%%libexec/nut/snmp-ups
+%%SERIAL%%libexec/nut/solis
+%%SERIAL%%libexec/nut/tripplite
+%%USB%%libexec/nut/tripplite_usb
+%%SERIAL%%libexec/nut/tripplitesu
+%%SERIAL%%libexec/nut/upscode2
+%%USB%%libexec/nut/usbhid-ups
+%%SERIAL%%libexec/nut/victronups
 man/man3/libnutclient.3.gz
 man/man3/libnutclient_commands.3.gz
 man/man3/libnutclient_devices.3.gz
@@ -187,19 +187,20 @@ man/man5/upsd.conf.5.gz
 man/man5/upsd.users.5.gz
 man/man5/upsmon.conf.5.gz
 man/man5/upssched.conf.5.gz
-%%NUT_SERIAL%%man/man8/al175.8.gz
-%%NUT_SERIAL%%man/man8/apcupsd-ups.8.gz
-%%NUT_SERIAL%%man/man8/blazer_ser.8.gz
-%%NUT_USB%%man/man8/blazer_usb.8.gz
-%%NUT_NEON%%man/man8/netxml-ups.8.gz
+%%SERIAL%%man/man8/al175.8.gz
+%%SERIAL%%man/man8/apcupsd-ups.8.gz
+%%SERIAL%%man/man8/blazer_ser.8.gz
+%%USB%%man/man8/blazer_usb.8.gz
+%%NEON%%man/man8/netxml-ups.8.gz
 man/man8/nut-driver-enumerator.8.gz
 man/man8/nut-recorder.8.gz
 man/man8/nut-scanner.8.gz
-%%NUT_USB%%man/man8/nutdrv_atcl_usb.8.gz
-%%NUT_USB%%man/man8/nutdrv_qx.8.gz
+%%USB%%man/man8/nutdrv_atcl_usb.8.gz
+%%USB%%man/man8/nutdrv_qx.8.gz
+%%SERIAL%%man/man8/nutdrv_siemens_sitop.8.gz
 man/man8/nutupsdrv.8.gz
-%%NUT_SERIAL%%man/man8/riello_ser.8.gz
-%%NUT_USB%%man/man8/riello_usb.8.gz
+%%SERIAL%%man/man8/riello_ser.8.gz
+%%USB%%man/man8/riello_usb.8.gz
 man/man8/upsc.8.gz
 man/man8/upscmd.8.gz
 man/man8/upsd.8.gz
@@ -209,55 +210,55 @@ man/man8/upslog.8.gz
 man/man8/upsmon.8.gz
 man/man8/upsrw.8.gz
 man/man8/upssched.8.gz
-%%NUT_CGI%%man/man5/hosts.conf.5.gz
-%%NUT_CGI%%man/man5/upsset.conf.5.gz
-%%NUT_CGI%%man/man5/upsstats.html.5.gz
-%%NUT_CGI%%man/man8/upsset.cgi.8.gz
-%%NUT_CGI%%man/man8/upsstats.cgi.8.gz
-%%NUT_CGI%%man/man8/upsimage.cgi.8.gz
-%%NUT_SERIAL%%man/man8/apcsmart.8.gz
-%%NUT_SERIAL%%man/man8/apcsmart-old.8.gz
-%%NUT_SERIAL%%man/man8/bestfortress.8.gz
-%%NUT_SERIAL%%man/man8/bcmxcp.8.gz
-%%NUT_SERIAL%%man/man8/belkin.8.gz
-%%NUT_SERIAL%%man/man8/belkinunv.8.gz
-%%NUT_SERIAL%%man/man8/bestuferrups.8.gz
-%%NUT_SERIAL%%man/man8/bestups.8.gz
-%%NUT_SERIAL%%man/man8/bestfcom.8.gz
-%%NUT_SERIAL%%man/man8/clone.8.gz
-%%NUT_SERIAL%%man/man8/dummy-ups.8.gz
-%%NUT_SERIAL%%man/man8/etapro.8.gz
-%%NUT_SERIAL%%man/man8/everups.8.gz
-%%NUT_SERIAL%%man/man8/gamatronic.8.gz
-%%NUT_SERIAL%%man/man8/genericups.8.gz
-%%NUT_SERIAL%%man/man8/isbmex.8.gz
-%%NUT_SERIAL%%man/man8/ivtscd.8.gz
-%%NUT_SERIAL%%man/man8/liebert.8.gz
-%%NUT_SERIAL%%man/man8/liebert-esp2.8.gz
-%%NUT_SERIAL%%man/man8/masterguard.8.gz
-%%NUT_SERIAL%%man/man8/metasys.8.gz
-%%NUT_SERIAL%%man/man8/mge-shut.8.gz
-%%NUT_SERIAL%%man/man8/mge-utalk.8.gz
-%%NUT_SERIAL%%man/man8/microdowell.8.gz
-%%NUT_SERIAL%%man/man8/microsol-apc.8.gz
-%%NUT_SERIAL%%man/man8/oneac.8.gz
-%%NUT_SERIAL%%man/man8/optiups.8.gz
-%%NUT_SERIAL%%man/man8/powercom.8.gz
-%%NUT_SERIAL%%man/man8/powerpanel.8.gz
-%%NUT_SERIAL%%man/man8/rhino.8.gz
-%%NUT_SERIAL%%man/man8/safenet.8.gz
-%%NUT_SERIAL%%man/man8/solis.8.gz
-%%NUT_SERIAL%%man/man8/tripplite.8.gz
-%%NUT_SERIAL%%man/man8/tripplitesu.8.gz
-%%NUT_SERIAL%%man/man8/upscode2.8.gz
-%%NUT_SERIAL%%man/man8/victronups.8.gz
-%%NUT_USB%%man/man8/bcmxcp_usb.8.gz
-%%NUT_USB%%man/man8/richcomm_usb.8.gz
-%%NUT_USB%%man/man8/tripplite_usb.8.gz
-%%NUT_USB%%man/man8/usbhid-ups.8.gz
-%%NUT_SNMP%%man/man8/snmp-ups.8.gz
-%%NUT_IPMIPSU%%man/man8/nut-ipmipsu.8.gz
-%%NUT_PDU%%man/man8/powerman-pdu.8.gz
+%%CGI%%man/man5/hosts.conf.5.gz
+%%CGI%%man/man5/upsset.conf.5.gz
+%%CGI%%man/man5/upsstats.html.5.gz
+%%CGI%%man/man8/upsset.cgi.8.gz
+%%CGI%%man/man8/upsstats.cgi.8.gz
+%%CGI%%man/man8/upsimage.cgi.8.gz
+%%SERIAL%%man/man8/apcsmart.8.gz
+%%SERIAL%%man/man8/apcsmart-old.8.gz
+%%SERIAL%%man/man8/bestfortress.8.gz
+%%SERIAL%%man/man8/bcmxcp.8.gz
+%%SERIAL%%man/man8/belkin.8.gz
+%%SERIAL%%man/man8/belkinunv.8.gz
+%%SERIAL%%man/man8/bestuferrups.8.gz
+%%SERIAL%%man/man8/bestups.8.gz
+%%SERIAL%%man/man8/bestfcom.8.gz
+%%SERIAL%%man/man8/clone.8.gz
+%%SERIAL%%man/man8/dummy-ups.8.gz
+%%SERIAL%%man/man8/etapro.8.gz
+%%SERIAL%%man/man8/everups.8.gz
+%%SERIAL%%man/man8/gamatronic.8.gz
+%%SERIAL%%man/man8/genericups.8.gz
+%%SERIAL%%man/man8/isbmex.8.gz
+%%SERIAL%%man/man8/ivtscd.8.gz
+%%SERIAL%%man/man8/liebert.8.gz
+%%SERIAL%%man/man8/liebert-esp2.8.gz
+%%SERIAL%%man/man8/masterguard.8.gz
+%%SERIAL%%man/man8/metasys.8.gz
+%%SERIAL%%man/man8/mge-shut.8.gz
+%%SERIAL%%man/man8/mge-utalk.8.gz
+%%SERIAL%%man/man8/microdowell.8.gz
+%%SERIAL%%man/man8/microsol-apc.8.gz
+%%SERIAL%%man/man8/oneac.8.gz
+%%SERIAL%%man/man8/optiups.8.gz
+%%SERIAL%%man/man8/powercom.8.gz
+%%SERIAL%%man/man8/powerpanel.8.gz
+%%SERIAL%%man/man8/rhino.8.gz
+%%SERIAL%%man/man8/safenet.8.gz
+%%SERIAL%%man/man8/solis.8.gz
+%%SERIAL%%man/man8/tripplite.8.gz
+%%SERIAL%%man/man8/tripplitesu.8.gz
+%%SERIAL%%man/man8/upscode2.8.gz
+%%SERIAL%%man/man8/victronups.8.gz
+%%USB%%man/man8/bcmxcp_usb.8.gz
+%%USB%%man/man8/richcomm_usb.8.gz
+%%USB%%man/man8/tripplite_usb.8.gz
+%%USB%%man/man8/usbhid-ups.8.gz
+%%SNMP%%man/man8/snmp-ups.8.gz
+%%IPMIPSU%%man/man8/nut-ipmipsu.8.gz
+%%PDU%%man/man8/powerman-pdu.8.gz
 sbin/upsd
 sbin/upsdrvctl
 sbin/upsmon
diff --git a/sysutils/nut/Makefile b/sysutils/nut/Makefile
index c26af0cd8c2f..2b0bf46bfdf4 100644
--- a/sysutils/nut/Makefile
+++ b/sysutils/nut/Makefile
@@ -23,19 +23,22 @@ NUT_GROUP?=	uucp
 STATEDIR?=	/var/db/nut
 PLIST_SUB+=	NUT_USER=${NUT_USER}
 PLIST_SUB+=	NUT_GROUP=${NUT_GROUP}
+CGIDIR?=	${PREFIX}/www/cgi-bin/${PORTNAME}
+CGIDIR_REL?=	${CGIDIR:S,^${PREFIX}/,,}
+PLIST_SUB+=	CGIDIR="${CGIDIR_REL}"
+PLIST_SUB+=	CGIETCDIR="etc/nut/"
 
-OPTIONS_DEFAULT=SERIAL USB SNMP NEON IPMI_OFF SSL_OFF
-OPTIONS_DEFINE=	SERIAL USB SNMP NEON PDU CGI BASH AVAHI DOCS
+OPTIONS_DEFAULT=SERIAL USB SNMP NEON SSL_OFF
+OPTIONS_DEFINE=	SERIAL USB SNMP NEON PDU CGI BASH AVAHI IPMIPSU FREEIPMI DOCS
 OPTIONS_SINGLE=	IPMI SSL
-OPTIONS_SINGLE_IPMI=	IPMI_OFF IPMIPSU FREEIPMI
 OPTIONS_SINGLE_SSL=	SSL_OFF OPENSSL NSS
+OPTIONS_SUB=	yes
 
 SERIAL_DESC=	SERIAL support
 USB_DESC=	USB support
 NEON_DESC=	NEON XML/HTTP support
 PDU_DESC=	Powerman PDU support
 CGI_DESC=	Web CGI interface
-IPMI_OFF_DESC=	No IPMI support
 FREEIPMI_DESC=	freeipmi support
 IPMIPSU_DESC=	Use nut-ipmipsu support (experimental)
 SSL_OFF_DESC=	No SSL support
@@ -46,8 +49,6 @@ PLIST_SUB+=	STATEDIR=${STATEDIR}
 
 PORTDOCS=	*
 
-.include <bsd.port.options.mk>
-
 TMPDIR?=	/tmp
 INSTALL_TARGET=	install-strip
 CONFIGURE_ARGS=	--sysconfdir=${PREFIX}/etc/nut \
@@ -69,111 +70,47 @@ LIB_DEPENDS+=	libltdl.so:devel/libltdl
 
 BUILD_DEPENDS=	asciidoc:textproc/asciidoc
 
-.if ${PORT_OPTIONS:MCGI}
-LIB_DEPENDS+=	libgd.so:graphics/gd
-CGIDIR?=	${PREFIX}/www/cgi-bin/${PORTNAME}
-CGIDIR_REL?=	${CGIDIR:S,^${PREFIX}/,,}
-CONFIGURE_ARGS+=	--with-cgi --with-cgipath=${CGIDIR} \
+CGI_LIB_DEPENDS=	libgd.so:graphics/gd
+CGI_CONFIGURE_WITH=	cgi
+CGI_CONFIGURE_ON=	--with-cgipath=${CGIDIR} \
 			--with-htmlpath=${WWWDIR} \
 			--with-gd-includes=-I${LOCALBASE}/include \
 			--with-gd-libs="-L${LOCALBASE}/lib -lgd"
-PLIST_SUB+=	NUT_CGI=""
-PLIST_SUB+=	CGIDIR="${CGIDIR_REL}"
-PLIST_SUB+=	CGIETCDIR="etc/nut/"
-.else
-CONFIGURE_ARGS+=	--without-cgi
-PLIST_SUB+=	NUT_CGI="@comment "
-.endif
 
-.if ${PORT_OPTIONS:MSERIAL}
-CONFIGURE_ARGS+=	--with-serial
-PLIST_SUB+=	NUT_SERIAL=""
-.else
-CONFIGURE_ARGS+=	--without-serial
-PLIST_SUB+=	NUT_SERIAL="@comment "
-.endif
+SERIAL_CONFIGURE_WITH=	serial
 
-.if ${PORT_OPTIONS:MUSB}
-#EXTRA_PATCHES=	${FILESDIR}/extra-patch-m4_nut_check_libusb.m4
-CONFIGURE_ARGS+=	--with-usb=auto
-PLIST_SUB+=	NUT_USB=""
-.else
-CONFIGURE_ARGS+=	--without-usb
-PLIST_SUB+=	NUT_USB="@comment "
-.endif
+USB_CONFIGURE_WITH=	usb=auto
 
-.if ${PORT_OPTIONS:MSNMP}
-LIB_DEPENDS+=	libnetsnmp.so:net-mgmt/net-snmp
-CONFIGURE_ARGS+=	--with-snmp
-PLIST_SUB+=	NUT_SNMP=""
-.else
-CONFIGURE_ARGS+=	--without-snmp
-PLIST_SUB+=	NUT_SNMP="@comment "
-.endif
+SNMP_LIB_DEPENDS=	libnetsnmp.so:net-mgmt/net-snmp
+SNMP_CONFIGURE_WITH=	snmp
 
-.if ${PORT_OPTIONS:MNEON}
-LIB_DEPENDS+=	libneon.so:www/neon
-CONFIGURE_ARGS+=	--with-neon
-PLIST_SUB+=	NUT_NEON=""
-.else
-CONFIGURE_ARGS+=	--without-neon
-CONFIGURE_ARGS+=	--disable-neon
-PLIST_SUB+=	NUT_NEON="@comment "
-.endif
+NEON_LIB_DEPENDS+=	libneon.so:www/neon
+NEON_CONFIGURE_WITH=	neon
 
-.if ${PORT_OPTIONS:MPDU}
-LIB_DEPENDS+=	libpowerman.so:sysutils/powerman
-CONFIGURE_ARGS+=	--with-powerman
-PLIST_SUB+=	NUT_PDU=""
-.else
-CONFIGURE_ARGS+=	--without-powerman
-PLIST_SUB+=	NUT_PDU="@comment "
-.endif
+PDU_LIB_DEPENDS+=	libpowerman.so:sysutils/powerman
+PDU_CONFIGURE_WITH=	powerman
 
-.if ${PORT_OPTIONS:MBASH}
-BUILD_DEPENDS+=	${LOCALBASE}/share/bash-completion/bash_completion.sh:shells/bash-completion
-RUN_DEPENDS+=	${LOCALBASE}/share/bash-completion/bash_completion.sh:shells/bash-completion
-PLIST_SUB+=	BASH=""
-.else
-PLIST_SUB+=	BASH="@comment "
-.endif
+BASH_BUILD_DEPENDS=	${LOCALBASE}/share/bash-completion/bash_completion.sh:shells/bash-completion
+BASH_RUN_DEPENDS=	${LOCALBASE}/share/bash-completion/bash_completion.sh:shells/bash-completion
 
-.if ${PORT_OPTIONS:MAVAHI}
-BUILD_DEPENDS+=	${LOCALBASE}/include/avahi-ui/avahi-ui.h:net/avahi-header
-BUILD_DEPENDS+=	avahi-daemon:net/avahi-app
-RUN_DEPENDS+=	avahi-daemon:net/avahi-app
-CONFIGURE_ARGS+=	--with-avahi
-.else
-CONFIGURE_ARGS+=	--without-avahi
-.endif
+AVAHI_BUILD_DEPENDS=	${LOCALBASE}/include/avahi-ui/avahi-ui.h:net/avahi-header
+AVAHI_BUILD_DEPENDS=	avahi-daemon:net/avahi-app
+AVAHI_RUN_DEPENDS=	avahi-daemon:net/avahi-app
+AVAHI_CONFIGURE_WITH=	avahi
 
-.if ${PORT_OPTIONS:MFREEIPMI}
-LIB_DEPENDS+=	libfreeipmi.so:sysutils/freeipmi
-CONFIGURE_ARGS+=	--with-freeipmi
-PLIST_SUB+=	NUT_FREEIPMI=""
-.else
-CONFIGURE_ARGS+=	--without-freeipmi
-PLIST_SUB+=	NUT_FREEIPMI="@comment "
-.endif
+FREEIPMI_LIB_DEPENDS=	libfreeipmi.so:sysutils/freeipmi
+FREEIPMI_CONFIGURE_WITH=freeipmi
 
-.if ${PORT_OPTIONS:MIPMIPSU}
-LIB_DEPENDS+=	libfreeipmi.so:sysutils/freeipmi
-CONFIGURE_ARGS+=	--with-ipmi
-PLIST_SUB+=	NUT_IPMIPSU=""
-.else
-CONFIGURE_ARGS+=	--without-ipmi
-PLIST_SUB+=	NUT_IPMIPSU="@comment "
-.endif
+IPMIPSU_LIB_DEPENDS=	libfreeipmi.so:sysutils/freeipmi
+IPMIPSU_CONFIGURE_WITH=	ipmi
 
-.if ${PORT_OPTIONS:MOPENSSL}
-USES+=	ssl
-CONFIGURE_ARGS+=	--with-openssl
-.elif ${PORT_OPTIONS:MNSS}
-LIB_DEPENDS=		libnss3.so:security/nss
-CONFIGURE_ARGS+=	--with-nss
-.else
-CONFIGURE_ARGS+=	--without-openssl --without-ssl
-.endif
+OPENSSL_USES=		ssl
+OPENSSL_CONFIGURE_WITH=	openssl
+
+NSS_LIB_DEPENDS=	libnss3.so:security/nss
+NSS_CONFIGURE_WITH=	nss
+
+.include <bsd.port.pre.mk>
 
 post-patch:
 	@${FIND} ${WRKSRC} -type f | ${XARGS} ${REINPLACE_CMD} -i '' -e 's|/usr/bin/env python|${PYTHON_CMD}|'
@@ -204,4 +141,4 @@ post-install:
 	@${RM} ${STAGEDIR}${PREFIX}/etc/nut/solaris-init/nut
 	@${RMDIR} ${STAGEDIR}${PREFIX}/etc/nut/solaris-init
 
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git a/sysutils/nut/pkg-plist b/sysutils/nut/pkg-plist
index 717336e84b40..b1dac90a6916 100644
--- a/sysutils/nut/pkg-plist
+++ b/sysutils/nut/pkg-plist
@@ -1,14 +1,14 @@
-%%NUT_CGI%%%%CGIDIR%%/upsimage.cgi
-%%NUT_CGI%%%%CGIDIR%%/upsset.cgi
-%%NUT_CGI%%%%CGIDIR%%/upsstats.cgi
-%%NUT_CGI%%@sample %%CGIETCDIR%%hosts.conf.sample
-%%NUT_CGI%%@sample %%CGIETCDIR%%upsset.conf.sample
-%%NUT_CGI%%@sample %%CGIETCDIR%%upsstats.html.sample
-%%NUT_CGI%%@sample %%CGIETCDIR%%upsstats-single.html.sample
-%%NUT_CGI%%%%WWWDIR%%/bottom.html
-%%NUT_CGI%%%%WWWDIR%%/header.html
-%%NUT_CGI%%%%WWWDIR%%/index.html
-%%NUT_CGI%%%%WWWDIR%%/nut-banner.png
+%%CGI%%%%CGIDIR%%/upsimage.cgi
+%%CGI%%%%CGIDIR%%/upsset.cgi
+%%CGI%%%%CGIDIR%%/upsstats.cgi
+%%CGI%%@sample %%CGIETCDIR%%hosts.conf.sample
+%%CGI%%@sample %%CGIETCDIR%%upsset.conf.sample
+%%CGI%%@sample %%CGIETCDIR%%upsstats.html.sample
+%%CGI%%@sample %%CGIETCDIR%%upsstats-single.html.sample
+%%CGI%%%%WWWDIR%%/bottom.html
+%%CGI%%%%WWWDIR%%/header.html
+%%CGI%%%%WWWDIR%%/index.html
+%%CGI%%%%WWWDIR%%/nut-banner.png
 %%ETCDIR%%/cmdvartab
 %%ETCDIR%%/driver.list
 @sample %%ETCDIR%%/nut.conf.sample
@@ -19,7 +19,7 @@
 @sample %%ETCDIR%%/upssched.conf.sample
 @sample %%EXAMPLESDIR%%/newsyslog.sample etc/newsyslog.conf.d/nut.conf
 @sample %%EXAMPLESDIR%%/syslog.sample etc/syslog.d/nut
-%%NUT_USB%%etc/devd/nut-usb.conf
+%%USB%%etc/devd/nut-usb.conf
 bin/nut-scanner
 bin/upsc
 bin/upscmd
@@ -56,61 +56,61 @@ libdata/pkgconfig/libnutclient.pc
 libdata/pkgconfig/libnutscan.pc
 libdata/pkgconfig/libupsclient.pc
 libdata/pkgconfig/libnutclientstub.pc
-%%NUT_SERIAL%%libexec/nut/al175
-%%NUT_SERIAL%%libexec/nut/apcupsd-ups
-%%NUT_USB%%libexec/nut/nutdrv_atcl_usb
-%%NUT_USB%%libexec/nut/nutdrv_qx
-%%NUT_SERIAL%%libexec/nut/riello_ser
-%%NUT_USB%%libexec/nut/riello_usb
-%%NUT_SERIAL%%libexec/nut/apcsmart
-%%NUT_SERIAL%%libexec/nut/apcsmart-old
-%%NUT_SERIAL%%libexec/nut/bcmxcp
-%%NUT_USB%%libexec/nut/bcmxcp_usb
-%%NUT_SERIAL%%libexec/nut/belkin
-%%NUT_SERIAL%%libexec/nut/belkinunv
-%%NUT_SERIAL%%libexec/nut/bestfcom
-%%NUT_SERIAL%%libexec/nut/bestfortress
-%%NUT_SERIAL%%libexec/nut/bestuferrups
-%%NUT_SERIAL%%libexec/nut/bestups
-%%NUT_SERIAL%%libexec/nut/blazer_ser
-%%NUT_USB%%libexec/nut/blazer_usb
-%%NUT_SERIAL%%libexec/nut/clone
-%%NUT_SERIAL%%libexec/nut/clone-outlet
-%%NUT_SERIAL%%libexec/nut/dummy-ups
-%%NUT_SERIAL%%libexec/nut/etapro
-%%NUT_SERIAL%%libexec/nut/everups
-%%NUT_SERIAL%%libexec/nut/gamatronic
-%%NUT_SERIAL%%libexec/nut/genericups
-%%NUT_SERIAL%%libexec/nut/isbmex
-%%NUT_SERIAL%%libexec/nut/ivtscd
-%%NUT_SERIAL%%libexec/nut/liebert
-%%NUT_SERIAL%%libexec/nut/liebert-esp2
-%%NUT_SERIAL%%libexec/nut/masterguard
-%%NUT_SERIAL%%libexec/nut/metasys
-%%NUT_SERIAL%%libexec/nut/mge-utalk
-%%NUT_SERIAL%%libexec/nut/microdowell
-%%NUT_SERIAL%%libexec/nut/microsol-apc
-%%NUT_SERIAL%%libexec/nut/mge-shut
-%%NUT_NEON%%libexec/nut/netxml-ups
-%%NUT_SERIAL%%libexec/nut/oneac
-%%NUT_SERIAL%%libexec/nut/optiups
-%%NUT_IPMIPSU%%libexec/nut/nut-ipmipsu
-%%NUT_SERIAL%%libexec/nut/nutdrv_siemens-sitop
-%%NUT_SERIAL%%libexec/nut/powercom
-%%NUT_PDU%%libexec/nut/powerman-pdu
-%%NUT_SERIAL%%libexec/nut/powerpanel
-%%NUT_SERIAL%%libexec/nut/rhino
-%%NUT_USB%%libexec/nut/richcomm_usb
-%%NUT_SERIAL%%libexec/nut/safenet
-%%NUT_SERIAL%%libexec/nut/skel
-%%NUT_SNMP%%libexec/nut/snmp-ups
-%%NUT_SERIAL%%libexec/nut/solis
-%%NUT_SERIAL%%libexec/nut/tripplite
-%%NUT_USB%%libexec/nut/tripplite_usb
-%%NUT_SERIAL%%libexec/nut/tripplitesu
-%%NUT_SERIAL%%libexec/nut/upscode2
-%%NUT_USB%%libexec/nut/usbhid-ups
-%%NUT_SERIAL%%libexec/nut/victronups
+%%SERIAL%%libexec/nut/al175
+%%SERIAL%%libexec/nut/apcupsd-ups
+%%USB%%libexec/nut/nutdrv_atcl_usb
+%%USB%%libexec/nut/nutdrv_qx
+%%SERIAL%%libexec/nut/riello_ser
+%%USB%%libexec/nut/riello_usb
+%%SERIAL%%libexec/nut/apcsmart
+%%SERIAL%%libexec/nut/apcsmart-old
+%%SERIAL%%libexec/nut/bcmxcp
+%%USB%%libexec/nut/bcmxcp_usb
+%%SERIAL%%libexec/nut/belkin
+%%SERIAL%%libexec/nut/belkinunv
+%%SERIAL%%libexec/nut/bestfcom
+%%SERIAL%%libexec/nut/bestfortress
+%%SERIAL%%libexec/nut/bestuferrups
+%%SERIAL%%libexec/nut/bestups
+%%SERIAL%%libexec/nut/blazer_ser
+%%USB%%libexec/nut/blazer_usb
+%%SERIAL%%libexec/nut/clone
+%%SERIAL%%libexec/nut/clone-outlet
+%%SERIAL%%libexec/nut/dummy-ups
+%%SERIAL%%libexec/nut/etapro
+%%SERIAL%%libexec/nut/everups
+%%SERIAL%%libexec/nut/gamatronic
+%%SERIAL%%libexec/nut/genericups
+%%SERIAL%%libexec/nut/isbmex
+%%SERIAL%%libexec/nut/ivtscd
+%%SERIAL%%libexec/nut/liebert
+%%SERIAL%%libexec/nut/liebert-esp2
+%%SERIAL%%libexec/nut/masterguard
+%%SERIAL%%libexec/nut/metasys
+%%SERIAL%%libexec/nut/mge-utalk
+%%SERIAL%%libexec/nut/microdowell
+%%SERIAL%%libexec/nut/microsol-apc
+%%SERIAL%%libexec/nut/mge-shut
+%%NEON%%libexec/nut/netxml-ups
+%%SERIAL%%libexec/nut/oneac
+%%SERIAL%%libexec/nut/optiups
+%%IPMIPSU%%libexec/nut/nut-ipmipsu
+%%SERIAL%%libexec/nut/nutdrv_siemens-sitop
+%%SERIAL%%libexec/nut/powercom
+%%PDU%%libexec/nut/powerman-pdu
+%%SERIAL%%libexec/nut/powerpanel
+%%SERIAL%%libexec/nut/rhino
+%%USB%%libexec/nut/richcomm_usb
+%%SERIAL%%libexec/nut/safenet
+%%SERIAL%%libexec/nut/skel
+%%SNMP%%libexec/nut/snmp-ups
+%%SERIAL%%libexec/nut/solis
+%%SERIAL%%libexec/nut/tripplite
+%%USB%%libexec/nut/tripplite_usb
+%%SERIAL%%libexec/nut/tripplitesu
+%%SERIAL%%libexec/nut/upscode2
+%%USB%%libexec/nut/usbhid-ups
+%%SERIAL%%libexec/nut/victronups
 man/man3/libnutclient.3.gz
 man/man3/libnutclient_commands.3.gz
 man/man3/libnutclient_devices.3.gz
@@ -187,20 +187,20 @@ man/man5/upsd.conf.5.gz
 man/man5/upsd.users.5.gz
 man/man5/upsmon.conf.5.gz
 man/man5/upssched.conf.5.gz
-%%NUT_SERIAL%%man/man8/al175.8.gz
-%%NUT_SERIAL%%man/man8/apcupsd-ups.8.gz
-%%NUT_SERIAL%%man/man8/blazer_ser.8.gz
-%%NUT_USB%%man/man8/blazer_usb.8.gz
-%%NUT_NEON%%man/man8/netxml-ups.8.gz
+%%SERIAL%%man/man8/al175.8.gz
+%%SERIAL%%man/man8/apcupsd-ups.8.gz
+%%SERIAL%%man/man8/blazer_ser.8.gz
+%%USB%%man/man8/blazer_usb.8.gz
+%%NEON%%man/man8/netxml-ups.8.gz
 man/man8/nut-driver-enumerator.8.gz
 man/man8/nut-recorder.8.gz
 man/man8/nut-scanner.8.gz
-%%NUT_USB%%man/man8/nutdrv_atcl_usb.8.gz
-%%NUT_USB%%man/man8/nutdrv_qx.8.gz
-%%NUT_SERIAL%%man/man8/nutdrv_siemens_sitop.8.gz
+%%USB%%man/man8/nutdrv_atcl_usb.8.gz
+%%USB%%man/man8/nutdrv_qx.8.gz
+%%SERIAL%%man/man8/nutdrv_siemens_sitop.8.gz
 man/man8/nutupsdrv.8.gz
-%%NUT_SERIAL%%man/man8/riello_ser.8.gz
-%%NUT_USB%%man/man8/riello_usb.8.gz
+%%SERIAL%%man/man8/riello_ser.8.gz
+%%USB%%man/man8/riello_usb.8.gz
 man/man8/upsc.8.gz
 man/man8/upscmd.8.gz
 man/man8/upsd.8.gz
@@ -210,55 +210,55 @@ man/man8/upslog.8.gz
 man/man8/upsmon.8.gz
 man/man8/upsrw.8.gz
 man/man8/upssched.8.gz
-%%NUT_CGI%%man/man5/hosts.conf.5.gz
-%%NUT_CGI%%man/man5/upsset.conf.5.gz
-%%NUT_CGI%%man/man5/upsstats.html.5.gz
-%%NUT_CGI%%man/man8/upsset.cgi.8.gz
-%%NUT_CGI%%man/man8/upsstats.cgi.8.gz
-%%NUT_CGI%%man/man8/upsimage.cgi.8.gz
-%%NUT_SERIAL%%man/man8/apcsmart.8.gz
-%%NUT_SERIAL%%man/man8/apcsmart-old.8.gz
-%%NUT_SERIAL%%man/man8/bestfortress.8.gz
-%%NUT_SERIAL%%man/man8/bcmxcp.8.gz
-%%NUT_SERIAL%%man/man8/belkin.8.gz
-%%NUT_SERIAL%%man/man8/belkinunv.8.gz
-%%NUT_SERIAL%%man/man8/bestuferrups.8.gz
-%%NUT_SERIAL%%man/man8/bestups.8.gz
-%%NUT_SERIAL%%man/man8/bestfcom.8.gz
-%%NUT_SERIAL%%man/man8/clone.8.gz
-%%NUT_SERIAL%%man/man8/dummy-ups.8.gz
-%%NUT_SERIAL%%man/man8/etapro.8.gz
-%%NUT_SERIAL%%man/man8/everups.8.gz
-%%NUT_SERIAL%%man/man8/gamatronic.8.gz
-%%NUT_SERIAL%%man/man8/genericups.8.gz
-%%NUT_SERIAL%%man/man8/isbmex.8.gz
-%%NUT_SERIAL%%man/man8/ivtscd.8.gz
-%%NUT_SERIAL%%man/man8/liebert.8.gz
-%%NUT_SERIAL%%man/man8/liebert-esp2.8.gz
-%%NUT_SERIAL%%man/man8/masterguard.8.gz
-%%NUT_SERIAL%%man/man8/metasys.8.gz
-%%NUT_SERIAL%%man/man8/mge-shut.8.gz
-%%NUT_SERIAL%%man/man8/mge-utalk.8.gz
-%%NUT_SERIAL%%man/man8/microdowell.8.gz
-%%NUT_SERIAL%%man/man8/microsol-apc.8.gz
-%%NUT_SERIAL%%man/man8/oneac.8.gz
-%%NUT_SERIAL%%man/man8/optiups.8.gz
-%%NUT_SERIAL%%man/man8/powercom.8.gz
-%%NUT_SERIAL%%man/man8/powerpanel.8.gz
-%%NUT_SERIAL%%man/man8/rhino.8.gz
-%%NUT_SERIAL%%man/man8/safenet.8.gz
-%%NUT_SERIAL%%man/man8/solis.8.gz
-%%NUT_SERIAL%%man/man8/tripplite.8.gz
-%%NUT_SERIAL%%man/man8/tripplitesu.8.gz
-%%NUT_SERIAL%%man/man8/upscode2.8.gz
-%%NUT_SERIAL%%man/man8/victronups.8.gz
-%%NUT_USB%%man/man8/bcmxcp_usb.8.gz
-%%NUT_USB%%man/man8/richcomm_usb.8.gz
-%%NUT_USB%%man/man8/tripplite_usb.8.gz
-%%NUT_USB%%man/man8/usbhid-ups.8.gz
-%%NUT_SNMP%%man/man8/snmp-ups.8.gz
-%%NUT_IPMIPSU%%man/man8/nut-ipmipsu.8.gz
-%%NUT_PDU%%man/man8/powerman-pdu.8.gz
+%%CGI%%man/man5/hosts.conf.5.gz
+%%CGI%%man/man5/upsset.conf.5.gz
+%%CGI%%man/man5/upsstats.html.5.gz
+%%CGI%%man/man8/upsset.cgi.8.gz
+%%CGI%%man/man8/upsstats.cgi.8.gz
+%%CGI%%man/man8/upsimage.cgi.8.gz
+%%SERIAL%%man/man8/apcsmart.8.gz
+%%SERIAL%%man/man8/apcsmart-old.8.gz
+%%SERIAL%%man/man8/bestfortress.8.gz
+%%SERIAL%%man/man8/bcmxcp.8.gz
+%%SERIAL%%man/man8/belkin.8.gz
+%%SERIAL%%man/man8/belkinunv.8.gz
+%%SERIAL%%man/man8/bestuferrups.8.gz
+%%SERIAL%%man/man8/bestups.8.gz
+%%SERIAL%%man/man8/bestfcom.8.gz
+%%SERIAL%%man/man8/clone.8.gz
+%%SERIAL%%man/man8/dummy-ups.8.gz
+%%SERIAL%%man/man8/etapro.8.gz
+%%SERIAL%%man/man8/everups.8.gz
+%%SERIAL%%man/man8/gamatronic.8.gz
+%%SERIAL%%man/man8/genericups.8.gz
+%%SERIAL%%man/man8/isbmex.8.gz
+%%SERIAL%%man/man8/ivtscd.8.gz
+%%SERIAL%%man/man8/liebert.8.gz
+%%SERIAL%%man/man8/liebert-esp2.8.gz
+%%SERIAL%%man/man8/masterguard.8.gz
+%%SERIAL%%man/man8/metasys.8.gz
+%%SERIAL%%man/man8/mge-shut.8.gz
+%%SERIAL%%man/man8/mge-utalk.8.gz
+%%SERIAL%%man/man8/microdowell.8.gz
+%%SERIAL%%man/man8/microsol-apc.8.gz
+%%SERIAL%%man/man8/oneac.8.gz
+%%SERIAL%%man/man8/optiups.8.gz
+%%SERIAL%%man/man8/powercom.8.gz
+%%SERIAL%%man/man8/powerpanel.8.gz
+%%SERIAL%%man/man8/rhino.8.gz
+%%SERIAL%%man/man8/safenet.8.gz
+%%SERIAL%%man/man8/solis.8.gz
+%%SERIAL%%man/man8/tripplite.8.gz
+%%SERIAL%%man/man8/tripplitesu.8.gz
+%%SERIAL%%man/man8/upscode2.8.gz
+%%SERIAL%%man/man8/victronups.8.gz
+%%USB%%man/man8/bcmxcp_usb.8.gz
+%%USB%%man/man8/richcomm_usb.8.gz
+%%USB%%man/man8/tripplite_usb.8.gz
+%%USB%%man/man8/usbhid-ups.8.gz
+%%SNMP%%man/man8/snmp-ups.8.gz
+%%IPMIPSU%%man/man8/nut-ipmipsu.8.gz
+%%PDU%%man/man8/powerman-pdu.8.gz
 sbin/upsd
 sbin/upsdrvctl
 sbin/upsmon