ax_code_coverage: Ubuntu Zesty: Enable use of lcov 1.13

This works around the bug where Ubuntu Zesty's autoconf-archive package
at version 20160916-1 doesn't support Zesty's lcov package, which is
1.13. This leads to a non-zero exit by ./configure when enabling
code-coverage support on Zesty.

Revert when Zesty isn't broken.

Change-Id: I4050abdf9ea1b0ce7e131f334847f8f57a7281cc
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
diff --git a/bootstrap.sh b/bootstrap.sh
index a3a3932..5a6c34d 100755
--- a/bootstrap.sh
+++ b/bootstrap.sh
@@ -13,6 +13,29 @@
 fi
 
 case "${BOOTSTRAP_MODE}" in
+    dev)
+        AX_CODE_COVERAGE_PATH="$(aclocal --print-ac-dir)"/ax_code_coverage.m4
+        if [ ! -e ${AX_CODE_COVERAGE_PATH} ];
+        then
+            echo "Failed to find AX_CODE_COVERAGE macro file at ${AX_CODE_COVERAGE_PATH}" 1>&2
+            exit 1
+        fi
+        LCOV_VERSION=$(lcov --version | tr ' ' '\n' | tail -1)
+
+        # Ubuntu Zesty ships with lcov v1.13, but Zesty's autoconf-archive
+        # package (the provider of the AX_CODE_COVERAGE macro) doesn't support
+        # it.
+        #
+        # sed-patch ax_code_coverage.m4 as it's GPLv3, and this is an Apache v2
+        # licensed repository. The licenses are not compatible in our desired
+        # direction[1].
+        #
+        # [1] https://www.apache.org/licenses/GPL-compatibility.html
+
+        cp ${AX_CODE_COVERAGE_PATH} m4/
+        sed -ri 's|(lcov_version_list=)"([ 0-9.]+)"$|\1"'${LCOV_VERSION}'"|' \
+            m4/ax_code_coverage.m4
+        ;;
     clean)
         test -f Makefile && make maintainer-clean
         test -d linux && find linux -type d -empty | xargs -r rm -rf