-fexceptions:
ld: error: undefined symbol: _Unwind_Resume

Should match b_lundef in meson(1).

Index: meson.build
--- meson.build.orig
+++ meson.build
@@ -270,7 +270,6 @@ array_bounds = get_option('b_sanitize') == 'none' ? 2 
 
 cc_flags += [
   '-fasynchronous-unwind-tables',
-  '-fexceptions',
   '-fipa-pure-const',
   '-fno-common',
   '-Wabsolute-value',
@@ -560,11 +559,6 @@ libvirt_nodelete = cc.get_supported_link_arguments([
 ])
 
 libvirt_no_undefined = []
-if get_option('b_sanitize') == 'none'
-  libvirt_no_undefined += cc.get_supported_link_arguments([
-    '-Wl,-z,defs',
-  ])
-endif
 
 libvirt_no_indirect = cc.get_supported_link_arguments([
   '-Wl,--no-copy-dt-needed-entries',
@@ -872,7 +866,7 @@ if not get_option('driver_remote').disabled()
     xdr_dep = cc.find_library('portablexdr', required: get_option('driver_remote'))
   elif host_machine.system() in [ 'linux', 'gnu' ]
     xdr_dep = dependency('libtirpc', required: get_option('driver_remote'))
-  elif host_machine.system() in [ 'freebsd', 'darwin' ]
+  elif host_machine.system() in [ 'freebsd', 'darwin', 'openbsd' ]
     xdr_dep = cc.find_library('c', required: get_option('driver_remote'))
   else
     xdr_dep = dependency('', required: false)
@@ -960,15 +954,18 @@ if devmapper_dep.found()
   conf.set('WITH_DEVMAPPER', 1)
 endif
 
-dlopen_use = host_machine.system() != 'windows'
-dlopen_dep = cc.find_library('dl', required: dlopen_use)
-if dlopen_dep.found()
-  if not cc.check_header('dlfcn.h')
-    error('Unable to find dlfcn.h')
-  endif
-  conf.set('WITH_DLFCN_H', 1)
-endif
+#dlopen_use = host_machine.system() != 'windows'
+#dlopen_dep = cc.find_library('dl', required: dlopen_use)
+#if dlopen_dep.found()
+#  if not cc.check_header('dlfcn.h')
+#    error('Unable to find dlfcn.h')
+#  endif
+#  conf.set('WITH_DLFCN_H', 1)
+#endif
 
+dlopen_dep = []
+conf.set('WITH_DLFCN_H', 1)
+
 fuse_version = '3.1.0'
 fuse_dep = dependency('fuse3', version: '>=' + fuse_version, required: false)
 if fuse_dep.found()
@@ -1906,7 +1903,7 @@ endif
 
 driver_modules_flags = []
 if conf.has('WITH_LIBVIRTD')
-  if not conf.has('WITH_DLFCN_H') or not dlopen_dep.found()
+  if not conf.has('WITH_DLFCN_H') #or not dlopen_dep.found()
     error('You must have dlfcn.h / dlopen() support to build driver modules')
   endif
   driver_modules_flags = libvirt_export_dynamic
