Although we generally like URI support, it is worth having explicit
coverage in our CI that we can build without it for those who want
minimal dependencies. Similar to the previous patch, this is easiest
to do with another build.sh variable. Doing so found two additional
tests that need skipping (comparable to how we already skipped similar
tests in sh/).
---
ci/build.sh | 8 +++++++-
ci/gitlab/builds.yml | 20 ++++++++++++++++++++
ci/manifest.yml | 5 +++++
dump/dump-data.sh | 1 +
dump/dump-pattern.sh | 1 +
5 files changed, 34 insertions(+), 1 deletion(-)
diff --git a/ci/build.sh b/ci/build.sh
index eb2fcd1c..f6b710ad 100755
--- a/ci/build.sh
+++ b/ci/build.sh
@@ -72,7 +72,6 @@ main() {
CONFIG_ARGS="\
--enable-gcc-warnings \
---with-libxml2 \
"
if test skip = "$GNUTLS"
@@ -82,6 +81,13 @@ main() {
CONFIG_ARGS="$CONFIG_ARGS --with-gnutls"
fi
+ if test skip = "$LIBXML2"
+ then
+ CONFIG_ARGS="$CONFIG_ARGS --without-libxml2"
+ else
+ CONFIG_ARGS="$CONFIG_ARGS --with-libxml2"
+ fi
+
if test -n "$CROSS"
then
CONFIG_ARGS="$CONFIG_ARGS
diff --git a/ci/gitlab/builds.yml b/ci/gitlab/builds.yml
index c66f96b0..cbcd8636 100644
--- a/ci/gitlab/builds.yml
+++ b/ci/gitlab/builds.yml
@@ -227,6 +227,26 @@ x86_64-fedora-rawhide-clang-local-env:
NAME: fedora-rawhide
+x86_64-fedora-rawhide-no-libxml2-prebuilt-env:
+ extends: .native_build_job_prebuilt_env
+ needs:
+ - job: x86_64-fedora-rawhide-container
+ optional: true
+ allow_failure: false
+ variables:
+ LIBXML2: skip
+ NAME: fedora-rawhide
+
+x86_64-fedora-rawhide-no-libxml2-local-env:
+ extends: .native_build_job_local_env
+ needs: []
+ allow_failure: false
+ variables:
+ IMAGE:
registry.fedoraproject.org/fedora:rawhide
+ LIBXML2: skip
+ NAME: fedora-rawhide
+
+
x86_64-opensuse-leap-153-prebuilt-env:
extends: .native_build_job_prebuilt_env
needs:
diff --git a/ci/manifest.yml b/ci/manifest.yml
index 4c0846e1..bca17ece 100644
--- a/ci/manifest.yml
+++ b/ci/manifest.yml
@@ -49,6 +49,11 @@ targets:
variables:
CC: clang
+ - arch: x86_64
+ suffix: -no-libxml2
+ variables:
+ LIBXML2: skip
+
freebsd-12: x86_64
freebsd-13: x86_64
diff --git a/dump/dump-data.sh b/dump/dump-data.sh
index 11145b08..d902e902 100755
--- a/dump/dump-data.sh
+++ b/dump/dump-data.sh
@@ -24,6 +24,7 @@ set -x
requires nbdkit --version
requires nbdkit data --dump-plugin
requires nbdkit -U - null --run 'test "$uri" != ""'
+requires nbdsh -c 'exit(not h.supports_uri())'
# This test requires nbdkit >= 1.22.
minor=$( nbdkit --dump-config | grep ^version_minor | cut -d= -f2 )
diff --git a/dump/dump-pattern.sh b/dump/dump-pattern.sh
index e2188ac8..3a89ff19 100755
--- a/dump/dump-pattern.sh
+++ b/dump/dump-pattern.sh
@@ -24,6 +24,7 @@ set -x
requires nbdkit --version
requires nbdkit pattern --dump-plugin
requires nbdkit -U - null --run 'test "$uri" != ""'
+requires nbdsh -c 'exit(not h.supports_uri())'
output=dump-pattern.out
rm -f $output
--
2.37.3