Skip to content

Package lmdb-master-sys

Given the struggle of bending the existing lmdb-sys (which is only used by lmdb, itself having no users) to make heed to build, let's package the lmdb-master-sys so heed gets the API it expects.

However, this crate relies on a vendored copy of liblmdb and builds the library itself, enabling (or not) certain compilation flags based on features. As I'd rather use the Debian-packaged lib, which doesn't have those flags (not present in the latest upstream release anyway) enabled, I patched the crate to remove those features and only rely on default compilation options.

This also requires adding a dependency on pkg-config in order to properly link against the shared lib, instead of the static/vendored lib this crate expects.

There is one remaining issue: the "bindgen" feature allows to re-generate the lib bindings when building a dependent package; however, due to Debian processes, it tries to do so inside our cargo registry under /usr/share, which fails as it lacks permissions to write there. This is not an issue for building heed, so I guess this can be left as-is.

Note: once this is uploaded, we can drop lmdb and lmdb-sys as they currently have no consumer outside of heed.

/cc @werdahias as I'd very much like to have your opinion on that one.

Merge request reports

Loading