libvhost-user: add a simple link test without glib

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20201125100640.366523-8-marcandre.lureau@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
Marc-André Lureau 2020-11-25 14:06:39 +04:00 committed by Michael S. Tsirkin
parent 0df750e9d3
commit e0193568da
2 changed files with 49 additions and 0 deletions

View File

@ -0,0 +1,45 @@
/*
* A trivial unit test to check linking without glib. A real test suite should
* probably based off libvhost-user-glib instead.
*/
#include <assert.h>
#include <stdlib.h>
#include "libvhost-user.h"
static void
panic(VuDev *dev, const char *err)
{
abort();
}
static void
set_watch(VuDev *dev, int fd, int condition,
vu_watch_cb cb, void *data)
{
abort();
}
static void
remove_watch(VuDev *dev, int fd)
{
abort();
}
static const VuDevIface iface = {
0,
};
int
main(int argc, const char *argv[])
{
bool rc;
uint16_t max_queues = 2;
int socket = 0;
VuDev dev = { 0, };
rc = vu_init(&dev, max_queues, socket, panic, NULL, set_watch, remove_watch, &iface);
assert(rc == true);
vu_deinit(&dev);
return 0;
}

View File

@ -10,6 +10,10 @@ vhost_user = static_library('vhost-user',
include_directories: inc, include_directories: inc,
c_args: '-D_GNU_SOURCE') c_args: '-D_GNU_SOURCE')
executable('link-test', files('link-test.c'),
link_whole: vhost_user,
include_directories: inc)
vhost_user_glib = static_library('vhost-user-glib', vhost_user_glib = static_library('vhost-user-glib',
files('libvhost-user-glib.c'), files('libvhost-user-glib.c'),
include_directories: inc, include_directories: inc,