package/frr: update to 9.1.1

Update to the latest 9.x version. Protobuf is now mandatory.

The COPYING file has evolved to expose more details: the respective
licenses are now listed, except for the GPLv3 license. The GPLv3
license is only required when FRR is compiled with the GCC plugin that
extends printf type checks. This plugin should not be enabled for
production code. For more information, see FRR's workflow.rst
document.

Signed-off-by: Vincent Jardin <vjardin@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Vincent Jardin
2024-08-26 15:19:24 +02:00
committed by Thomas Petazzoni
parent 6a569012a8
commit bd29f403d8
3 changed files with 37 additions and 8 deletions

View File

@@ -1,15 +1,19 @@
config BR2_PACKAGE_FRR
bool "frr"
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_TOOLCHAIN_HAS_THREADS # protobuf-c
depends on !BR2_STATIC_LIBS # libyang
depends on BR2_USE_MMU # fork()
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c, libyang
depends on BR2_INSTALL_LIBSTDCPP # protobuf-c
depends on BR2_PACKAGE_HOST_PROTOBUF_ARCH_SUPPORTS # protobuf-c
depends on BR2_HOST_GCC_AT_LEAST_7 # protobuf-c
select BR2_PACKAGE_BASH
select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # bash
select BR2_PACKAGE_LIBXCRYPT if BR2_TOOLCHAIN_USES_GLIBC
select BR2_PACKAGE_LIBYANG
select BR2_PACKAGE_READLINE
select BR2_PACKAGE_JSON_C
select BR2_PACKAGE_PROTOBUF_C
help
The FRRouting Protocol Suite.
@@ -34,7 +38,9 @@ config BR2_PACKAGE_FRR_NHRPD
endif
comment "frr needs a toolchain w/ threads, dynamic library"
comment "frr needs a toolchain w/ threads, dynamic library, C++, host gcc >= 7"
depends on BR2_PACKAGE_HOST_PROTOBUF_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on BR2_USE_MMU
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
!BR2_INSTALL_LIBSTDCPP || !BR2_HOST_GCC_AT_LEAST_7

View File

@@ -1,3 +1,11 @@
# Locally calculated
sha256 7ae9d8bafc65bb5d0f21061ac61dbc6cf93b2b05a5dae9e5eec72ed42388551e frr-8.5.4.tar.gz
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
sha256 6eb254c72dca867fefffd5ded80a6c2d5ce8df223ce93263302db4b8bfbb19c4 frr-9.1.1.tar.gz
sha256 7bf053957d6c38e39a06a112c60ff35b228d3bd03edbe8c9a03508b051128d16 COPYING
sha256 f9e0c21faf738da586281c0beaad3cd56204c19085a10fe05e4d3d7f8b5863d2 doc/licenses/BSD-2-Clause
sha256 aca297b8fd3a43e3bb200f1e2e043c0db6c897325f5ff7f23f7530302a6bf713 doc/licenses/BSD-3-Clause
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 doc/licenses/GPL-2.0
sha256 6d80da3224cbdcf016ea554e00fc9cd933bd1a3417cb5e5b7abf59f6d126761d doc/licenses/ISC
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 doc/licenses/LGPL-2.1
sha256 2a1124bf8bc60f1f59b67e15e3d261b5d60fcd9674a3eace0a5502fd4287d528 doc/licenses/LicenseRef-Skiplist-BSD-0-Clause
sha256 074415b57c6ba1780483d89e55f40dec3ded96c28aaf47d63c486683ba553e7c doc/licenses/MIT
sha256 b5065838cbac452dfc855ba6e6e031481ad2c68406f70d21ead9321374653e6c doc/licenses/Unlicense

View File

@@ -4,15 +4,28 @@
#
################################################################################
FRR_VERSION = 8.5.4
FRR_VERSION = 9.1.1
FRR_SITE = $(call github,FRRouting,frr,frr-$(FRR_VERSION))
FRR_LICENSE = GPL-2.0
FRR_LICENSE_FILES = COPYING
FRR_LICENSE = GPL-2.0+
FRR_LICENSE_FILES = \
COPYING \
doc/licenses/BSD-2-Clause \
doc/licenses/BSD-3-Clause \
doc/licenses/GPL-2.0 \
doc/licenses/ISC \
doc/licenses/LGPL-2.1 \
doc/licenses/LicenseRef-Skiplist-BSD-0-Clause \
doc/licenses/MIT \
doc/licenses/Unlicense
# tools/gcc-plugins/frr-format.[ch] is not enabled by frr's ./configure, so gcc's
# GPLv3 does not apply
# doc/licenses/GPL-3.0
FRR_CPE_ID_VENDOR = linuxfoundation
FRR_CPE_ID_PRODUCT = free_range_routing
FRR_AUTORECONF = YES
FRR_DEPENDENCIES = host-frr readline json-c libyang \
protobuf-c \
$(if $(BR2_PACKAGE_C_ARES),c-ares) \
$(if $(BR2_PACKAGE_LIBXCRYPT),libxcrypt)
@@ -22,6 +35,8 @@ FRR_CONF_ENV = \
ac_cv_lib_cunit_CU_initialize_registry=no \
CFLAGS="$(TARGET_CFLAGS) -DFRR_XREF_NO_NOTE"
# Do not enable -fplugin=frr-format for production, see doc/developer/workflow.rst,
# it is only intended for FRR's developments
FRR_CONF_OPTS = --with-clippy=$(HOST_DIR)/bin/clippy \
--sysconfdir=/etc/frr \
--localstatedir=/var/run/frr \