mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-11-01 02:41:14 +00:00
35069cad0a
Signed-off-by: Pavel Hrdina <phrdina@redhat.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
132 lines
2.3 KiB
Meson
132 lines
2.3 KiB
Meson
genprotocol_prog = find_program('genprotocol.pl')
|
|
gendispatch_prog = find_program('gendispatch.pl')
|
|
|
|
rpc_sources = [
|
|
'virnetmessage.c',
|
|
'virnettlscontext.c',
|
|
'virnetsocket.c',
|
|
'virkeepalive.c',
|
|
]
|
|
|
|
if libssh_dep.found()
|
|
rpc_sources += 'virnetlibsshsession.c'
|
|
endif
|
|
|
|
if libssh2_dep.found()
|
|
rpc_sources += 'virnetsshsession.c'
|
|
endif
|
|
|
|
if sasl_dep.found()
|
|
rpc_sources += 'virnetsaslcontext.c'
|
|
endif
|
|
|
|
rpc_gen_headers = []
|
|
rpc_gen_sources = []
|
|
|
|
foreach name : [ 'virnet', 'virkeepalive' ]
|
|
protocol_file = files('@0@protocol.x'.format(name))
|
|
header_file = '@0@protocol.h'.format(name)
|
|
source_file = '@0@protocol.c'.format(name)
|
|
|
|
rpc_gen_headers += custom_target(
|
|
header_file,
|
|
input: protocol_file,
|
|
output: header_file,
|
|
command: [
|
|
genprotocol_prog, rpcgen_prog, '-h', '@INPUT@', '@OUTPUT@',
|
|
],
|
|
)
|
|
|
|
rpc_gen_sources += custom_target(
|
|
source_file,
|
|
input: protocol_file,
|
|
output: source_file,
|
|
command: [
|
|
genprotocol_prog, rpcgen_prog, '-c', '@INPUT@', '@OUTPUT@',
|
|
],
|
|
)
|
|
|
|
rpc_probe_files += protocol_file
|
|
endforeach
|
|
|
|
rpc_server_sources = [
|
|
'virnetserverprogram.c',
|
|
'virnetserverservice.c',
|
|
'virnetserverclient.c',
|
|
'virnetdaemon.c',
|
|
'virnetserver.c',
|
|
]
|
|
|
|
rpc_client_sources = [
|
|
'virnetclientprogram.c',
|
|
'virnetclientstream.c',
|
|
'virnetclient.c',
|
|
]
|
|
|
|
virt_rpc_lib = static_library(
|
|
'virt_net_rpc',
|
|
[
|
|
rpc_sources,
|
|
rpc_gen_headers,
|
|
rpc_gen_sources,
|
|
],
|
|
dependencies: [
|
|
gnutls_dep,
|
|
libssh2_dep,
|
|
libssh_dep,
|
|
sasl_dep,
|
|
secdriver_dep,
|
|
src_dep,
|
|
xdr_dep,
|
|
],
|
|
)
|
|
|
|
check_protocols += {
|
|
'name': 'virnetprotocol',
|
|
'lib': virt_rpc_lib,
|
|
}
|
|
|
|
check_protocols += {
|
|
'name': 'virkeepaliveprotocol',
|
|
'lib': virt_rpc_lib,
|
|
}
|
|
|
|
virt_rpc_server_lib = static_library(
|
|
'virt_net_rpc_server',
|
|
[
|
|
rpc_server_sources,
|
|
rpc_gen_headers,
|
|
],
|
|
dependencies: [
|
|
sasl_dep,
|
|
src_dep,
|
|
xdr_dep,
|
|
],
|
|
)
|
|
|
|
virt_rpc_client_lib = static_library(
|
|
'virt_net_rpc_client',
|
|
[
|
|
rpc_client_sources,
|
|
rpc_gen_headers,
|
|
],
|
|
dependencies: [
|
|
sasl_dep,
|
|
src_dep,
|
|
xdr_dep,
|
|
],
|
|
)
|
|
|
|
rpc_inc_dir = include_directories('.')
|
|
|
|
rpc_dep = declare_dependency(
|
|
include_directories: [ rpc_inc_dir ],
|
|
sources: [ rpc_gen_headers ],
|
|
)
|
|
|
|
libvirt_libs += [
|
|
virt_rpc_lib,
|
|
virt_rpc_client_lib,
|
|
virt_rpc_server_lib,
|
|
]
|