# New ports collection makefile for: quagga # Date created: 3 September 2003 # Whom: Bruce M Simpson # # $FreeBSD$ # PORTNAME= quagga PORTVERSION= 0.99.17 PORTREVISION= 5 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/ PATCH_SITES= http://quagga.net/ MAINTAINER= boris@tagnet.ru COMMENT= Free RIPv1, RIPv2, OSPFv2, BGP4, IS-IS route software 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 MAN1= vtysh.1 MAN8= bgpd.8 ospf6d.8 ospfd.8 ripd.8 ripngd.8 zebra.8 INFO= quagga OPTIONS= ISISD "Enable experimental ISIS daemon" off \ PAM "PAM authentication for vtysh" off \ OSPF_NSSA "NSSA support (RFC1587)" off \ OSPF_OPAQUE_LSA "OSPF Opaque-LSA support (RFC2370)" off \ RTADV "IPv6 Router Advertisements" off \ SNMP "SNMP support" off \ TCPSOCKETS "Use TCP/IP sockets for protocol daemons" off \ DLMALLOC "Use dlmalloc (makes bgpd much faster)" off \ NO_BGP_ANNOUNCE "Turn off BGP route announcement" off .include CFLAGS+= -I${LOCALBASE}/include .if ${OSVERSION} >= 800000 LDFLAGS+= -fstack-protector .endif CONFIGURE_ARGS+=--includedir=${PREFIX}/include --enable-exampledir=${PREFIX}/share/examples/quagga CONFIGURE_ENV+= LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib" \ LIBTOOL=${LIBTOOL} LIBTOOLIZE=${LIBTOOLIZE} \ LIBTOOL_VERSION=${LIBTOOL_VERSION} .if !defined(ENABLE_USER) ENABLE_USER=quagga .endif .if !defined(ENABLE_GROUP) ENABLE_GROUP=quagga .endif 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 SCRIPTS_ENV= PREFIX=${PREFIX} PKG_PREFIX=${PREFIX} \ SYSCONF_DIR=${SYSCONF_DIR} SYSSTATE_DIR=${SYSSTATE_DIR} \ ENABLE_USER=${ENABLE_USER} ENABLE_GROUP=${ENABLE_GROUP} .if defined(WITH_ISISD) CONFIGURE_ARGS+=--enable-isisd PLIST_SUB+= ISISD="" .else PLIST_SUB+= ISISD="@comment " .endif MAN8+= isisd.8 .if defined(WITH_PAM) CONFIGURE_ARGS+=--with-libpam .endif .if defined(WITH_OSPFNSSA) CONFIGURE_ARGS+=--enable-nssa .endif .if defined(WITH_OSPF_OPAQUE_LSA) CONFIGURE_ARGS+=--enable-opaque-lsa PLIST_SUB+= OSPFAPI="" .else PLIST_SUB+= OSPFAPI="@comment " .endif .if defined(WITH_RTADV) CONFIGURE_ARGS+=--enable-rtadv .endif .if defined(WITH_SNMP) CONFIGURE_ARGS+=--enable-snmp LIB_DEPENDS+=netsnmp:${PORTSDIR}/net-mgmt/net-snmp .endif .if defined(WITH_TCPSOCKETS) CONFIGURE_ARGS+=--enable-tcp-zebra .endif .if defined(WITH_DLMALLOC) LIB_DEPENDS+=dlmalloc.2:${PORTSDIR}/devel/libdlmalloc LDFLAGS+=-ldlmalloc SUB_LIST= RCLDCONFIG=ldconfig .else SUB_LIST= RCLDCONFIG= .endif .if defined(WITH_NO_BGP_ANNOUNCE) CONFIGURE_ARGS+=--disable-bgp-announce .endif USE_RC_SUBR= quagga.sh watchquagga.sh SUB_LIST+= LOCALSTATE_DIR=${LOCALSTATE_DIR} \ SYSCONF_DIR=${SYSCONF_DIR} PLIST_SUB+= LOCALSTATE_DIR=${LOCALSTATE_DIR} \ SYSCONF_DIR=${SYSCONF_DIR} \ ENABLE_USER=${ENABLE_USER} \ ENABLE_GROUP=${ENABLE_GROUP} pre-everything:: @${ECHO} "=============================================================" @${ECHO} @${ECHO} "You can build ${PORTNAME} with the following options:" @${ECHO} @${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} " WITH_PAM PAM authentication for vtysh" @${ECHO} " WITH_OSPF_NSSA NSSA support (RFC1587)" @${ECHO} " WITH_OSPF_OPAQUE_LSA OSPF Opaque-LSA with OSPFAPI support (RFC2370)" @${ECHO} " WITH_RTADV IPv6 Router Advertisements" @${ECHO} " WITH_SNMP SNMP support" @${ECHO} " WITH_TCPSOCKETS Use TCP/IP sockets for protocol daemons" @${ECHO} " WITH_DLMALLOC Use dlmalloc (makes bgpd much faster)" @${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} "" .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 -2/+7 | * Check self-destructed account via static call still exists.Adrian Sutton2018-11-216-3/+15 | * Check self-destructed account no longer exists.Adrian Sutton2018-11-212-1/+4 | * Refill tests.Adrian Sutton2018-11-208-10/+436 | * Add test that checks EXTCODEHASH of self destructed account after original ca...Adrian Sutton2018-11-202-0/+151 | * Add STATICCALL variant.Adrian Sutton2018-11-204-3/+202 | * Add test for EXTCODEHASH of account created and then deleted in same transact...Adrian Sutton2018-11-184-0/+326 * | Merge pull request #547 from ethereum/consttransitionwinsvega2018-11-2010-26/+799 |\ \ | * | fix blockchain tests expect section json scheme checkconsttransitionDimitry2018-11-208-26/+70 | * | fix blockchain filler cheme checkDimitry2018-11-191-0/+3 | * | constantinople transition testDimitry2018-11-162-0/+726 | |/ * | Merge pull request #548 from ajsutton/extcodehash-createaccountwinsvega2018-11-194-0/+339 |\ \ | |/ |/| | * Fill blockchain tests.Adrian Sutton2018-11-182-0/+204 | * Add test for EXTCODEHASH of account created in same transaction.Adrian Sutton2018-11-182-0/+135 |/ * Merge pull request #542 from hugo-dc/extcodehash-hdcwinsvega2018-11-1532-0/+3202 |\ | * fill blockchain testsJose Hugo De la cruz Romero2018-11-1524-0/+2418 | * refill tests using create2 branch of aleth, fix extCodeHashPrecompiles json o...Jose Hugo De la cruz Romero2018-11-154-29/+6 | * fix precompiles codehash test, refill using latest aleth/testethJose Hugo De la cruz Romero2018-11-155-193/+238 | * EXTCODEHASH testsJose Hugo De la cruz Romero2018-11-158-0/+762 |/ * Merge pull request #545 from ethereum/moresstorewinsvega2018-11-1410380-0/+1814091 |\ | * fill as blockchain sstore combinationsmoresstoreDimitry2018-11-1310374-0/+1756380 | * sstore combinations change testsDimitry2018-11-136-0/+57711 * | Merge pull request #544 from ajsutton/extcodehashv6.0.0-beta.2winsvega2018-11-1320-0/+2237 |\ \ | * | Fill blockchain tests.Adrian Sutton2018-11-1314-0/+1673 | * | Use '>=Constantinople' instead of '>Byzantium' to be a bit more readable that...Adrian Sutton2018-11-136-83/+10 | * | Add more dynamic argument test cases to cover non-existent accounts, precompi...Adrian Sutton2018-11-132-60/+135 | * | Add test case for a contract executing EXTCODEHASH of the account being creat...Adrian Sutton2018-11-122-0/+138 | * | Add test case for a contract executing EXTCODEHASH with a dynamic argument.Adrian Sutton2018-11-122-0/+219 | * | Add test case for a contract executing EXTCODEHASH on itself.Adrian Sutton2018-11-122-0/+205 * | | Merge pull request #546 from ajsutton/gitignore-ideaMartin Holst Swende2018-11-131-1/+2 |\ \ \ | |/ / |/| | | * | Add .idea to .gitignore.Adrian Sutton2018-11-131-1/+2 |/ / * | Merge pull request #538 from ajsutton/memory-write-testswinsvega2018-11-0916-0/+4033 |\ \ | * | Add blockchain version of new tests.Adrian Sutton2018-11-098-12/+2430 | * | Revert "Add blockchain version of stPreCompiledContracts2 tests." (to make re...Adrian Sutton2018-11-096-2406/+0 | * | Add comment to new tests explaining what they're covering.Adrian Sutton2018-11-098-30/+42 | * | Add blockchain version of stCodeCopy tests.Adrian Sutton2018-11-062-0/+872 | * | Add blockchain version of stPreCompiledContracts2 tests.Adrian Sutton2018-11-066-0/+2406 | * | Refill new test.Adrian Sutton2018-11-061-1/+1 | * | Add tests to cover cases where data is copied to a memory range longer than t...Adrian Sutton2018-11-038-0/+731 * | | Merge pull request #484 from ethereum/extcodehashwinsvega2018-11-0922-0/+6229 |\ \ \ | |_|/ |/| | | * | fill initial stExtCodeHash testsextcodehashDimitry2018-11-0918-4/+5221 | * | stExtCodeHash WIPDimitry2018-10-118-0/+1012 * | | Merge pull request #539 from ethereum/integrate-test-generation-docswinsvega2018-11-095-27/+408 |\ \ \ | |_|/ |/| | | * | Move test creation docs to testing documentationholgerd772018-11-095-27/+408 |/ / * | Merge pull request #535 from ethereum/moresstorewinsvega2018-11-0346-0/+5235 |\ \ | * | InitCollision testDimitry2018-10-259-0/+995 | * | sstore collision overwrite sstoreDimitry2018-10-2538-0/+4240 * | | Merge pull request #537 from ethereum/add-using-clients-to-docswinsvega2018-11-031-0/+12 |\ \ \ | * | | Added clients using the tests library to the READMEholgerd772018-11-021-0/+12 |/ / / * | | Merge pull request #533 from ethereum/blockchain-test-format-doc-updatesv6.0.0-beta.1winsvega2018-10-253-25/+33 |\ \ \ | |/ / |/| | | * | Some updates to test generation doc sectionholgerd772018-10-231-1/+5 | * | Added sealEngine related infos to README and blockchain test format docsholgerd772018-10-232-24/+28 |/ / * | Merge pull request #527 from ansermino/david/setupHolger Drewes2018-10-193-0/+13 |\ \ | * | Fixed namingDavid Ansermino2018-10-181-1/+1 | * | Specified dependency version ranges, added .env3 to gitignoreDavid Ansermino2018-10-182-3/+4 | * | Added requirements and setup instructionsDavid Ansermino2018-10-162-0/+12 * | | Merge pull request #529 from ethereum/moresstorewinsvega2018-10-18714-1104/+83270 |\ \ \ | * | | fill as blockchain testsDimitry2018-10-18697-829/+80569 | * | | sstore xxx testsDimitry2018-10-1817-275/+2701 |/ / / * | | Merge pull request #528 from ethereum/moresstorewinsvega2018-10-17246-397/+28122 |\ \ \ | * | | fill as blockchainDimitry2018-10-17232-315/+26508 | * | | more test scenarios around test casesDimitry2018-10-1714-82/+1614 |/ / / * | | Merge pull request #526 from ethereum/moresstorewinsvega2018-10-1628-0/+2895 |\ \ \ | |/ / |/| | | * | fill as blockchain testsDimitry2018-10-1624-74/+2158 | * | sstore refund bugDimitry2018-10-152-0/+131 | * | more sstore testsDimitry2018-10-158-0/+680 |/ / * | Merge pull request #525 from ethereum/disableEipwinsvega2018-10-13217-5313/+4815 |\ \ | * | update tests without EIP210Dimitry2018-10-12217-5313/+4815 |/ / * | Merge pull request #516 from feliam/patch-2winsvega2018-10-121-4/+4 |\ \ | * | Update vm_tests.rstfeliam2018-10-041-4/+4 * | | Merge pull request #514 from feliam/patch-1winsvega2018-10-121-1/+1 |\ \ \ | * | | Update README.mdfeliam2018-10-021-1/+1 | |/ / * | | Merge pull request #522 from ethereum/remLegacywinsvega2018-10-1228-2705/+0 |\ \ \ | * | | remove artifact testsDimitry2018-10-1128-2705/+0 |/ / / * | | Merge pull request #520 from ethereum/fixgaslimitwinsvega2018-10-1159-15842/+15842 |\ \ \ | |_|/ |/| | | * | refill wallet testsDimitry2018-10-117-8345/+8345 | * | fix wrong difficulty tests on NoProofDimitry2018-10-1152-7497/+7497 |/ / * | Merge pull request #518 from ethereum/refill2winsvega2018-10-102-9016/+29305 |\ \ | * | create difficultyConstantinople autogenerated testsDimitry2018-10-091-0/+20289 | * | regenerate difficultyTests on RopstenDimitry2018-10-091-9016/+9016 |/ / * | Merge pull request #517 from ethereum/refill2winsvega2018-10-09137-989/+989 |\ \ | * | refill badOpcodesDimitry2018-10-09123-378/+378 | * | fix wrong timestamp in testsDimitry2018-10-0914-611/+611 |/ / * | Merge pull request #511 from ethereum/refillwinsvega2018-10-0513596-232919/+1248632 |\ \ | |/ |/| | * refill stCreate2 with new gasPriceDimitry2018-10-05169-711/+711 | * fix bcForgedTest and ttWrongRLPDimitry2018-10-03182-823/+823 | * fix yml testsDimitry2018-10-036-11/+11 | * refill blockchain testsDimitry2018-10-02