diff options
| -rw-r--r-- | doc/developer/packaging-debian.rst | 7 | ||||
| -rwxr-xr-x | tools/build-debian-package.sh | 40 | ||||
| -rw-r--r-- | tools/subdir.am | 1 |
3 files changed, 48 insertions, 0 deletions
diff --git a/doc/developer/packaging-debian.rst b/doc/developer/packaging-debian.rst index 66339b6d1f..4ea784c0fc 100644 --- a/doc/developer/packaging-debian.rst +++ b/doc/developer/packaging-debian.rst @@ -130,6 +130,13 @@ If all worked correctly, then you should end up with the Debian packages under with the sources (``frr_*.orig.tar.gz``, ``frr_*.debian.tar.xz`` and ``frr_*.dsc``) +The build procedure can also be executed automatically using the ``tools/build-debian-package.sh`` +script. For example: + +.. code-block:: shell + + EXTRA_VERSION="-myversion" WANT_SNMP=1 WANT_CUMULUS_MODE=1 tools/build-debian-package.sh + .. _deb-backports: Debian Backports diff --git a/tools/build-debian-package.sh b/tools/build-debian-package.sh new file mode 100755 index 0000000000..73231f0aec --- /dev/null +++ b/tools/build-debian-package.sh @@ -0,0 +1,40 @@ +#!/bin/sh +# +# Written by Daniil Baturin, 2018 +# This file is public domain + +git diff-index --quiet HEAD || echo "Warning: git working directory is not clean!" + +# Set the defaults +if [ "$EXTRA_VERSION" = "" ]; then + EXTRA_VERSION="-MyDebPkgVersion" +fi + +if [ "$WANT_SNMP" = "" ]; then + WANT_SNMP=0 +fi + +if [ "$WANT_CUMULUS_MODE" = "" ]; then + WANT_CUMULUS_MODE=0 +fi + +echo "Preparing the build" +./bootstrap.sh +./configure --with-pkg-extra-version=$EXTRA_VERSION +make dist + +echo "Preparing Debian source package" +mv debianpkg debian +make -f debian/rules backports + +echo "Unpacking the source to frrpkg/" +mkdir frrpkg +cd frrpkg +tar xf ../frr_*.orig.tar.gz +cd frr* +. /etc/os-release +tar xf ../../frr_*${ID}${VERSION_ID}*.debian.tar.xz + +echo "Building the Debian package" +debuild --no-lintian --set-envvar=WANT_SNMP=$WANT_SNMP --set-envvar=WANT_CUMULUS_MODE=$WANT_CUMULUS_MODE -b -uc -us + diff --git a/tools/subdir.am b/tools/subdir.am index 602822e589..323d1222f9 100644 --- a/tools/subdir.am +++ b/tools/subdir.am @@ -26,4 +26,5 @@ EXTRA_DIST += \ tools/rrlookup.pl \ tools/zc.pl \ tools/zebra.el \ + tools/build-debian-package.sh \ # end |
