build-sys: require -lrt when no shm_open() in std libs

Fail during configure time if the shm functions are missing, as required
by oslib-posix.c. Note, we could further check the presence of the
function in librt.

This is a minor cleanup/improvement.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-ID: <20250924120426.2158655-2-marcandre.lureau@redhat.com>
This commit is contained in:
Marc-André Lureau
2025-09-30 19:33:25 +04:00
parent 85a3fd1c4c
commit 59a4c0973a
+9 -7
View File
@@ -1350,7 +1350,13 @@ if get_option('spice') \
endif
spice_headers = spice.partial_dependency(compile_args: true, includes: true)
rt = cc.find_library('rt', required: false)
rt = not_found
if host_os != 'windows'
have_shm_open = cc.has_function('shm_open')
if not have_shm_open
rt = cc.find_library('rt', required: true)
endif
endif
libiscsi = not_found
if not get_option('libiscsi').auto() or have_block
@@ -3812,14 +3818,10 @@ util_ss = util_ss.apply({})
libqemuutil = static_library('qemuutil',
build_by_default: false,
sources: util_ss.sources() + stub_ss.sources() + genh,
dependencies: [util_ss.dependencies(), libm, threads, glib, socket, malloc])
qemuutil_deps = [event_loop_base]
if host_os != 'windows'
qemuutil_deps += [rt]
endif
dependencies: [util_ss.dependencies(), libm, threads, glib, socket, malloc, rt])
qemuutil = declare_dependency(link_with: libqemuutil,
sources: genh + version_res,
dependencies: qemuutil_deps)
dependencies: [event_loop_base])
if have_system or have_user
decodetree = generator(find_program('scripts/decodetree.py'),