On Thu, Mar 26, 2020 at 04:26:11PM -0500, Eric Blake wrote:
nbdkit_LDADD = \ + ../lib/libnbdkit.la \
Is that ../ going to bite us on RHEL 7's older Automake? Do we need to uses $(top_builddir) instead?
TBH I wasn't sure, but I have compiled the latest version of the patch series on RHEL 7 just now and run ‘make check’ and everything is fine.
+++ b/lib/lib.h @@ -0,0 +1,48 @@
+#ifndef NBDKIT_LIB_H +#define NBDKIT_LIB_H + +#include <stdarg.h> +#include <stdbool.h> +#include <sys/types.h> +#include <sys/socket.h> + +/* Defines the private function which is used by the server to + * initialize libnbdkit.so at runtime. This ABI may change at any + * time, which is why nbdkit and the corresponding libnbdkit.so must + * always be shipped together. + */ +extern void libnbdkit_private_init (const char *expected_version); +
Should this read "may change at any time, other than the first parameter for expected_version, which is why..."?
So I think that we should not make any promises at all about this ABI since it is entirely private and should never be a concern for people using nbdkit properly through the publicly defined APIs. (It may be more of an issue if nbdkit is not properly packaged but I hope we have good enough relations with the distros so we can avoid that.) Thanks for the reviews. Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com virt-df lists disk usage of guests without needing to install any software inside the virtual machine. Supports Linux and Windows. http://people.redhat.com/~rjones/virt-df/