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
This commit is contained in:
parent
a1a662185e
commit
775f08a2d3
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=93146
@ -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)
|
||||
.if !defined(ENABLE_USER)
|
||||
ENABLE_USER=quagga
|
||||
.endif
|
||||
.if !defined(ENABLE_GROUP)
|
||||
ENABLE_GROUP=quagga
|
||||
.endif
|
||||
|
||||
CONFIGURE_ARGS+=--enable-user=${ENABLE_USER}
|
||||
.endif
|
||||
.if defined(ENABLE_GROUP)
|
||||
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
|
||||
|
@ -1 +1 @@
|
||||
MD5 (quagga-0.96.2.tar.gz) = d32a24cd366199b8c4599a46ca46204b
|
||||
MD5 (quagga-0.96.4.tar.gz) = 55f5a307c453f90d7dfcc13f0dabb83d
|
||||
|
@ -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
|
||||
|
66
net/quagga/pkg-install
Normal file
66
net/quagga/pkg-install
Normal file
@ -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
|
@ -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
|
Loading…
Reference in New Issue
Block a user