Skip to content

Commit

Permalink
debian: Add option to build pkg with grpc support
Browse files Browse the repository at this point in the history
Signed-off-by: Martin Winter <[email protected]>
  • Loading branch information
mwinter-osr committed Jun 20, 2024
1 parent f771251 commit 17fdfe9
Show file tree
Hide file tree
Showing 5 changed files with 51 additions and 1 deletion.
16 changes: 15 additions & 1 deletion debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,11 @@ Build-Depends: bison,
python3-sphinx:native,
texinfo (>= 4.7),
lua5.3 <pkg.frr.lua>,
liblua5.3-dev <pkg.frr.lua>
liblua5.3-dev <pkg.frr.lua>,
libgrpc-dev (>=1.16.1) <pkg.frr.grpc>,
libgrpc++-dev (>=1.16.1) <pkg.frr.grpc>,
protobuf-compiler (>=3.6.1) <pkg.frr.grpc>,
protobuf-compiler-grpc (>=1.16.1) <pkg.frr.grpc>
Standards-Version: 4.5.0.3
Homepage: https://www.frrouting.org/
Vcs-Browser: https://github.com/FRRouting/frr/tree/debian/master
Expand Down Expand Up @@ -136,3 +140,13 @@ Description: FRRouting suite - Python tools
.
Without this package installed, "reload" (as a systemd or init script
invocation) will not work for the FRR daemons.

Package: frr-grpc
Architecture: linux-any
Depends: frr (= ${binary:Version}),
${misc:Depends},
${shlibs:Depends}
Description: FRRouting suite - GRPC interface
This provides the GRPC interface to the daemons.
Build-Profiles: <pkg.frr.grpc>

25 changes: 25 additions & 0 deletions debian/copyright
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@ Upstream-Contact: [email protected], [email protected]
Source: https://www.frrouting.org/

Files: *
Comment: Note: GPL Versions of FRR binaries
If GRPC module is installed then please be aware that the
combination of the GRPC (licensed under Apache License) and
FRR (Licensed under GPLv2+) will force the resulting grpc
modules and related binaries to GPLv3
Impacted binary files: frr/libfrrgrpc_pb.* frr/modules/grpc.so
FRR built or used without GRPC is not impacted
Copyright: 1996-2003 by the original Zebra authors:
Kunihiro Ishiguro <[email protected]>
Toshiaki Takada <[email protected]>
Expand Down Expand Up @@ -377,6 +384,24 @@ License: LGPL-2.1+
License version 2.1 can be found in the file
`/usr/share/common-licenses/LGPL-2.1'.

License: GPL-3
This package is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this package; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
.
On Debian systems, the complete text of the GNU General
Public License can be found in `/usr/share/common-licenses/GPL-3'.

License: BSD-0-clause
Redistribution and use in source and binary forms, with or without
modification, are permitted.
Expand Down
2 changes: 2 additions & 0 deletions debian/frr-grpc.install
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
usr/lib/*/frr/libfrrgrpc_pb.*
usr/lib/*/frr/modules/grpc.so
7 changes: 7 additions & 0 deletions debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,12 @@ else
CONF_PIM6=--disable-pim6d
endif

ifeq ($(filter pkg.frr.grpc,$(DEB_BUILD_PROFILES)),)
CONF_GRPC=--disable-grpc
else
CONF_GRPC=--enable-grpc
endif

export PYTHON=python3

%:
Expand All @@ -51,6 +57,7 @@ override_dh_auto_configure:
$(CONF_RPKI) \
$(CONF_LUA) \
$(CONF_PIM6) \
$(CONF_GRPC) \
--with-libpam \
--enable-doc \
--enable-doc-html \
Expand Down
2 changes: 2 additions & 0 deletions doc/developer/packaging-debian.rst
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,8 @@ buster.)
+----------------+-------------------+-----------------------------------------+
| pkg.frr.pim6d | pkg.frr.nopim6d | builds pim6d (default enabled) |
+----------------+-------------------+-----------------------------------------+
| pkg.frr.grpc | pkg.frr.nogrpc | builds with grpc support (default: no) |
+----------------+-------------------+-----------------------------------------+

* the ``-uc -us`` options to disable signing the packages with your GPG key

Expand Down

0 comments on commit 17fdfe9

Please sign in to comment.