block: add configure options for excluding vmdk, vhdx and vpc
Let's add --enable / --disable configure options for these formats,
so that those who don't need them may not build them.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Message-Id: <20230421092758.814122-1-vsementsov@yandex-team.ru>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
diff --git a/block/meson.build b/block/meson.build
index 382bec0..13337bd 100644
--- a/block/meson.build
+++ b/block/meson.build
@@ -38,11 +38,6 @@
'snapshot-access.c',
'throttle-groups.c',
'throttle.c',
- 'vhdx-endian.c',
- 'vhdx-log.c',
- 'vhdx.c',
- 'vmdk.c',
- 'vpc.c',
'write-threshold.c',
), zstd, zlib, gnutls)
@@ -55,6 +50,19 @@
if get_option('vdi').allowed()
block_ss.add(files('vdi.c'))
endif
+if get_option('vhdx').allowed()
+ block_ss.add(files(
+ 'vhdx-endian.c',
+ 'vhdx-log.c',
+ 'vhdx.c'
+ ))
+endif
+if get_option('vmdk').allowed()
+ block_ss.add(files('vmdk.c'))
+endif
+if get_option('vpc').allowed()
+ block_ss.add(files('vpc.c'))
+endif
if get_option('cloop').allowed()
block_ss.add(files('cloop.c'))
endif
diff --git a/meson.build b/meson.build
index 27782f8..c56e0fe 100644
--- a/meson.build
+++ b/meson.build
@@ -3929,6 +3929,9 @@
summary_info += {'dmg support': get_option('dmg').allowed()}
summary_info += {'qcow v1 support': get_option('qcow1').allowed()}
summary_info += {'vdi support': get_option('vdi').allowed()}
+ summary_info += {'vhdx support': get_option('vhdx').allowed()}
+ summary_info += {'vmdk support': get_option('vmdk').allowed()}
+ summary_info += {'vpc support': get_option('vpc').allowed()}
summary_info += {'vvfat support': get_option('vvfat').allowed()}
summary_info += {'qed support': get_option('qed').allowed()}
summary_info += {'parallels support': get_option('parallels').allowed()}
diff --git a/meson_options.txt b/meson_options.txt
index ae20177..66ca350 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -301,6 +301,12 @@
description: 'qcow1 image format support')
option('vdi', type: 'feature', value: 'auto',
description: 'vdi image format support')
+option('vhdx', type: 'feature', value: 'auto',
+ description: 'vhdx image format support')
+option('vmdk', type: 'feature', value: 'auto',
+ description: 'vmdk image format support')
+option('vpc', type: 'feature', value: 'auto',
+ description: 'vpc image format support')
option('vvfat', type: 'feature', value: 'auto',
description: 'vvfat image format support')
option('qed', type: 'feature', value: 'auto',
diff --git a/scripts/meson-buildoptions.sh b/scripts/meson-buildoptions.sh
index 0e888e6..34d82de 100644
--- a/scripts/meson-buildoptions.sh
+++ b/scripts/meson-buildoptions.sh
@@ -169,6 +169,7 @@
printf "%s\n" ' VDUSE block export support'
printf "%s\n" ' vfio-user-server'
printf "%s\n" ' vfio-user server support'
+ printf "%s\n" ' vhdx vhdx image format support'
printf "%s\n" ' vhost-crypto vhost-user crypto backend support'
printf "%s\n" ' vhost-kernel vhost kernel backend support'
printf "%s\n" ' vhost-net vhost-net kernel acceleration support'
@@ -178,10 +179,12 @@
printf "%s\n" ' vhost-vdpa vhost-vdpa kernel backend support'
printf "%s\n" ' virglrenderer virgl rendering support'
printf "%s\n" ' virtfs virtio-9p support'
+ printf "%s\n" ' vmdk vmdk image format support'
printf "%s\n" ' vmnet vmnet.framework network backend support'
printf "%s\n" ' vnc VNC server'
printf "%s\n" ' vnc-jpeg JPEG lossy compression for VNC server'
printf "%s\n" ' vnc-sasl SASL authentication for VNC server'
+ printf "%s\n" ' vpc vpc image format support'
printf "%s\n" ' vte vte support for the gtk UI'
printf "%s\n" ' vvfat vvfat image format support'
printf "%s\n" ' whpx WHPX acceleration support'
@@ -449,6 +452,8 @@
--disable-vduse-blk-export) printf "%s" -Dvduse_blk_export=disabled ;;
--enable-vfio-user-server) printf "%s" -Dvfio_user_server=enabled ;;
--disable-vfio-user-server) printf "%s" -Dvfio_user_server=disabled ;;
+ --enable-vhdx) printf "%s" -Dvhdx=enabled ;;
+ --disable-vhdx) printf "%s" -Dvhdx=disabled ;;
--enable-vhost-crypto) printf "%s" -Dvhost_crypto=enabled ;;
--disable-vhost-crypto) printf "%s" -Dvhost_crypto=disabled ;;
--enable-vhost-kernel) printf "%s" -Dvhost_kernel=enabled ;;
@@ -465,6 +470,8 @@
--disable-virglrenderer) printf "%s" -Dvirglrenderer=disabled ;;
--enable-virtfs) printf "%s" -Dvirtfs=enabled ;;
--disable-virtfs) printf "%s" -Dvirtfs=disabled ;;
+ --enable-vmdk) printf "%s" -Dvmdk=enabled ;;
+ --disable-vmdk) printf "%s" -Dvmdk=disabled ;;
--enable-vmnet) printf "%s" -Dvmnet=enabled ;;
--disable-vmnet) printf "%s" -Dvmnet=disabled ;;
--enable-vnc) printf "%s" -Dvnc=enabled ;;
@@ -473,6 +480,8 @@
--disable-vnc-jpeg) printf "%s" -Dvnc_jpeg=disabled ;;
--enable-vnc-sasl) printf "%s" -Dvnc_sasl=enabled ;;
--disable-vnc-sasl) printf "%s" -Dvnc_sasl=disabled ;;
+ --enable-vpc) printf "%s" -Dvpc=enabled ;;
+ --disable-vpc) printf "%s" -Dvpc=disabled ;;
--enable-vte) printf "%s" -Dvte=enabled ;;
--disable-vte) printf "%s" -Dvte=disabled ;;
--enable-vvfat) printf "%s" -Dvvfat=enabled ;;