From 47ba8e0f25ddba110fe77ba55ad5da570f4582bd Mon Sep 17 00:00:00 2001 From: "Eduardo Lima (Etrunko)" Date: Thu, 4 Apr 2019 12:22:19 -0300 Subject: [PATCH] meson: Make targets list store dictionaries instead of lists Access the items by names instead of indexes. Signed-off-by: Eduardo Lima (Etrunko) Acked-by: Frediano Ziglio --- common/meson.build | 42 +++++++++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 15 deletions(-) diff --git a/common/meson.build b/common/meson.build index 980a32a..9a2725f 100644 --- a/common/meson.build +++ b/common/meson.build @@ -136,35 +136,47 @@ if spice_common_generate_server_code ] targets = [ - ['server_demarshallers', [ spice_proto, client_demarshallers ], - ['generated_server_demarshallers.c'], - ['--generate-demarshallers', '--server', '--include', 'common/messages.h', '@INPUT0@', '@OUTPUT0@'] - ], - ['server_marshallers', [ spice_proto, client_demarshallers ], - ['generated_server_marshallers.c', 'generated_server_marshallers.h'], - ['--generate-marshallers', '--generate-header', - '--server'] + structs_args + ['--include', 'common/messages.h', '@INPUT0@', '@OUTPUT0@' - ] - ], + { 'name' : 'server_demarshallers', + 'input' : [ spice_proto, client_demarshallers ], + 'output' : ['generated_server_demarshallers.c'], + 'codegen_args' : ['--generate-demarshallers', + '--server', + '--include', 'common/messages.h', + '@INPUT0@', '@OUTPUT0@'], + }, + { 'name' : 'server_marshallers', + 'input' : [ spice_proto, client_demarshallers ], + 'output' : ['generated_server_marshallers.c', 'generated_server_marshallers.h'], + 'codegen_args' : ['--generate-marshallers', + '--generate-header', + '--server', + structs_args, + '--include', 'common/messages.h', + '@INPUT0@', '@OUTPUT0@'] + }, ] spice_common_server_sources = [] + spice_common_server_dep_sources = [] foreach t : targets - target = custom_target(t[0], - input : t[1], - output : t[2], + target = custom_target(t['name'], + input : t['input'], + output : t['output'], install : false, - command : [codegen_cmd, t[3]], + command : [codegen_cmd, t['codegen_args']], depend_files : [spice_codegen_files, 'messages.h']) spice_common_server_sources += target + if t['output'].length() > 1 + spice_common_server_dep_sources += target[1] + endif endforeach spice_common_server_lib = static_library('spice-common-server', spice_common_server_sources, install : false, dependencies : spice_common_dep) - spice_common_server_dep = declare_dependency(sources : target[1], + spice_common_server_dep = declare_dependency(sources : spice_common_server_dep_sources, link_with : spice_common_server_lib, dependencies : spice_common_dep) endif