Make sysrepo dependency optional
This project is useful as a standalone NETCONF client, too. Do not
require sysrepo unconditionally. If not available, just build the main
NETCONF client (and a `yang-cli`, too, because it's essentially free).
The CMake setup is a wee bit complex. CMake's OPTION statement doesn't
really support tri-state dependencies, and I like automagic stuff:
- OFF for disabling stuff unconditionally, even if the deps are there,
- ON for enabling stuff, and failing if it cannot be built,
- AUTO for trying to enable stuff if possible, and gracefully disabling
it if not available
Of course this has a potential of introducing nasty surprises to the CI,
so make sure the CI fails if the sysrepo backend gets disabled for some
reason.
Change-Id: I9c38245c3eea767ad20f42240328c483b6f80dd4
diff --git a/.zuul.public.yaml b/.zuul.public.yaml
index d03af02..f8a4675 100644
--- a/.zuul.public.yaml
+++ b/.zuul.public.yaml
@@ -1,3 +1,9 @@
+- job:
+ name: f32-gcc-netconf-cli-no-sysrepo
+ description: |
+ Build a minimal version without sysrepo or the test suite
+ parent: f32-gcc
+
- project:
check:
jobs:
@@ -7,6 +13,8 @@
requires: CzechLight-deps-f32-clang-asan-ubsan
- f32-clang-tsan:
requires: CzechLight-deps-f32-clang-tsan
+ - f32-gcc-netconf-cli-no-sysrepo:
+ requires: CzechLight-deps-f32-gcc
- f32-cpp-coverage-diff:
voting: false
- clang-format: