aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2019-07-12 23:16:54 +0400
committerPaolo Bonzini <pbonzini@redhat.com>2020-08-21 06:30:11 -0400
commit5ee24e78f5af0e4be7c6c7192541ca5fd7b0cf96 (patch)
tree0cf5eaa258e764a02bfbae311e6ac0499d0705ec
parentea458960ec37856a7c50337ae3c693022154aaf7 (diff)
contrib/ivshmem: convert to meson
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--Makefile9
-rw-r--r--Makefile.objs2
-rwxr-xr-xconfigure3
-rw-r--r--contrib/ivshmem-client/Makefile.objs1
-rw-r--r--contrib/ivshmem-client/meson.build4
-rw-r--r--contrib/ivshmem-server/Makefile.objs1
-rw-r--r--contrib/ivshmem-server/meson.build4
-rw-r--r--meson.build5
8 files changed, 13 insertions, 16 deletions
diff --git a/Makefile b/Makefile
index ed6494b771..e16cbe6191 100644
--- a/Makefile
+++ b/Makefile
@@ -303,8 +303,6 @@ dummy := $(call unnest-vars,, \
chardev-obj-y \
qga-obj-y \
elf2dmp-obj-y \
- ivshmem-client-obj-y \
- ivshmem-server-obj-y \
qga-vss-dll-obj-y \
block-obj-y \
block-obj-m \
@@ -517,13 +515,6 @@ endif
elf2dmp$(EXESUF): $(elf2dmp-obj-y)
$(call LINK, $^)
-ifdef CONFIG_IVSHMEM
-ivshmem-client$(EXESUF): $(ivshmem-client-obj-y) $(COMMON_LDADDS)
- $(call LINK, $^)
-ivshmem-server$(EXESUF): $(ivshmem-server-obj-y) $(COMMON_LDADDS)
- $(call LINK, $^)
-endif
-
module_block.h: $(SRC_PATH)/scripts/modules/module_block.py config-host.mak
$(call quiet-command,$(PYTHON) $< $@ \
$(addprefix $(SRC_PATH)/,$(patsubst %.mo,%.c,$(block-obj-m))), \
diff --git a/Makefile.objs b/Makefile.objs
index 2f2d4b2066..336a684ff3 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -104,7 +104,5 @@ qga-vss-dll-obj-y = qga/
######################################################################
# contrib
elf2dmp-obj-y = contrib/elf2dmp/
-ivshmem-client-obj-$(CONFIG_IVSHMEM) = contrib/ivshmem-client/
-ivshmem-server-obj-$(CONFIG_IVSHMEM) = contrib/ivshmem-server/
######################################################################
diff --git a/configure b/configure
index 4d8936ee59..03f4dd69a9 100755
--- a/configure
+++ b/configure
@@ -6729,9 +6729,6 @@ if test "$want_tools" = "yes" ; then
if [ "$linux" = "yes" -o "$bsd" = "yes" -o "$solaris" = "yes" ] ; then
tools="qemu-nbd\$(EXESUF) qemu-storage-daemon\$(EXESUF) $tools"
fi
- if [ "$ivshmem" = "yes" ]; then
- tools="ivshmem-client\$(EXESUF) ivshmem-server\$(EXESUF) $tools"
- fi
if [ "$curl" = "yes" ]; then
tools="elf2dmp\$(EXESUF) $tools"
fi
diff --git a/contrib/ivshmem-client/Makefile.objs b/contrib/ivshmem-client/Makefile.objs
deleted file mode 100644
index bfab2d20dd..0000000000
--- a/contrib/ivshmem-client/Makefile.objs
+++ /dev/null
@@ -1 +0,0 @@
-ivshmem-client-obj-y = ivshmem-client.o main.o
diff --git a/contrib/ivshmem-client/meson.build b/contrib/ivshmem-client/meson.build
new file mode 100644
index 0000000000..1b171efb4f
--- /dev/null
+++ b/contrib/ivshmem-client/meson.build
@@ -0,0 +1,4 @@
+executable('ivshmem-client', files('ivshmem-client.c', 'main.c'),
+ dependencies: glib,
+ build_by_default: targetos == 'linux',
+ install: false)
diff --git a/contrib/ivshmem-server/Makefile.objs b/contrib/ivshmem-server/Makefile.objs
deleted file mode 100644
index c060dd3698..0000000000
--- a/contrib/ivshmem-server/Makefile.objs
+++ /dev/null
@@ -1 +0,0 @@
-ivshmem-server-obj-y = ivshmem-server.o main.o
diff --git a/contrib/ivshmem-server/meson.build b/contrib/ivshmem-server/meson.build
new file mode 100644
index 0000000000..3a53942201
--- /dev/null
+++ b/contrib/ivshmem-server/meson.build
@@ -0,0 +1,4 @@
+executable('ivshmem-server', files('ivshmem-server.c', 'main.c'),
+ dependencies: [qemuutil, rt],
+ build_by_default: targetos == 'linux',
+ install: false)
diff --git a/meson.build b/meson.build
index 71ef66e1d6..c1078b6759 100644
--- a/meson.build
+++ b/meson.build
@@ -94,6 +94,7 @@ libcap_ng = not_found
if 'CONFIG_LIBCAP_NG' in config_host
libcap_ng = declare_dependency(link_args: config_host['LIBCAP_NG_LIBS'].split())
endif
+rt = cc.find_library('rt', required: false)
libiscsi = not_found
if 'CONFIG_LIBISCSI' in config_host
libiscsi = declare_dependency(compile_args: config_host['LIBISCSI_CFLAGS'].split(),
@@ -283,6 +284,10 @@ if have_tools
subdir('contrib/vhost-user-input')
subdir('contrib/vhost-user-scsi')
endif
+ if 'CONFIG_IVSHMEM' in config_host
+ subdir('contrib/ivshmem-client')
+ subdir('contrib/ivshmem-server')
+ endif
endif
subdir('tools')