Fri Jan 22 18:33:17 2021 UTC ()
Pullup ticket #6410 - requested by kardel
net/frr: build fix

Revisions pulled up:
- net/frr/Makefile                                              1.3-1.4

---
   Module Name:    pkgsrc
   Committed By:   kardel
   Date:           Wed Jan  6 10:45:49 UTC 2021

   Modified Files:
           pkgsrc/net/frr: Makefile

   Log Message:
   net/frr: document bison tool dependency

---
   Module Name:    pkgsrc
   Committed By:   kardel
   Date:           Wed Jan  6 11:53:52 UTC 2021

   Modified Files:
           pkgsrc/net/frr: Makefile

   Log Message:
   net/frr: simplify bison tool requirement


(bsiegert)
diff -r1.1 -r1.1.2.1 pkgsrc/net/frr/Makefile

cvs diff -r1.1 -r1.1.2.1 pkgsrc/net/frr/Makefile (switch to unified diff)

--- pkgsrc/net/frr/Makefile 2020/12/10 16:43:24 1.1
+++ pkgsrc/net/frr/Makefile 2021/01/22 18:33:17 1.1.2.1
@@ -1,116 +1,117 @@ @@ -1,116 +1,117 @@
1# $NetBSD: Makefile,v 1.1 2020/12/10 16:43:24 kardel Exp $ 1# $NetBSD: Makefile,v 1.1.2.1 2021/01/22 18:33:17 bsiegert Exp $
2 2
3GITHUB_PROJECT= frr 3GITHUB_PROJECT= frr
4VERSION= 7.5 4VERSION= 7.5
5GITHUB_TAG= frr-${VERSION} 5GITHUB_TAG= frr-${VERSION}
6DISTNAME= frr-${VERSION} 6DISTNAME= frr-${VERSION}
7CATEGORIES= net 7CATEGORIES= net
8MASTER_SITES= ${MASTER_SITE_GITHUB:=FRRouting/} 8MASTER_SITES= ${MASTER_SITE_GITHUB:=FRRouting/}
9 9
10MAINTAINER= kardel@NetBSD.org 10MAINTAINER= kardel@NetBSD.org
11HOMEPAGE= https://github.com/FRRouting/frr/ 11HOMEPAGE= https://github.com/FRRouting/frr/
12COMMENT= Frr routing multi protocol suite 12COMMENT= Frr routing multi protocol suite
13LICENSE= gnu-gpl-v2 13LICENSE= gnu-gpl-v2
14 14
15CONFLICTS= quagga-[0-9]* 15CONFLICTS= quagga-[0-9]*
16 16
17WRKSRC= ${WRKDIR}/frr-frr-${VERSION} 17WRKSRC= ${WRKDIR}/frr-frr-${VERSION}
18USE_LANGUAGES= c c++ 18USE_LANGUAGES= c c++
19USE_TOOLS+= gmake perl bash pkg-config autoconf automake autoreconf 19USE_TOOLS+= gmake perl bash pkg-config autoconf automake autoreconf bison
20USE_LIBTOOL= YES 20USE_LIBTOOL= YES
21GNU_CONFIGURE= yes 21GNU_CONFIGURE= yes
22BUILD_DEFS= VARBASE 22BUILD_DEFS= VARBASE
 23BISON_REQD= 3.3
