aboutsummaryrefslogtreecommitdiff
path: root/net/quagga/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'net/quagga/Makefile')
-rw-r--r--net/quagga/Makefile113
1 files changed, 24 insertions, 89 deletions
diff --git a/net/quagga/Makefile b/net/quagga/Makefile
index 1fe4d5421d60..7e457a3e1433 100644
--- a/net/quagga/Makefile
+++ b/net/quagga/Makefile
@@ -6,28 +6,28 @@
#
PORTNAME= quagga
-PORTVERSION= 0.99.20
-PORTREVISION= 3
+PORTVERSION= 0.99.20.1
CATEGORIES= net ipv6
-MASTER_SITES= http://quagga.net/download/ \
- http://www.ru.quagga.net/download/ \
- http://www.de.quagga.net/download/ \
- http://www.us.quagga.net/download/ \
- http://www.us2.quagga.net/download/ \
- http://www.au.quagga.net/download/
+MASTER_SITES= ${MASTER_SITE_SAVANNAH}
+MASTER_SITE_SUBDIR= quagga
PATCH_SITES= http://quagga.net/
MAINTAINER= boris@tagnet.ru
COMMENT= Free RIPv1, RIPv2, OSPFv2, BGP4, IS-IS route software
+LICENSE= GPLv2
+LICENSE_FILE= ${WRKSRC}/COPYING
+
CONFLICTS= openbgpd-[0-9]* zebra-0*
-USE_AUTOTOOLS= libtool autoheader
-USE_GMAKE= yes
-USE_LDCONFIG= yes
-USE_PERL5_BUILD= yes
-BUILD_DEPENDS+= gawk:${PORTSDIR}/lang/gawk
+USE_AUTOTOOLS= libtool autoheader aclocal
+ACLOCAL_ARGS= -I${LOCALBASE}/share/aclocal
+BUILD_DEPENDS+= gawk:${PORTSDIR}/lang/gawk
+USE_GMAKE= yes
+USE_LDCONFIG= yes
+USE_PERL5_BUILD=yes
+FETCH_ARGS= -Fpr
MAN1= vtysh.1
MAN8= bgpd.8 ospf6d.8 ospfd.8 ripd.8 ripngd.8 zebra.8
@@ -54,22 +54,17 @@ CONFIGURE_ENV+= LIBTOOL=${LIBTOOL} LIBTOOLIZE=${LIBTOOLIZE} \
LIBTOOL_VERSION=${LIBTOOL_VERSION}
LDFLAGS+= -L${LOCALBASE}/lib
-.if !defined(ENABLE_USER)
-ENABLE_USER=quagga
-.endif
-.if !defined(ENABLE_GROUP)
-ENABLE_GROUP=quagga
-.endif
+ENABLE_USER?= quagga
+ENABLE_GROUP?= quagga
+
+USERS= ${ENABLE_USER}
+GROUPS= ${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
+SYSCONF_DIR?= ${ETCDIR}
+LOCALSTATE_DIR?=/var/run/quagga
CONFIGURE_ARGS+=--sysconfdir=${SYSCONF_DIR}
CONFIGURE_ARGS+=--localstatedir=${LOCALSTATE_DIR}
@@ -165,74 +160,14 @@ pre-everything::
@${ECHO} " WITH_NO_BGP_ANNOUNCE Turn off BGP route announcement"
post-install:
- @${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
- @${ECHO} "===> installing ${PORTNAME} startup file..."
- @${ECHO} "Add the following lines to /etc/rc.conf to enable quagga:"
- @${ECHO} ""
- @${ECHO} "defaultrouter=\"NO\""
- @${ECHO} "quagga_enable=\"YES\""
- @${ECHO} ""
- @${ECHO} "Also, you may wish to set the following options:"
- @${ECHO} "quagga_daemons=\"zebra bgpd etc...\""
- @${ECHO} "quagga_flags=\"....\""
- @${ECHO} "quagga_extralibs_path=\"/path1 /path2\""
- @${ECHO} "router_enable=\"NO\""
- @${ECHO} "watchquagga_enable=\"YES\""
- @${ECHO} "watchquagga_flags=\"...\""
- @${ECHO} ""
- @${ECHO} "Note!!! Since 0.96.4_5 port uses new id for quagga user and group."
- @${ECHO} " So, You need to manually chown files:"
- @${ECHO} " in ${SYSCONF_DIR}"
- @${ECHO} " and ${LOCALSTATE_DIR}"
- @${ECHO} " if You had never do this before. Or run"
- @${ECHO} " make changeuser"
- @${ECHO} ""
+ @${MKDIR} ${LOCALSTATE_DIR}
+ @${CHOWN} -R ${ENABLE_USER}:${ENABLE_GROUP} ${LOCALSTATE_DIR} \
+ ${SYSCONF_DIR}
+ @${CAT} ${PKGMESSAGE}
.if !defined(BATCH)
post-clean:
@${RM} -f ${WRKDIRPREFIX}${.CURDIR}/Makefile.inc
.endif
-changeuser:
-# Recover from the problem that earlier versions of this port created the
-# quagga pseudo-user with an id of 90 which is used by FireBird database
-# engine. The port now uses id 101:101.
-# NOTE:
-# This target assumes that ENABLE_GROUP is the primary group of ENABLE_USER. If you
-# have a different setup, do not run this target!
- @if [ `${ID} -u` -ne 0 ]; \
- then ${ECHO_CMD} "Sorry, you must be root to use this target."; exit 1; fi; \
- current_uid=`id -u ${ENABLE_USER}`; \
- current_gid=`pw groupshow ${ENABLE_GROUP}|cut -f 3 -d :`; \
- ${ECHO_CMD} "I will remove this user:"; \
- ${ID} -P $${current_uid}; \
- ${ECHO_CMD} "and this group:"; \
- pw groupshow ${ENABLE_GROUP}; \
- ${ECHO_CMD} "I will then re-create them with a user and group id of 101."; \
- ${ECHO_CMD} "Then all files and directories under ${PREFIX} and /var that"; \
- ${ECHO_CMD} "are owned by uid $${current_uid} will be chown(1)'ed."; \
- ${ECHO_CMD} "After that, all files and directories that were accessible"; \
- ${ECHO_CMD} "by group $${current_gid} will chgrp(1)'ed respectively."; \
- ${ECHO_CMD} "Note that this assumes group '${ENABLE_GROUP}' to be the primary"; \
- ${ECHO_CMD} "group of user '${ENABLE_USER}'. If you have a different setup"; \
- ${ECHO_CMD} "please abort this target now. Also don't forget to write your"; \
- ${ECHO_CMD} "Quagga configs right now!"; \
- read -p "Press RETURN to continue or CTRL-C to abort:" dummy ; \
- ${ECHO_CMD} "OK, here we go:"; \
- ${ECHO_CMD} "deleting user $${current_uid} and his primary group..."; \
- pw userdel -u $${current_uid}; \
- ${ECHO_CMD} "adding user ${ENABLE_USER} with id 101..."; \
- pw groupadd -n ${ENABLE_USER} -g 101; \
- pw useradd -n ${ENABLE_GROUP} -u 101 -c "quagga route daemon pseudo-user" \
- -d ${SYSCONF_DIR} -s /sbin/nologin -h - ; \
- ${ECHO_CMD} "chown(1)'ing everything under ${PREFIX} from $${current_uid} to 101..."; \
- ${FIND} -H ${PREFIX} -user $${current_uid} -exec ${CHOWN} 101 {} \; ; \
- ${ECHO_CMD} "chgrp(1)'ing everything under ${PREFIX} from $${current_gid} to 100..."; \
- ${FIND} -H ${PREFIX} -group $${current_gid} -exec ${CHOWN} :101 {} \; ; \
- ${ECHO_CMD} "chown(1)'ing everything under /var from $${current_uid} to 101..."; \
- ${FIND} -H /var -user $${current_uid} -exec ${CHOWN} 101 {} \; ; \
- ${ECHO_CMD} "chgrp(1)'ing everything under /var from $${current_gid} to 101..."; \
- ${FIND} -H /var -group $${current_gid} -exec ${CHOWN} :101 {} \; ; \
- ${ECHO_CMD} "Finished. You must stop and then start Quagga now."
-
.include <bsd.port.post.mk>