configure, meson: move vde detection to meson
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20211007130829.632254-11-pbonzini@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
ff66f3e55b
commit
e17239993d
35
configure
vendored
35
configure
vendored
@ -301,7 +301,7 @@ libudev="auto"
|
||||
mpath="auto"
|
||||
vnc="auto"
|
||||
sparse="auto"
|
||||
vde="$default_feature"
|
||||
vde="auto"
|
||||
vnc_sasl="auto"
|
||||
vnc_jpeg="auto"
|
||||
vnc_png="auto"
|
||||
@ -1022,9 +1022,9 @@ for opt do
|
||||
;;
|
||||
--enable-slirp=system) slirp="system"
|
||||
;;
|
||||
--disable-vde) vde="no"
|
||||
--disable-vde) vde="disabled"
|
||||
;;
|
||||
--enable-vde) vde="yes"
|
||||
--enable-vde) vde="enabled"
|
||||
;;
|
||||
--disable-netmap) netmap="no"
|
||||
;;
|
||||
@ -2903,30 +2903,6 @@ EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
##########################################
|
||||
# vde libraries probe
|
||||
if test "$vde" != "no" ; then
|
||||
vde_libs="-lvdeplug"
|
||||
cat > $TMPC << EOF
|
||||
#include <libvdeplug.h>
|
||||
int main(void)
|
||||
{
|
||||
struct vde_open_args a = {0, 0, 0};
|
||||
char s[] = "";
|
||||
vde_open(s, s, &a);
|
||||
return 0;
|
||||
}
|
||||
EOF
|
||||
if compile_prog "" "$vde_libs" ; then
|
||||
vde=yes
|
||||
else
|
||||
if test "$vde" = "yes" ; then
|
||||
feature_not_found "vde" "Install vde (Virtual Distributed Ethernet) devel"
|
||||
fi
|
||||
vde=no
|
||||
fi
|
||||
fi
|
||||
|
||||
##########################################
|
||||
# netmap support probe
|
||||
# Apart from looking for netmap headers, we make sure that the host API version
|
||||
@ -4199,10 +4175,6 @@ if test "$slirp_smbd" = "yes" ; then
|
||||
echo "CONFIG_SLIRP_SMBD=y" >> $config_host_mak
|
||||
echo "CONFIG_SMBD_COMMAND=\"$smbd\"" >> $config_host_mak
|
||||
fi
|
||||
if test "$vde" = "yes" ; then
|
||||
echo "CONFIG_VDE=y" >> $config_host_mak
|
||||
echo "VDE_LIBS=$vde_libs" >> $config_host_mak
|
||||
fi
|
||||
if test "$netmap" = "yes" ; then
|
||||
echo "CONFIG_NETMAP=y" >> $config_host_mak
|
||||
fi
|
||||
@ -4752,6 +4724,7 @@ if test "$skip_meson" = no; then
|
||||
-Dalsa=$alsa -Dcoreaudio=$coreaudio -Ddsound=$dsound -Djack=$jack -Doss=$oss \
|
||||
-Dpa=$pa -Daudio_drv_list=$audio_drv_list -Dtcg_interpreter=$tcg_interpreter \
|
||||
-Dtrace_backends=$trace_backends -Dtrace_file=$trace_file -Dlinux_aio=$linux_aio \
|
||||
-Dvde=$vde \
|
||||
$cross_arg \
|
||||
"$PWD" "$source_path"
|
||||
|
||||
|
26
meson.build
26
meson.build
@ -500,9 +500,28 @@ else
|
||||
xkbcommon = dependency('xkbcommon', required: get_option('xkbcommon'),
|
||||
method: 'pkg-config', kwargs: static_kwargs)
|
||||
endif
|
||||
|
||||
vde = not_found
|
||||
if config_host.has_key('CONFIG_VDE')
|
||||
vde = declare_dependency(link_args: config_host['VDE_LIBS'].split())
|
||||
if not get_option('vde').auto() or have_system or have_tools
|
||||
vde = cc.find_library('vdeplug', has_headers: ['libvdeplug.h'],
|
||||
required: get_option('vde'),
|
||||
kwargs: static_kwargs)
|
||||
endif
|
||||
if vde.found() and not cc.links('''
|
||||
#include <libvdeplug.h>
|
||||
int main(void)
|
||||
{
|
||||
struct vde_open_args a = {0, 0, 0};
|
||||
char s[] = "";
|
||||
vde_open(s, s, &a);
|
||||
return 0;
|
||||
}''', dependencies: vde)
|
||||
vde = not_found
|
||||
if get_option('cap_ng').enabled()
|
||||
error('could not link libvdeplug')
|
||||
else
|
||||
warning('could not link libvdeplug, disabling')
|
||||
endif
|
||||
endif
|
||||
|
||||
pulse = not_found
|
||||
@ -1441,6 +1460,7 @@ config_host_data.set('CONFIG_SDL_IMAGE', sdl_image.found())
|
||||
config_host_data.set('CONFIG_SECCOMP', seccomp.found())
|
||||
config_host_data.set('CONFIG_SNAPPY', snappy.found())
|
||||
config_host_data.set('CONFIG_USB_LIBUSB', libusb.found())
|
||||
config_host_data.set('CONFIG_VDE', vde.found())
|
||||
config_host_data.set('CONFIG_VHOST_USER_BLK_SERVER', have_vhost_user_blk_server)
|
||||
config_host_data.set('CONFIG_VNC', vnc.found())
|
||||
config_host_data.set('CONFIG_VNC_JPEG', jpeg.found())
|
||||
@ -3290,7 +3310,7 @@ if targetos == 'linux'
|
||||
endif
|
||||
summary_info += {'JACK support': jack}
|
||||
summary_info += {'brlapi support': brlapi}
|
||||
summary_info += {'vde support': config_host.has_key('CONFIG_VDE')}
|
||||
summary_info += {'vde support': vde}
|
||||
summary_info += {'netmap support': config_host.has_key('CONFIG_NETMAP')}
|
||||
summary_info += {'Linux AIO support': libaio}
|
||||
summary_info += {'Linux io_uring support': linux_io_uring}
|
||||
|
@ -129,6 +129,8 @@ option('u2f', type : 'feature', value : 'auto',
|
||||
description: 'U2F emulation support')
|
||||
option('usb_redir', type : 'feature', value : 'auto',
|
||||
description: 'libusbredir support')
|
||||
option('vde', type : 'feature', value : 'auto',
|
||||
description: 'vde network backend support')
|
||||
option('virglrenderer', type : 'feature', value : 'auto',
|
||||
description: 'virgl rendering support')
|
||||
option('vnc', type : 'feature', value : 'auto',
|
||||
|
@ -20,7 +20,7 @@ softmmu_ss.add(when: 'CONFIG_TCG', if_true: files('filter-replay.c'))
|
||||
|
||||
softmmu_ss.add(when: 'CONFIG_L2TPV3', if_true: files('l2tpv3.c'))
|
||||
softmmu_ss.add(when: slirp, if_true: files('slirp.c'))
|
||||
softmmu_ss.add(when: ['CONFIG_VDE', vde], if_true: files('vde.c'))
|
||||
softmmu_ss.add(when: vde, if_true: files('vde.c'))
|
||||
softmmu_ss.add(when: 'CONFIG_NETMAP', if_true: files('netmap.c'))
|
||||
vhost_user_ss = ss.source_set()
|
||||
vhost_user_ss.add(when: 'CONFIG_VIRTIO_NET', if_true: files('vhost-user.c'), if_false: files('vhost-user-stub.c'))
|
||||
|
Loading…
Reference in New Issue
Block a user