]> git.proxmox.com Git - mirror_frr.git/blobdiff - debianpkg/rules
Merge pull request #2979 from qlyoung/improve-readme
[mirror_frr.git] / debianpkg / rules
index 574f448dffe997e434c8f5e097a59bb64a86dc45..811d45bc0b065432c616c8b9577fca6997d1e563 100755 (executable)
 WANT_LDP ?= 1
 WANT_PIM ?= 1
 WANT_OSPFAPI ?= 1
-WANT_TCP_ZEBRA ?= 0
 WANT_BGP_VNC ?= 1
 WANT_CUMULUS_MODE ?= 0
 WANT_MULTIPATH ?= 1
 WANT_SNMP ?= 0
+WANT_RPKI ?= 0
+WANT_BFD ?= 1
 
+# NOTES:
+#
+# If you use WANT_RPKI, then there is a new dependency for librtr0 package
+#    and a build dependency of the librtr-dev package.
+#    While the librtr0 is added to the depenencies automatically, the build
+#    dependency can't be changed dynamically and building will fail if the
+#    librtr-dev isn't installed during package build
+#    Tested versions of both packages can be found at
+#    https://ci1.netdef.org/browse/RPKI-RTRLIB/latestSuccessful/artifact
+#
 # If multipath is enabled (WANT_MULTIPATH=1), then set number of multipaths here
-# Please be aware that 0 is NOT disabled, but treated as unlimited
+#    Please be aware that 0 is NOT disabled, but treated as unlimited
 
 MULTIPATH ?= 256
 
@@ -27,6 +38,9 @@ MULTIPATH ?= 256
 WANT_FRR_USER ?= frr
 WANT_FRR_VTY_GROUP ?= frrvty
 
+# Don't build PDF docs by default
+GENERATE_PDF ?= 0
+
 #
 ####################################
 
@@ -60,12 +74,6 @@ else
   USE_OSPFAPI=--enable-ospfapi=no
 endif
 
-ifeq ($(WANT_TCP_ZEBRA),1)
-  USE_TCP_ZEBRA=--enable-tcp-zebra
-else
-  USE_TCP_ZEBRA=--disable-tcp-zebra
-endif
-
 ifeq ($(WANT_BGP_VNC), 1)
   USE_BGP_VNC=--enable-bgp-vnc=yes
 else
@@ -88,6 +96,18 @@ else
   USE_CUMULUS=--enable-cumulus=no
 endif
 
+ifeq ($(WANT_RPKI), 1)
+  USE_RPKI=--enable-rpki
+else
+  USE_RPKI=--disable-rpki
+endif
+
+ifeq ($(WANT_BFD), 1)
+  USE_BFD=--enable-bfdd
+else
+  USE_BFD=--disable-bfdd
+endif
+
 ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
   DEBIAN_JOBS := $(subst parallel=,,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
 endif
@@ -99,6 +119,13 @@ endif
 %:
        dh $@ --with=systemd,autoreconf --parallel --dbg-package=frr-dbg --list-missing
 
+override_dh_gencontrol:
+ifeq ($(WANT_RPKI), 1)
+       dh_gencontrol -- -Vdist:Depends="librtr0 (>= 0.5)"
+else
+       dh_gencontrol
+endif
+
 override_dh_auto_configure:
        # Frr needs /proc to check some BSD vs Linux specific stuff.
        # Else it fails with an obscure error message pointing out that
@@ -118,7 +145,6 @@ override_dh_auto_configure:
                $(USE_OSPFAPI) \
                $(USE_MULTIPATH) \
                $(USE_LDP) \
-               $(USE_TCP_ZEBRA) \
                --enable-fpm \
                $(USE_FRR_USER) $(USE_FRR_GROUP) \
                $(USE_FRR_VTY_GROUP) \
@@ -132,22 +158,18 @@ override_dh_auto_configure:
                $(USE_PIM) \
                --enable-dependency-tracking \
                $(USE_BGP_VNC) \
+               $(USE_RPKI) \
+               $(USE_BFD) \
                $(shell dpkg-buildflags --export=configure); \
        fi
 
 override_dh_auto_build:
-       #dh_auto_build
-       $(MAKE)
-       dh_auto_build -- -C doc draft-zebra-00.txt
-
-
        # doc/ is a bit crazy
 ifeq ($(GENERATE_PDF), 1)
-       dh_auto_build -- -C doc frr.pdf || true # pdfetex fails with exit code 1 but still produces a good looking .pdf
+       dh_auto_build -- -C doc pdf
 endif
-       rm -vf doc/frr.info
-       dh_auto_build -- -C doc frr.info
-       rm -vf doc/frr.info.html*
+       rm -vf doc/user/_build/texinfo/frr.info
+       dh_auto_build -- -C doc info
 
 override_dh_auto_test:
 
@@ -164,12 +186,8 @@ override_dh_auto_install:
        mkdir -p debian/tmp/etc/frr/
        perl -pi -e 's#^!log file #!log file /var/log/frr/#' debian/tmp/usr/share/doc/frr/examples/*sample*
 
-       # installing the Frr specific SNMP MIB
-ifeq ($(WANT_SNMP), 1)
-       install -D -m 644 ./zebra/GNOME-PRODUCT-ZEBRA-MIB debian/tmp/usr/share/snmp/mibs/GNOME-PRODUCT-ZEBRA-MIB
-else
+       # leftover from previously shipping SMUX client OID MIB
        mkdir -p debian/tmp/usr/share/snmp/mibs/
-endif
 
        # cleaning .la files
        sed -i "/dependency_libs/ s/'.*'/''/" debian/tmp/usr/lib/*.la
@@ -183,7 +201,7 @@ override_dh_systemd_enable:
 
 # backports
 SRCPKG = frr
-KNOWN_BACKPORTS = debian8 debian9 ubuntu12.04 ubuntu14.04 ubuntu16.04 ubuntu17.10
+KNOWN_BACKPORTS = debian8 debian9 ubuntu12.04 ubuntu14.04 ubuntu16.04 ubuntu17.10 ubuntu18.04
 DEBIAN_VERSION := $(shell dh_testdir && \
                dpkg-parsechangelog -c1 < debian/changelog | \
                sed -rn 's/^Version: ?//p')