From d611c31fbf132aac329db8e19e67076cfdd0d540 Mon Sep 17 00:00:00 2001 From: Runar Borge Date: Thu, 25 Jun 2020 20:30:44 +0200 Subject: T2638: FRR: FRR-reload needs patching to work on 7.3.0 Because of FRR bug 6062 (https://github.com/FRRouting/frr/issues/6062) frr-reload in frr 7.3.0 and 7.3.1 needs to be patched to work properly. without this patch frr-reload will allways compare against a blank/empty running configuration. --- packages/frr/build-frr.sh | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100755 packages/frr/build-frr.sh (limited to 'packages/frr/build-frr.sh') diff --git a/packages/frr/build-frr.sh b/packages/frr/build-frr.sh new file mode 100755 index 00000000..59134832 --- /dev/null +++ b/packages/frr/build-frr.sh @@ -0,0 +1,41 @@ +#!/bin/sh +CWD=$(pwd) +set -e + +FRR_SRC=frr + +if [ ! -d ${FRR_SRC} ]; then + echo "FRR source directory does not exists, please 'git clone'" + exit 1 +fi + +# VyOS requires some small FRR Patches - apply them here +# It's easier to habe them here and make use of the upstream +# repository instead of maintaining a full Fork. +# Saving time/resources is essential :-) +cd ${FRR_SRC} + +PATCH_DIR=${CWD}/patches + +for patch in $(ls ${PATCH_DIR}) +do + echo "I: Apply FRR patch: ${PATCH_DIR}/${patch}" + patch -p1 < ${PATCH_DIR}/${patch} + git add $(lsdiff ${PATCH_DIR}/${patch} | sed -e 's#^[ab]/##') + if [ -z "$(git config --list | grep -e user.name -e user.email)" ]; then + # if git user.name and user.email is not set, -c sets temorary user.name and + # user.email variables as these is not set in the build container by default. + git -c user.name="VyOS CI" -c user.email="ci@vyos.io" commit -m "Applied patch: ${patch}" --author "VyOS CI " + else + git commit -m "Applied patch: ${patch}" --author "VyOS CI " + fi + +done + +# Prepare FRR source for building +echo "I: Prepare FRR source for building" +./tools/tarsource.sh -V + +# Build Debian FRR package +echo "I: Build Debian FRR Package" +dpkg-buildpackage -us -uc -Ppkg.frr.rtrlib -- cgit v1.2.3