diff options
author | bms <bms@FreeBSD.org> | 2003-11-05 23:19:55 +0800 |
---|---|---|
committer | bms <bms@FreeBSD.org> | 2003-11-05 23:19:55 +0800 |
commit | 6fcf6da8e60bdeb014ad7bc82a928fc4885431ee (patch) | |
tree | 87cf114d57184ae5f60adc60243edf4bb2c103c6 | |
parent | c2de12e9d4158989d374205c2523a9668210f1fa (diff) | |
download | freebsd-ports-gnome-6fcf6da8e60bdeb014ad7bc82a928fc4885431ee.tar.gz freebsd-ports-gnome-6fcf6da8e60bdeb014ad7bc82a928fc4885431ee.tar.zst freebsd-ports-gnome-6fcf6da8e60bdeb014ad7bc82a928fc4885431ee.zip |
Update Quagga to 0.96.4.
- Refresh net-snmp configure.ac fix target.
- Add ${SYSCONF_DIR} and ${LOCALSTATE_DIR} configuration variables,
and defaults, so that the vty and zserv.api UNIX domain sockets are
created in a directory for which the ${ENABLE_USER} has access. This
was the cause of much pain previously, causing daemons to fail in
mysterious circumstances.
- Update zebractl.sh script accordingly.
- Add USE_SUBMAKE to ensure that the variables set by the interactive
configure dialog are referenced.
Submitted by: Boris Kovalenko
-rw-r--r-- | net/quagga/Makefile | 43 | ||||
-rw-r--r-- | net/quagga/distinfo | 2 | ||||
-rw-r--r-- | net/quagga/files/zebractl.sh | 28 | ||||
-rw-r--r-- | net/quagga/pkg-install | 66 | ||||
-rw-r--r-- | net/quagga/scripts/configure.quagga (renamed from net/quagga/scripts/configure) | 2 |
5 files changed, 114 insertions, 27 deletions
diff --git a/net/quagga/Makefile b/net/quagga/Makefile index 8126780a1ccc..2c8dba95a805 100644 --- a/net/quagga/Makefile +++ b/net/quagga/Makefile @@ -6,8 +6,7 @@ # PORTNAME= quagga -PORTVERSION= 0.96.2 -PORTREVISION= 1 +PORTVERSION= 0.96.4 CATEGORIES= net ipv6 MASTER_SITES= http://quagga.net/download/ @@ -18,30 +17,49 @@ CONFLICTS= zebra-devel-* zebra-0* GNU_CONFIGURE= yes USE_GMAKE= yes +USE_SUBMAKE= yes WANT_AUTOCONF_VER= 253 WANT_AUTOMAKE_VER= 15 -AUTOMAKE_ARGS= -a +AUTOMAKE_ARGS= -a -i MAN1= vtysh.1 MAN8= bgpd.8 ospf6d.8 ospfd.8 ripd.8 ripngd.8 zebra.8 -CONFIGURE_ARGS+=--sysconfdir=${PREFIX}/etc/quagga --enable-vtysh SCRIPTS_ENV= WRKDIRPREFIX=${WRKDIRPREFIX} +pre-fetch: + @${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/configure.quagga + .if exists(${WRKDIRPREFIX}${.CURDIR}/Makefile.inc) .include "${WRKDIRPREFIX}${.CURDIR}/Makefile.inc" .endif -.if defined(ENABLE_USER) -CONFIGURE_ARGS+=--enable-user=${ENABLE_USER} +.if !defined(ENABLE_USER) +ENABLE_USER=quagga +.endif +.if !defined(ENABLE_GROUP) +ENABLE_GROUP=quagga .endif -.if defined(ENABLE_GROUP) + +CONFIGURE_ARGS+=--enable-user=${ENABLE_USER} CONFIGURE_ARGS+=--enable-group=${ENABLE_GROUP} + +.if !defined(SYSCONF_DIR) +SYSCONF_DIR=${PREFIX}/etc/quagga .endif +.if !defined(LOCALSTATE_DIR) +LOCALSTATE_DIR=/var/run/quagga +.endif + +CONFIGURE_ARGS+=--sysconfdir=${SYSCONF_DIR} +CONFIGURE_ARGS+=--localstatedir=${LOCALSTATE_DIR} + .if defined(ENABLE_VTY_GROUP) CONFIGURE_ARGS+=--enable-vty-group=${ENABLE_VTY_GROUP} .endif +CONFIGURE_ARGS+=--enable-vtysh + pre-everything:: @${ECHO} "=============================================================" @${ECHO} @@ -50,6 +68,8 @@ pre-everything:: @${ECHO} "ENABLE_USER Specify user to run Quagga suite as" @${ECHO} "ENABLE_GROUP Specify group to run Quagga suite as" @${ECHO} "ENABLE_VTY_GROUP Specify group for vty socket ownership" + @${ECHO} "SYSCONF_DIR Specify directory for Quagga configuration files" + @${ECHO} "LOCALSTATE_DIR Specify directory for Quagga runtime files" @${ECHO} @${ECHO} "The following options may be configured interactively:" @${ECHO} "QUAGGA_OPTIONS Specify additional switches, including:" @@ -60,9 +80,6 @@ pre-everything:: @${ECHO} " SNMP SNMP support" @${ECHO} " TCPSOCKETS Use TCP/IP sockets for protocol daemons" -post-patch: - @( cd ${PATCH_WRKSRC} && ${MV} configure.ac configure.in ) - pre-configure: .if !defined(BATCH) @${RM} -f ${WRKDIRPREFIX}${.CURDIR}/Makefile.inc @@ -70,14 +87,18 @@ pre-configure: @(cd ${CONFIGURE_WRKSRC} && ${SETENV} ${AUTOMAKE_ENV} ${ACLOCAL} ) @(cd ${CONFIGURE_WRKSRC} && ${SETENV} ${AUTOHEADER_ENV} ${AUTOHEADER} \ ${AUTOHEADER_ARGS}) - @(cd ${CONFIGURE_WRKSRC} && ${SETENV} ${AUTOMAKE_ENV} ${AUTOMAKE} \ + -@(cd ${CONFIGURE_WRKSRC} && ${SETENV} ${AUTOMAKE_ENV} ${AUTOMAKE} \ ${AUTOMAKE_ARGS}) @(cd ${CONFIGURE_WRKSRC} && ${SETENV} ${AUTOCONF_ENV} ${AUTOCONF} \ ${AUTOCONF_ARGS}) post-install: + @${SETENV} SYSCONF_DIR=${SYSCONF_DIR} SYSSTATE_DIR=${SYSSTATE_DIR} \ + ENABLE_USER=${ENABLE_USER} ENABLE_GROUP=${ENABLE_GROUP} \ + ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL @${ECHO} "===> installing ${PORTNAME} startup file..." @${SED} -e "s=!!PREFIX!!=${PREFIX}=" \ + -e "s=!!SYSCONF_DIR!!=${SYSCONF_DIR}=" \ < ${FILESDIR}/zebractl.sh \ > ${PREFIX}/sbin/zebractl @${CHMOD} 555 ${PREFIX}/sbin/zebractl diff --git a/net/quagga/distinfo b/net/quagga/distinfo index 87c4b03d7ed7..7096b3cdc4fe 100644 --- a/net/quagga/distinfo +++ b/net/quagga/distinfo @@ -1 +1 @@ -MD5 (quagga-0.96.2.tar.gz) = d32a24cd366199b8c4599a46ca46204b +MD5 (quagga-0.96.4.tar.gz) = 55f5a307c453f90d7dfcc13f0dabb83d diff --git a/net/quagga/files/zebractl.sh b/net/quagga/files/zebractl.sh index ecb0a5976fac..bdc597fcc77d 100644 --- a/net/quagga/files/zebractl.sh +++ b/net/quagga/files/zebractl.sh @@ -1,6 +1,6 @@ #! /bin/sh # -# $FreeBSD: /tmp/pcvs/ports/net/quagga/files/Attic/zebractl.sh,v 1.1 2003-09-27 23:40:56 bms Exp $ +# $FreeBSD: /tmp/pcvs/ports/net/quagga/files/Attic/zebractl.sh,v 1.2 2003-11-05 15:19:55 bms Exp $ # # zebra start/stop script by "Andreas Klemm <andreas@FreeBSD.ORG>" # @@ -19,31 +19,31 @@ fi case $1 in start) - if [ ! -f !!PREFIX!!/etc/zebra/zebra.conf ]; then + if [ ! -f !!SYSCONF_DIR!!/zebra.conf ]; then echo "error: zebra.conf config file is mandatory" exit 1 fi - [ -f !!PREFIX!!/etc/zebra/zebra.conf ] \ + [ -f !!SYSCONF_DIR!!/zebra.conf ] \ && !!PREFIX!!/sbin/zebra -d && echo -n ' zebra' - [ -f !!PREFIX!!/etc/zebra/ripd.conf ] \ + [ -f !!SYSCONF_DIR!!/ripd.conf ] \ && !!PREFIX!!/sbin/ripd -d && echo -n ' ripd' - [ -f !!PREFIX!!/etc/zebra/ripngd.conf ] \ + [ -f !!SYSCONF_DIR!!/ripngd.conf ] \ && !!PREFIX!!/sbin/ripngd -d && echo -n ' ripngd' - [ -f !!PREFIX!!/etc/zebra/ospfd.conf ] \ + [ -f !!SYSCONF_DIR!!/ospfd.conf ] \ && !!PREFIX!!/sbin/ospfd -d && echo -n ' ospfd' - [ -f !!PREFIX!!/etc/zebra/ospf6d.conf ] \ + [ -f !!SYSCONF_DIR!!/ospf6d.conf ] \ && !!PREFIX!!/sbin/ospf6d -d && echo -n ' ospf6d' - [ -f !!PREFIX!!/etc/zebra/bgpd.conf ] \ + [ -f !!SYSCONF_DIR!!/bgpd.conf ] \ && !!PREFIX!!/sbin/bgpd -d && echo -n ' bgpd' ;; stop) - [ -f !!PREFIX!!/etc/zebra/ripd.conf ] && killall ripd - [ -f !!PREFIX!!/etc/zebra/ripngd.conf ] && killall ripngd - [ -f !!PREFIX!!/etc/zebra/ospfd.conf ] && killall ospfd - [ -f !!PREFIX!!/etc/zebra/ospf6d.conf ] && killall ospf6d - [ -f !!PREFIX!!/etc/zebra/bgpd.conf ] && killall bgpd - [ -f !!PREFIX!!/etc/zebra/zebra.conf ] && killall zebra + [ -f !!SYSCONF_DIR!!/ripd.conf ] && killall ripd + [ -f !!SYSCONF_DIR!!/ripngd.conf ] && killall ripngd + [ -f !!SYSCONF_DIR!!/ospfd.conf ] && killall ospfd + [ -f !!SYSCONF_DIR!!/ospf6d.conf ] && killall ospf6d + [ -f !!SYSCONF_DIR!!/bgpd.conf ] && killall bgpd + [ -f !!SYSCONF_DIR!!/zebra.conf ] && killall zebra ;; restart) $0 stop diff --git a/net/quagga/pkg-install b/net/quagga/pkg-install new file mode 100644 index 000000000000..3860dc061ab2 --- /dev/null +++ b/net/quagga/pkg-install @@ -0,0 +1,66 @@ +#!/bin/sh + +PATH=/bin:/usr/sbin + +if [ -z "${SYSCONF_DIR}" ]; then + SYSCONF_DIR=/usr/local/etc/quagga +fi + +if [ -z "${LOCALSTATE_DIR}" ]; then + LOCALSTATE_DIR=/var/run/quagga +fi + +if [ -z "${ENABLE_USER}" ]; then + ENABLE_USER=quagga +fi + +if [ -z "${ENABLE_GROUP}" ]; then + ENABLE_GROUP=quagga +fi + +case $2 in + POST-INSTALL) + UID=90 + GID=${UID} + if pw group show "${ENABLE_GROUP}" 2>/dev/null; then + echo "You already have a group \"${ENABLE_GROUP}\", so I will use it." + else + if pw groupadd ${ENABLE_GROUP} -g ${GID}; then + echo "Added group \"${ENABLE_GROUP}\." + else + echo "Adding group \"${ENABLE_GROUP}\" failed." + exit 1 + fi + fi + + if pw user show "${ENABLE_USER}" 2>/dev/null; then + echo "You already have a user \"${ENABLE_USER}\", so I will use it." + if pw usermod ${ENABLE_USER} -d ${SYSCONF_DIR} + then + echo "Changed home directory of \"${ENABLE_USER}\" to \"${SYSCONF_DIR}\"" + else + echo "Changing home directory of \"${ENABLE_USER}\" to \"${SYSCONF_DIR}\" failed..." + exit 1 + fi + else + if pw useradd ${ENABLE_USER} -u ${UID} -g ${ENABLE_GROUP} -h - \ + -d ${SYSCONF_DIR} -s /sbin/nologin -c "Quagga Daemon" + then + echo "Added user \"${ENABLE_USER}\"." + else + echo "Adding user \"${ENABLE_USER}\" failed..." + exit 1 + fi + fi + + chown -R ${ENABLE_USER}:${ENABLE_GROUP} ${SYSCONF_DIR} + + mkdir ${LOCALSTATE_DIR} + if [ ! -d ${LOCALSTATE_DIR} ]; then + echo "Creating \"${LOCALSTATE_DIR}\" failed." + exit 1 + fi + + chown -R ${ENABLE_USER}:${ENABLE_GROUP} ${LOCALSTATE_DIR} + ;; +esac diff --git a/net/quagga/scripts/configure b/net/quagga/scripts/configure.quagga index 879eeaa02c64..3801bd9f0624 100644 --- a/net/quagga/scripts/configure +++ b/net/quagga/scripts/configure.quagga @@ -3,7 +3,7 @@ # configure - quagga compile time option configurator # by Bruce M Simpson <bms@FreeBSD.org> # -# $FreeBSD$ +# $FreeBSD: /tmp/pcvs/ports/net/quagga/scripts/Attic/configure.quagga,v 1.1 2003-11-05 15:19:55 bms Exp $ if [ -f ${WRKDIRPREFIX}${CURDIR}/Makefile.inc ]; then exit |