23 24
24.include "../../mk/bsd.prefs.mk" 25.include "../../mk/bsd.prefs.mk"
25.include "options.mk" 26.include "options.mk"
26 27
27# to pick up the atomic implementation on i386 28# to pick up the atomic implementation on i386
28.if ${MACHINE_ARCH} == "i386" 29.if ${MACHINE_ARCH} == "i386"
29CPPFLAGS+= -march=i586 30CPPFLAGS+= -march=i586
30.endif 31.endif
31 32
32FRR_GROUP?= _frr 33FRR_GROUP?= _frr
33FRR_VTY_GROUP?= frrvty 34FRR_VTY_GROUP?= frrvty
34 35
35FRR_USER?= _frr 36FRR_USER?= _frr
36FRR_CONF_MODE= 0640 37FRR_CONF_MODE= 0640
37FRR_CONFDIR_MODE= 0755 38FRR_CONFDIR_MODE= 0755
38FRR_LOG_MODE= 0640 39FRR_LOG_MODE= 0640
39 40
40PKG_SYSCONFDIR_PERMS= ${FRR_USER} ${FRR_VTY_GROUP} ${FRR_CONFDIR_MODE} 41PKG_SYSCONFDIR_PERMS= ${FRR_USER} ${FRR_VTY_GROUP} ${FRR_CONFDIR_MODE}
41PKG_SYSCONFSUBDIR= frr 42PKG_SYSCONFSUBDIR= frr
42 43
43PKG_GECOS.${FRR_USER}= FRRouting User 44PKG_GECOS.${FRR_USER}= FRRouting User
44PKG_HOME.${FRR_USER}= /nonexistent 45PKG_HOME.${FRR_USER}= /nonexistent
45PKG_SHELL.${FRR_USER}= /bin/sh 46PKG_SHELL.${FRR_USER}= /bin/sh
46 47
47PKG_GROUPS= ${FRR_GROUP} ${FRR_VTY_GROUP} 48PKG_GROUPS= ${FRR_GROUP} ${FRR_VTY_GROUP}
48PKG_USERS= ${FRR_USER}:${FRR_GROUP} 49PKG_USERS= ${FRR_USER}:${FRR_GROUP}
49 50
50RCD_SUPPLIED= bgpd ospf6d ospfd ripd ripngd zebra 51RCD_SUPPLIED= bgpd ospf6d ospfd ripd ripngd zebra
51RCD_SCRIPTS= ${RCD_SUPPLIED} staticd 52RCD_SCRIPTS= ${RCD_SUPPLIED} staticd
52 53
53.for f in ${RCD_SUPPLIED} 54.for f in ${RCD_SUPPLIED}
54RCD_SCRIPT_SRC.${f}= ${WRKSRC}/pkgsrc/${f}.sh 55RCD_SCRIPT_SRC.${f}= ${WRKSRC}/pkgsrc/${f}.sh
55.endfor 56.endfor
56 57
57CONFIG_TEMPLATE_PATH= share/examples/${PKG_SYSCONFSUBDIR}/configsamples 58CONFIG_TEMPLATE_PATH= share/examples/${PKG_SYSCONFSUBDIR}/configsamples
58 59
59USE_TOOLS+= bash:run 60USE_TOOLS+= bash:run
60REPLACE_BASH= tools/frr.in tools/*.sh.in 61REPLACE_BASH= tools/frr.in tools/*.sh.in
61 62
62REPLACE_PYTHON= tools/generate_support_bundle.py tools/frr-reload.py 63REPLACE_PYTHON= tools/generate_support_bundle.py tools/frr-reload.py
63 64
64MESSAGE_SUBST+= FRR_USER=${FRR_USER} 65MESSAGE_SUBST+= FRR_USER=${FRR_USER}
65MESSAGE_SUBST+= FRR_VTY_GROUP=${FRR_VTY_GROUP} 66MESSAGE_SUBST+= FRR_VTY_GROUP=${FRR_VTY_GROUP}
66 67
67SUBST_CLASSES+= ids 68SUBST_CLASSES+= ids
68SUBST_STAGE.ids= pre-configure 69SUBST_STAGE.ids= pre-configure
69SUBST_MESSAGE.ids= Fixing user/group references. 70SUBST_MESSAGE.ids= Fixing user/group references.
70SUBST_FILES.ids= pkgsrc/zebra.sh.in 71SUBST_FILES.ids= pkgsrc/zebra.sh.in
71SUBST_VARS.ids= FRR_USER FRR_VTY_GROUP 72SUBST_VARS.ids= FRR_USER FRR_VTY_GROUP
72 73
73SUBST_CLASSES+= workdir 74SUBST_CLASSES+= workdir
74SUBST_STAGE.workdir= post-configure 75SUBST_STAGE.workdir= post-configure
75SUBST_MESSAGE.workdir= Fixing absolute workdir references. 76SUBST_MESSAGE.workdir= Fixing absolute workdir references.
76SUBST_FILES.workdir= lib/version.h 77SUBST_FILES.workdir= lib/version.h
77SUBST_SED.workdir= -e "s,${WRKDIR},"'{WRKDIR},g' 78SUBST_SED.workdir= -e "s,${WRKDIR},"'{WRKDIR},g'
78SUBST_VARS.workdir= 79SUBST_VARS.workdir=
79 80
80CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR} 81CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
81CONFIGURE_ARGS+= --enable-user=${FRR_USER} 82CONFIGURE_ARGS+= --enable-user=${FRR_USER}
82CONFIGURE_ARGS+= --enable-group=${FRR_GROUP} 83CONFIGURE_ARGS+= --enable-group=${FRR_GROUP}
83CONFIGURE_ARGS+= --enable-exampledir=${PREFIX}/${CONFIG_TEMPLATE_PATH} 84CONFIGURE_ARGS+= --enable-exampledir=${PREFIX}/${CONFIG_TEMPLATE_PATH}
84CONFIGURE_ARGS+= --localstatedir=${VARBASE}/run/frr 85CONFIGURE_ARGS+= --localstatedir=${VARBASE}/run/frr
85CONFIGURE_ARGS+= --enable-multipath=64 86CONFIGURE_ARGS+= --enable-multipath=64
86CONFIGURE_ARGS+= --enable-vty-group=${FRR_VTY_GROUP} 87CONFIGURE_ARGS+= --enable-vty-group=${FRR_VTY_GROUP}
87CONFIGURE_ARGS+= --enable-configfile-mask=${FRR_CONF_MODE} 88CONFIGURE_ARGS+= --enable-configfile-mask=${FRR_CONF_MODE}
88CONFIGURE_ARGS+= --enable-logfile-mask=${FRR_LOG_MODE} 89CONFIGURE_ARGS+= --enable-logfile-mask=${FRR_LOG_MODE}
89CONFIGURE_ARGS+= --enable-fpm 90CONFIGURE_ARGS+= --enable-fpm
90CONFIGURE_ARGS+= --with-pkg-git-version 91CONFIGURE_ARGS+= --with-pkg-git-version
91CONFIGURE_ARGS+= --with-pkg-extra-version=/${DISTNAME} 92CONFIGURE_ARGS+= --with-pkg-extra-version=/${DISTNAME}
92# CONFIGURE_ARGS+= --enable-address-sanitizer 93# CONFIGURE_ARGS+= --enable-address-sanitizer
93 94
94pre-configure: 95pre-configure:
95 cd ${WRKSRC} && ${SH} bootstrap.sh 96 cd ${WRKSRC} && ${SH} bootstrap.sh
96 97
97.include "../../devel/libyang/buildlink3.mk" 98.include "../../devel/libyang/buildlink3.mk"
98.include "../../textproc/json-c/buildlink3.mk" 99.include "../../textproc/json-c/buildlink3.mk"
99.include "../../lang/python/application.mk" 100.include "../../lang/python/application.mk"
100.include "../../devel/readline/buildlink3.mk" 101.include "../../devel/readline/buildlink3.mk"
101 102
102.include "../../mk/bsd.pkg.mk" 103.include "../../mk/bsd.pkg.mk"
103 104
104# needs to be here to have ${EGREP} defined 105# needs to be here to have ${EGREP} defined
105CONFIG_TEMPLATES!= ${EGREP} ${CONFIG_TEMPLATE_PATH:Q} PLIST 2>/dev/null 106CONFIG_TEMPLATES!= ${EGREP} ${CONFIG_TEMPLATE_PATH:Q} PLIST 2>/dev/null
106CONF_FILES?= 107CONF_FILES?=
107 108
108.for l in ${CONFIG_TEMPLATES} 109.for l in ${CONFIG_TEMPLATES}
109. if ${l:C,^${CONFIG_TEMPLATE_PATH}/(.*)\.sample,\1,} == "vtysh.conf" 110. if ${l:C,^${CONFIG_TEMPLATE_PATH}/(.*)\.sample,\1,} == "vtysh.conf"
110CONF_FILES_PERMS+= /dev/null ${PKG_SYSCONFDIR}${l:C,^${CONFIG_TEMPLATE_PATH}(/.*)\.sample,\1,} \ 111CONF_FILES_PERMS+= /dev/null ${PKG_SYSCONFDIR}${l:C,^${CONFIG_TEMPLATE_PATH}(/.*)\.sample,\1,} \
111 ${FRR_USER} ${FRR_VTY_GROUP} ${FRR_CONF_MODE} 112 ${FRR_USER} ${FRR_VTY_GROUP} ${FRR_CONF_MODE}
112. else 113. else
113CONF_FILES_PERMS+= /dev/null ${PKG_SYSCONFDIR}${l:C,^${CONFIG_TEMPLATE_PATH}(/.*)\.sample,\1,} \ 114CONF_FILES_PERMS+= /dev/null ${PKG_SYSCONFDIR}${l:C,^${CONFIG_TEMPLATE_PATH}(/.*)\.sample,\1,} \
114 ${FRR_USER} ${FRR_GROUP} ${FRR_CONF_MODE} 115 ${FRR_USER} ${FRR_GROUP} ${FRR_CONF_MODE}
115. endif 116. endif
116.endfor 117.endfor