ports/176334: Fix port: sysutils/boxbackup rc script and OPTIONSng
Chris Rees
crees at FreeBSD.org
Thu Feb 21 20:10:01 UTC 2013
>Number: 176334
>Category: ports
>Synopsis: Fix port: sysutils/boxbackup rc script and OPTIONSng
>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: Thu Feb 21 20:10:01 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator: Chris Rees
>Release: FreeBSD 9.1-RELEASE amd64
>Organization:
>Environment:
System: FreeBSD pegasus.bayofrum.net 9.1-RELEASE FreeBSD 9.1-RELEASE #1 r246341: Tue Feb 5 21:09:44 GMT 2013 root at pegasus.bayofrum.net:/usr/obj/usr/src/sys/PEGASUS amd64
>Description:
- Update to OPTIONSng
- Use standard framework for pkg-message substitution
I see that you register CONFLICTS on client and server ports, but are you aware that it's impossible to install two different ports from the same origin (ports directory)?
I might suggest that you create slave ports instead, perhaps boxbackup-client and boxbackup-server for this use, and that way both can be installed separately (a la database ports, for example). Would you be interested in code for this?
>How-To-Repeat:
>Fix:
--- boxbackup-fixes.diff begins here ---
Index: Makefile
===================================================================
--- Makefile (revision 312734)
+++ Makefile (working copy)
@@ -26,27 +26,29 @@
CONFIGURE_ARGS+=--sysconfdir=${PREFIX}/etc
-PKGMESSAGE= ${WRKDIR}/pkg-message
+SUB_FILES= pkg-message
-OPTIONS= CLIENT "Install the bbackupd client" On \
- SERVER "Install the bbstored server" On \
- GNUREADLINE "Enable the use of GNU readline" Off
+OPTIONS_DEFINE= READLINE
-.include <bsd.port.pre.mk>
+OPTIONS_MULTI= FLAVOUR
+OPTIONS_MULTI_FLAVOUR= CLIENT SERVER
-.if defined(WITH_GNUREADLINE)
+CLIENT_DESC= Install the bbackupd client
+SERVER_DESC= Install the bbstored server
+
+OPTIONS_DEFAULT=CLIENT SERVER
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MREADLINE}
CONFIGURE_ARGS+=--enable-gnu-readline
.endif
-.if defined(WITHOUT_CLIENT) && defined(WITHOUT_SERVER)
-IGNORE= requires at least CLIENT or SERVER to be defined.\
- Please 'make config' again
-.endif
-
MANCOMPRESSED= yes
-.if defined(WITH_CLIENT)
+.if ${PORT_OPTIONS:MCLIENT}
USE_RC_SUBR+= bbackupd
PLIST_SUB+= CLIENT=""
+SUB_LIST+= CLIENT=""
ALL_TARGET+= build-backup-client
INSTALL_TARGET+=install-backup-client
MAN5+= bbackupd.conf.5
@@ -54,26 +56,29 @@
SUB_FILES+= 999.boxbackup
.else
PLIST_SUB+= CLIENT="@comment "
+SUB_LIST+= CLIENT="@comment "
.endif
-.if defined(WITH_SERVER)
+.if ${PORT_OPTIONS:MSERVER}
USE_RC_SUBR+= bbstored
USERS+= _bbstored
GROUPS+= _bbstored
PLIST_SUB+= SERVER=""
+SUB_LIST+= SERVER=""
ALL_TARGET+= build-backup-server
INSTALL_TARGET+=install-backup-server
MAN5+= bbstored.conf.5 raidfile.conf.5
MAN8+= bbstored.8 bbstoreaccounts.8 bbstored-certs.8 bbstored-config.8 raidfile-config.8
.else
PLIST_SUB+= SERVER="@comment "
+SUB_LIST+= SERVER="@comment "
.endif
-.if defined(WITHOUT_CLIENT)
+.if ! ${PORT_OPTIONS:MCLIENT}
# if this is a server-only install, CONFLICT with an install of the CLIENT or both
CONFLICTS= boxbackup-client-[0-9]* boxbackup-[0-9]*
CLIENT_OR_SERVER=-server
-.elif defined(WITHOUT_SERVER)
+.elif ! ${PORT_OPTIONS:MSERVER}
# if this is a client-only install, CONFLICT with an install of the SERVER or both
CONFLICTS= boxbackup-server-[0-9]* boxbackup-[0-9]*
CLIENT_OR_SERVER=-client
@@ -85,24 +90,18 @@
post-patch:
@${REINPLACE_CMD} -e '/html/d' ${WRKSRC}/parcels.txt
-.if !defined(WITHOUT_CLIENT)
- @${CAT} ${FILESDIR}/pkg-message.client >> ${PKGMESSAGE}
-.endif
-.if !defined(WITHOUT_SERVER)
- @${SED} -e 's,%%PREFIX%%,${PREFIX},g' \
- ${FILESDIR}/pkg-message.server.in >> ${PKGMESSAGE}
-.endif
post-configure:
- @${REINPLACE_CMD} -e '/share.doc.boxbackup/d' ${WRKSRC}/parcels/scripts/install-backup-*
+ @${REINPLACE_CMD} -e '/share.doc.boxbackup/d' \
+ ${WRKSRC}/parcels/scripts/install-backup-*
post-install:
-.if !defined(WITHOUT_CLIENT)
+.if ${PORT_OPTIONS:MCLIENT}
@${MKDIR} -m 0700 ${PREFIX}/etc/boxbackup/bbackupd
@${MKDIR} ${PREFIX}/etc/periodic/monthly
${INSTALL_SCRIPT} ${WRKDIR}/999.boxbackup ${PREFIX}/etc/periodic/monthly
.endif
-.if !defined(WITHOUT_SERVER)
+.if ${PORT_OPTIONS:MSERVER}
@${MKDIR} -m 0700 ${PREFIX}/etc/boxbackup/bbstored
.endif
@${CAT} ${PKGMESSAGE}
@@ -111,4 +110,4 @@
@${ECHO_CMD} "===> Running tests"
@${MAKE} -C ${WRKSRC} test
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
Index: files/bbstored.in
===================================================================
--- files/bbstored.in (revision 312734)
+++ files/bbstored.in (working copy)
@@ -18,7 +18,7 @@
load_rc_config $name
: ${bbstored_enable:="NO"}
-: ${bbstored_flags:="%%PREFIX%%/etc/boxbackup/bbstored.conf"}
+: ${bbstored_flags:="%%ETCDIR%%/bbstored.conf"}
pidfile=${bbstored_pidfile:-"/var/run/bbstored.pid"}
Index: files/pkg-message.client
===================================================================
--- files/pkg-message.client (revision 312734)
+++ files/pkg-message.client (working copy)
@@ -1,4 +0,0 @@
-
-To run bbackupd at startup, add bbackupd_enable="YES" to /etc/rc.conf
-Please see http://www.boxbackup.org/client.html for client configuration
-options
Index: files/pkg-message.in
===================================================================
--- files/pkg-message.in (working copy)
+++ files/pkg-message.in (working copy)
@@ -1,8 +1,13 @@
+%%SERVER%%
+%%SERVER%%To run bbstored at startup, add bbstored_enable="YES" to /etc/rc.conf
+%%SERVER%%Please see http://www.boxbackup.org/server.html for server
+%%SERVER%%configuration options
+%%SERVER%%
+%%SERVER%%The default location of configuration files changed from
+%%SERVER%%%%PREFIX%%/etc/box to %%ETCDIR%%, if you are upgrading then run
+%%SERVER%% mv %%PREFIX%%/etc/box %%ETCDIR%%
+%%CLIENT%%
+%%CLIENT%%To run bbackupd at startup, add bbackupd_enable="YES" to /etc/rc.conf
+%%CLIENT%%Please see http://www.boxbackup.org/client.html for client
+%%CLIENT%%configuration options
-To run bbstored at startup, add bbstored_enable="YES" to /etc/rc.conf
-Please see http://www.boxbackup.org/server.html for server configuration
-options
-
-The default location of configuration files changed from %%PREFIX%%/etc/box to
-%%PREFIX%%/etc/boxbackup, if you are upgrading then run
- mv %%PREFIX%%/etc/box %%PREFIX%%/etc/boxbackup
Index: files/pkg-message.server.in
===================================================================
--- files/pkg-message.server.in (revision 312734)
+++ files/pkg-message.server.in (working copy)
@@ -1,8 +0,0 @@
-
-To run bbstored at startup, add bbstored_enable="YES" to /etc/rc.conf
-Please see http://www.boxbackup.org/server.html for server configuration
-options
-
-The default location of configuration files changed from %%PREFIX%%/etc/box to
-%%PREFIX%%/etc/boxbackup, if you are upgrading then run
- mv %%PREFIX%%/etc/box %%PREFIX%%/etc/boxbackup
--- boxbackup-fixes.diff ends here ---
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list