Skip to content

Commit

Permalink
meson: Propagate gnutls dependency
Browse files Browse the repository at this point in the history
crypto/tlscreds.h includes GnuTLS headers if CONFIG_GNUTLS is set, but
GNUTLS_CFLAGS, that describe include path, are not propagated
transitively to all users of crypto and build fails if GnuTLS headers
reside in non-standard directory (which is a case for homebrew on Apple
Silicon).

Signed-off-by: Roman Bolshakov <[email protected]>
Message-Id: <[email protected]>
Signed-off-by: Paolo Bonzini <[email protected]>
  • Loading branch information
Roman Bolshakov authored and bonzini committed Jan 12, 2021
1 parent d533d63 commit 3eacf70
Show file tree
Hide file tree
Showing 6 changed files with 10 additions and 9 deletions.
2 changes: 1 addition & 1 deletion block/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ block_ss.add(files(
'vmdk.c',
'vpc.c',
'write-threshold.c',
), zstd, zlib)
), zstd, zlib, gnutls)

softmmu_ss.add(when: 'CONFIG_TCG', if_true: files('blkreplay.c'))

Expand Down
2 changes: 1 addition & 1 deletion io/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ io_ss.add(files(
'dns-resolver.c',
'net-listener.c',
'task.c',
))
), gnutls)
5 changes: 3 additions & 2 deletions meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -1814,7 +1814,7 @@ blockdev_ss.add(files(
'blockdev-nbd.c',
'iothread.c',
'job-qmp.c',
))
), gnutls)

# os-posix.c contains POSIX-specific functions used by qemu-storage-daemon,
# os-win32.c does not
Expand Down Expand Up @@ -1970,6 +1970,7 @@ qmp = declare_dependency(link_whole: [libqmp])

libchardev = static_library('chardev', chardev_ss.sources() + genh,
name_suffix: 'fa',
dependencies: [gnutls],
build_by_default: false)

chardev = declare_dependency(link_whole: libchardev)
Expand Down Expand Up @@ -2188,7 +2189,7 @@ if have_tools
qemu_io = executable('qemu-io', files('qemu-io.c'),
dependencies: [block, qemuutil], install: true)
qemu_nbd = executable('qemu-nbd', files('qemu-nbd.c'),
dependencies: [blockdev, qemuutil], install: true)
dependencies: [blockdev, qemuutil, gnutls], install: true)

subdir('storage-daemon')
subdir('contrib/rdmacm-mux')
Expand Down
2 changes: 1 addition & 1 deletion storage-daemon/meson.build
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
qsd_ss = ss.source_set()
qsd_ss.add(files('qemu-storage-daemon.c'))
qsd_ss.add(blockdev, chardev, qmp, qom, qemuutil)
qsd_ss.add(blockdev, chardev, qmp, qom, qemuutil, gnutls)

subdir('qapi')

Expand Down
6 changes: 3 additions & 3 deletions tests/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -159,11 +159,11 @@ if have_block
'CONFIG_POSIX' in config_host
tests += {
'test-crypto-tlscredsx509': ['crypto-tls-x509-helpers.c', 'pkix_asn1_tab.c',
tasn1, crypto],
tasn1, crypto, gnutls],
'test-crypto-tlssession': ['crypto-tls-x509-helpers.c', 'pkix_asn1_tab.c', 'crypto-tls-psk-helpers.c',
tasn1, crypto],
tasn1, crypto, gnutls],
'test-io-channel-tls': ['io-channel-helpers.c', 'crypto-tls-x509-helpers.c', 'pkix_asn1_tab.c',
tasn1, io, crypto]}
tasn1, io, crypto, gnutls]}
endif
if 'CONFIG_AUTH_PAM' in config_host
tests += {'test-authz-pam': [authz]}
Expand Down
2 changes: 1 addition & 1 deletion ui/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ vnc_ss.add(files(
'vnc-ws.c',
'vnc-jobs.c',
))
vnc_ss.add(zlib, png, jpeg)
vnc_ss.add(zlib, png, jpeg, gnutls)
vnc_ss.add(when: sasl, if_true: files('vnc-auth-sasl.c'))
softmmu_ss.add_all(when: vnc, if_true: vnc_ss)
softmmu_ss.add(when: vnc, if_false: files('vnc-stubs.c'))
Expand Down

0 comments on commit 3eacf70

Please sign in to comment.