summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xconfigure27
-rw-r--r--meson.build9
-rw-r--r--meson_options.txt2
3 files changed, 12 insertions, 26 deletions
diff --git a/configure b/configure
index 1eb5f30d61..1d31121402 100755
--- a/configure
+++ b/configure
@@ -406,7 +406,7 @@ vss_win32_sdk="$default_feature"
win_sdk="no"
want_tools="$default_feature"
libiscsi="auto"
-libnfs="$default_feature"
+libnfs="auto"
coroutine=""
coroutine_pool="$default_feature"
debug_stack_usage="no"
@@ -1142,9 +1142,9 @@ for opt do
;;
--enable-libiscsi) libiscsi="enabled"
;;
- --disable-libnfs) libnfs="no"
+ --disable-libnfs) libnfs="disabled"
;;
- --enable-libnfs) libnfs="yes"
+ --enable-libnfs) libnfs="enabled"
;;
--enable-profiler) profiler="yes"
;;
@@ -5561,20 +5561,6 @@ if test "$have_ubsan" = "yes"; then
fi
##########################################
-# Do we have libnfs
-if test "$libnfs" != "no" ; then
- if $pkg_config --atleast-version=1.9.3 libnfs; then
- libnfs="yes"
- libnfs_libs=$($pkg_config --libs libnfs)
- else
- if test "$libnfs" = "yes" ; then
- feature_not_found "libnfs" "Install libnfs devel >= 1.9.3"
- fi
- libnfs="no"
- fi
-fi
-
-##########################################
# Exclude --warn-common with TSan to suppress warnings from the TSan libraries.
if test "$solaris" = "no" && test "$tsan" = "no"; then
@@ -6215,11 +6201,6 @@ if test "$zstd" = "yes" ; then
echo "ZSTD_LIBS=$zstd_libs" >> $config_host_mak
fi
-if test "$libnfs" = "yes" ; then
- echo "CONFIG_LIBNFS=y" >> $config_host_mak
- echo "LIBNFS_LIBS=$libnfs_libs" >> $config_host_mak
-fi
-
if test "$seccomp" = "yes"; then
echo "CONFIG_SECCOMP=y" >> $config_host_mak
echo "SECCOMP_CFLAGS=$seccomp_cflags" >> $config_host_mak
@@ -6786,7 +6767,7 @@ NINJA=$ninja $meson setup \
-Dgettext=$gettext -Dxkbcommon=$xkbcommon -Du2f=$u2f -Dvirtiofsd=$virtiofsd \
-Dcapstone=$capstone -Dslirp=$slirp -Dfdt=$fdt -Dbrlapi=$brlapi \
-Dcurl=$curl -Dglusterfs=$glusterfs -Dbzip2=$bzip2 -Dlibiscsi=$libiscsi \
- -Diconv=$iconv -Dcurses=$curses -Dlibudev=$libudev\
+ -Dlibnfs=$libnfs -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 -Dfuse_lseek=$fuse_lseek \
diff --git a/meson.build b/meson.build
index f671714f40..e1f922f073 100644
--- a/meson.build
+++ b/meson.build
@@ -323,8 +323,10 @@ if 'CONFIG_LIBXML2' in config_host
link_args: config_host['LIBXML2_LIBS'].split())
endif
libnfs = not_found
-if 'CONFIG_LIBNFS' in config_host
- libnfs = declare_dependency(link_args: config_host['LIBNFS_LIBS'].split())
+if not get_option('libnfs').auto() or have_block
+ libnfs = dependency('libnfs', version: '>=1.9.3',
+ required: get_option('libnfs'),
+ method: 'pkg-config', static: enable_static)
endif
libattr = not_found
if 'CONFIG_ATTR' in config_host
@@ -934,6 +936,7 @@ if glusterfs.found()
config_host_data.set('CONFIG_GLUSTERFS_IOCB_HAS_STAT', glusterfs_iocb_has_stat)
endif
config_host_data.set('CONFIG_LIBISCSI', libiscsi.found())
+config_host_data.set('CONFIG_LIBNFS', libnfs.found())
config_host_data.set('CONFIG_SDL', sdl.found())
config_host_data.set('CONFIG_SDL_IMAGE', sdl_image.found())
config_host_data.set('CONFIG_VHOST_USER_BLK_SERVER', have_vhost_user_blk_server)
@@ -2293,7 +2296,7 @@ summary_info += {'usb net redir': config_host.has_key('CONFIG_USB_REDIR')}
summary_info += {'OpenGL support': config_host.has_key('CONFIG_OPENGL')}
summary_info += {'OpenGL dmabufs': config_host.has_key('CONFIG_OPENGL_DMABUF')}
summary_info += {'libiscsi support': libiscsi.found()}
-summary_info += {'libnfs support': config_host.has_key('CONFIG_LIBNFS')}
+summary_info += {'libnfs support': libnfs.found()}
summary_info += {'build guest agent': config_host.has_key('CONFIG_GUEST_AGENT')}
if targetos == 'windows'
if 'WIN_SDK' in config_host
diff --git a/meson_options.txt b/meson_options.txt
index b562d4f1a6..4535bc4dc2 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -52,6 +52,8 @@ option('glusterfs', type : 'feature', value : 'auto',
description: 'Glusterfs block device driver')
option('libiscsi', type : 'feature', value : 'auto',
description: 'libiscsi userspace initiator')
+option('libnfs', type : 'feature', value : 'auto',
+ description: 'libnfs block device driver')
option('mpath', type : 'feature', value : 'auto',
description: 'Multipath persistent reservation passthrough')
option('iconv', type : 'feature', value : 'auto',