gnu: Add quagga.

* gnu/packages/networking.scm (quagga): New variable.
* gnu/packages/patches/quagga-reproducible-build.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
This commit is contained in:
Gábor Boskovits 2017-06-26 17:51:33 +02:00 committed by Marius Bakke
parent 26599d692c
commit c2700e785b
No known key found for this signature in database
GPG key ID: A2A06DF2A33A54FA
3 changed files with 58 additions and 0 deletions

View file

@ -14,6 +14,7 @@
# Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> # Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
# Copyright © 2017 Clément Lassieur <clement@lassieur.org> # Copyright © 2017 Clément Lassieur <clement@lassieur.org>
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> # Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
# Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
# #
# This file is part of GNU Guix. # This file is part of GNU Guix.
# #
@ -961,6 +962,7 @@ dist_patch_DATA = \
%D%/packages/patches/qemu-CVE-2017-9524.patch \ %D%/packages/patches/qemu-CVE-2017-9524.patch \
%D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qt4-ldflags.patch \
%D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/qtscript-disable-tests.patch \
%D%/packages/patches/quagga-reproducible-build.patch \
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \
%D%/packages/patches/rapicorn-isnan.patch \ %D%/packages/patches/rapicorn-isnan.patch \
%D%/packages/patches/raptor2-heap-overflow.patch \ %D%/packages/patches/raptor2-heap-overflow.patch \

View file

@ -16,6 +16,7 @@
;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -51,6 +52,7 @@ (define-module (gnu packages networking)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
#:use-module (gnu packages dejagnu)
#:use-module (gnu packages flex) #:use-module (gnu packages flex)
#:use-module (gnu packages gettext) #:use-module (gnu packages gettext)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
@ -64,6 +66,7 @@ (define-module (gnu packages networking)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages readline)
#:use-module (gnu packages textutils) #:use-module (gnu packages textutils)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages valgrind) #:use-module (gnu packages valgrind)
@ -1308,3 +1311,34 @@ (define-public spiped
socket on a different system). This is similar to 'ssh -L' functionality, but socket on a different system). This is similar to 'ssh -L' functionality, but
does not use SSH and requires a pre-shared symmetric key.") does not use SSH and requires a pre-shared symmetric key.")
(license license:bsd-2))) (license license:bsd-2)))
(define-public quagga
(package
(name "quagga")
(version "1.2.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/quagga/quagga-"
version ".tar.gz"))
(sha256
(base32
"1kgvcr9cfgys5asvb5lh5h95silkr624apqm5x68xva19xfvmpda"))
(patches
(search-patches "quagga-reproducible-build.patch"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config",pkg-config)
("perl",perl)
("dejagnu",dejagnu)))
(inputs `(("readline",readline)
("c-ares",c-ares)))
(synopsis "Routing Software Suite")
(description "Quagga is a routing software suite, providing implementations
of OSPFv2, OSPFv3, RIP v1 and v2, RIPng and BGP-4 for Unix platforms.
The Quagga architecture consists of a core daemon, @command{zebra}, which
acts as an abstraction layer to the underlying Unix kernel and presents the
Zserv API over a Unix or TCP stream to Quagga clients. It is these Zserv
clients which typically implement a routing protocol and communicate routing
updates to the zebra daemon.")
(home-page "http://www.nongnu.org/quagga/")
(license license:gpl2+)))

View file

@ -0,0 +1,22 @@
Make sure, that vtysh_cmd.c is deterministically generated.
--- a/vtysh/extract.pl.in 2017-03-10 13:55:06.000000000 +0100
+++ b/vtysh/extract.pl.in 2017-06-24 00:51:56.460000000 +0200
@@ -214,7 +214,7 @@
}
# Output DEFSH
-foreach (keys %live) {
+foreach (sort keys %live) {
my ($proto);
my ($key);
$key = $live{$_};
@@ -229,7 +229,7 @@
{
EOF
-foreach (keys %odefun) {
+foreach (sort keys %odefun) {
my ($node, $str) = (split (/,/));
$cmd = $ocmd{$_};
$cmd =~ s/_cmd/_cmd_vtysh/;