build-unit-test-docker: force libgpiod 1.x series
Latest ubuntu switched to libgpiod 2.x, which we do not support
yet in OpenBMC. Convert from using a deb to manually building the
1.x package.
Tested:
Ran against entity-manager and confirmed that subproject build was
no longer selected.
```
Run-time dependency libgpiodcxx found: YES 1.6.5
```
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I556574c3cf728932e90f98286871a365d92c91f9
diff --git a/scripts/build-unit-test-docker b/scripts/build-unit-test-docker
index 8def57c..4840848 100755
--- a/scripts/build-unit-test-docker
+++ b/scripts/build-unit-test-docker
@@ -194,6 +194,14 @@
"-Dvalijson_INSTALL_HEADERS=1",
],
),
+ "libgpiod": PackageDef(
+ rev="1.6.5",
+ url=(
+ lambda pkg, rev: f"https://git.kernel.org/pub/scm/libs/{pkg}/{pkg}.git/snapshot/{pkg}-{rev}.tar.gz"
+ ),
+ build_type="autogen",
+ config_flags=["--enable-bindings-cxx"],
+ ),
"open-power/pdbg": PackageDef(build_type="autoconf"),
"openbmc/gpioplus": PackageDef(
build_type="meson",
@@ -595,6 +603,8 @@
build_type = self.pkg_def["build_type"]
if build_type == "autoconf":
result += self._cmd_build_autoconf()
+ elif build_type == "autogen":
+ result += self._cmd_build_autogen()
elif build_type == "cmake":
result += self._cmd_build_cmake()
elif build_type == "custom":
@@ -623,6 +633,13 @@
result += f"make -j{proc_count} && make install"
return result
+ def _cmd_build_autogen(self) -> str:
+ options = " ".join(self.pkg_def.get("config_flags", []))
+ env = " ".join(self.pkg_def.get("config_env", []))
+ result = f"{env} ./autogen.sh {configure_flags} {options} && "
+ result += "make && make install"
+ return result
+
def _cmd_build_cmake(self) -> str:
options = " ".join(self.pkg_def.get("config_flags", []))
env = " ".join(self.pkg_def.get("config_env", []))
@@ -854,7 +871,6 @@
libcurl4-openssl-dev \
libdbus-1-dev \
libevdev-dev \
- libgpiod-dev \
libi2c-dev \
libjpeg-dev \
libjson-perl \