aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Reitz <mreitz@redhat.com>2020-10-27 20:05:41 +0100
committerKevin Wolf <kwolf@redhat.com>2020-12-11 17:52:39 +0100
commita484a7195761476dcf43b40437f4d5b8b32d9f2c (patch)
treeb4f6f59e96d4abc80b6bf702bdc9b8980257f7a3
parentc208b0ef968b108440b01a319b3699f1d330fbb1 (diff)
meson: Detect libfuse
Signed-off-by: Max Reitz <mreitz@redhat.com> Message-Id: <20201027190600.192171-2-mreitz@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-rwxr-xr-xconfigure7
-rw-r--r--meson.build6
-rw-r--r--meson_options.txt2
3 files changed, 15 insertions, 0 deletions
diff --git a/configure b/configure
index 18c26e0389..b2f96c0da2 100755
--- a/configure
+++ b/configure
@@ -449,6 +449,7 @@ meson=""
ninja=""
skip_meson=no
gettext=""
+fuse="auto"
bogus_os="no"
malloc_trim="auto"
@@ -1525,6 +1526,10 @@ for opt do
;;
--disable-libdaxctl) libdaxctl=no
;;
+ --enable-fuse) fuse="enabled"
+ ;;
+ --disable-fuse) fuse="disabled"
+ ;;
*)
echo "ERROR: unknown option $opt"
echo "Try '$0 --help' for more information"
@@ -1850,6 +1855,7 @@ disabled with --disable-FEATURE, default is enabled if available:
xkbcommon xkbcommon support
rng-none dummy RNG, avoid using /dev/(u)random and getrandom()
libdaxctl libdaxctl support
+ fuse FUSE block device export
NOTE: The object files are built at the place where configure is launched
EOF
@@ -7014,6 +7020,7 @@ NINJA=$ninja $meson setup \
-Diconv=$iconv -Dcurses=$curses -Dlibudev=$libudev\
-Ddocs=$docs -Dsphinx_build=$sphinx_build -Dinstall_blobs=$blobs \
-Dvhost_user_blk_server=$vhost_user_blk_server \
+ -Dfuse=$fuse \
$cross_arg \
"$PWD" "$source_path"
diff --git a/meson.build b/meson.build
index 9ea05ab49f..6e8ef151d8 100644
--- a/meson.build
+++ b/meson.build
@@ -773,6 +773,10 @@ elif get_option('vhost_user_blk_server').disabled() or not have_system
have_vhost_user_blk_server = false
endif
+fuse = dependency('fuse3', required: get_option('fuse'),
+ version: '>=3.1', method: 'pkg-config',
+ static: enable_static)
+
#################
# config-host.h #
#################
@@ -807,6 +811,7 @@ config_host_data.set('CONFIG_KEYUTILS', keyutils.found())
config_host_data.set('CONFIG_GETTID', has_gettid)
config_host_data.set('CONFIG_MALLOC_TRIM', has_malloc_trim)
config_host_data.set('CONFIG_STATX', has_statx)
+config_host_data.set('CONFIG_FUSE', fuse.found())
config_host_data.set('QEMU_VERSION', '"@0@"'.format(meson.project_version()))
config_host_data.set('QEMU_VERSION_MAJOR', meson.project_version().split('.')[0])
config_host_data.set('QEMU_VERSION_MINOR', meson.project_version().split('.')[1])
@@ -2208,6 +2213,7 @@ endif
summary_info += {'thread sanitizer': config_host.has_key('CONFIG_TSAN')}
summary_info += {'rng-none': config_host.has_key('CONFIG_RNG_NONE')}
summary_info += {'Linux keyring': config_host.has_key('CONFIG_SECRET_KEYRING')}
+summary_info += {'FUSE exports': fuse.found()}
summary(summary_info, bool_yn: true)
if not supported_cpus.contains(cpu)
diff --git a/meson_options.txt b/meson_options.txt
index f6f64785fe..8f9f2e3df6 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -66,6 +66,8 @@ option('virtiofsd', type: 'feature', value: 'auto',
description: 'build virtiofs daemon (virtiofsd)')
option('vhost_user_blk_server', type: 'feature', value: 'auto',
description: 'build vhost-user-blk server')
+option('fuse', type: 'feature', value: 'auto',
+ description: 'FUSE block device export')
option('capstone', type: 'combo', value: 'auto',
choices: ['disabled', 'enabled', 'auto', 'system', 'internal'],