debian: make cross-compile work

This allows e.g. "sbuild --host=arm64" to build packages for other
architectures on, say, fat amd64 servers.  As a side effect, the Debian
build uses a separate builddir, which helps noting issues on that front.

Signed-off-by: David Lamparter <equinox@diac24.net>
(cherry-picked from commit d1312e009b)
This commit is contained in:
David Lamparter 2020-04-06 19:28:56 +02:00 committed by David Lamparter
parent 05a13c2cd4
commit a3591eaefa
4 changed files with 30 additions and 25 deletions

8
debian/control vendored
View file

@ -25,10 +25,10 @@ Build-Depends: bison,
libyang2-dev,
lsb-base,
pkg-config,
python3,
python3-dev,
python3-pytest <!nocheck>,
python3-sphinx,
python3:native,
python3-dev:native,
python3-pytest:native <!nocheck>,
python3-sphinx:native,
texinfo (>= 4.7),
lua5.3 <pkg.frr.lua>,
liblua5.3-dev <pkg.frr.lua>

2
debian/frr-doc.info vendored
View file

@ -1 +1 @@
doc/user/_build/texinfo/frr.info
build/doc/user/_build/texinfo/frr.info

32
debian/frr.manpages vendored
View file

@ -1,16 +1,16 @@
doc/manpages/_build/man/frr-bgpd.8
doc/manpages/_build/man/frr-eigrpd.8
doc/manpages/_build/man/frr-fabricd.8
doc/manpages/_build/man/frr-isisd.8
doc/manpages/_build/man/frr-ldpd.8
doc/manpages/_build/man/frr-nhrpd.8
doc/manpages/_build/man/frr-ospf6d.8
doc/manpages/_build/man/frr-ospfd.8
doc/manpages/_build/man/frr-pimd.8
doc/manpages/_build/man/frr-ripd.8
doc/manpages/_build/man/frr-ripngd.8
doc/manpages/_build/man/frr-watchfrr.8
doc/manpages/_build/man/frr-zebra.8
doc/manpages/_build/man/frr.1
doc/manpages/_build/man/mtracebis.8
doc/manpages/_build/man/vtysh.1
build/doc/manpages/_build/man/frr-bgpd.8
build/doc/manpages/_build/man/frr-eigrpd.8
build/doc/manpages/_build/man/frr-fabricd.8
build/doc/manpages/_build/man/frr-isisd.8
build/doc/manpages/_build/man/frr-ldpd.8
build/doc/manpages/_build/man/frr-nhrpd.8
build/doc/manpages/_build/man/frr-ospf6d.8
build/doc/manpages/_build/man/frr-ospfd.8
build/doc/manpages/_build/man/frr-pimd.8
build/doc/manpages/_build/man/frr-ripd.8
build/doc/manpages/_build/man/frr-ripngd.8
build/doc/manpages/_build/man/frr-watchfrr.8
build/doc/manpages/_build/man/frr-zebra.8
build/doc/manpages/_build/man/frr.1
build/doc/manpages/_build/man/mtracebis.8
build/doc/manpages/_build/man/vtysh.1

13
debian/rules vendored
View file

@ -36,7 +36,7 @@ endif
export PYTHON=python3
%:
dh $@
dh $@ -Bbuild
override_dh_auto_configure:
$(shell dpkg-buildflags --export=sh); \
@ -78,9 +78,9 @@ override_dh_auto_install:
sed -e '1c #!/usr/bin/python3' -i debian/tmp/usr/lib/frr/generate_support_bundle.py
# let dh_systemd_* and dh_installinit do their thing automatically
cp tools/frr.service debian/frr.service
cp tools/frr@.service debian/frr@.service
cp tools/frrinit.sh debian/frr.init
cp build/tools/frr.service debian/frr.service
cp build/tools/frr@.service debian/frr@.service
cp build/tools/frrinit.sh debian/frr.init
-rm -f debian/tmp/usr/lib/frr/frr
# install config files
@ -114,6 +114,11 @@ override_dh_makeshlibs:
override_dh_missing:
dh_missing --fail-missing
ifneq ($(filter nocheck,$(DEB_BUILD_PROFILES) $(DEB_BUILD_OPTIONS)),)
override_dh_auto_test:
true
endif
override_dh_auto_clean:
# we generally do NOT want a full distclean since that wipes both
# debian/changelog and config.version