[Spice-devel] [PATCH spice-common 1/2] meson: Fix dependency of generated files
Frediano Ziglio
fziglio at redhat.com
Wed Apr 3 12:26:58 UTC 2019
All generated file depends on generated_messages.h which is
generated too.
So add an explicit dependency from all generated file
(except generated_messages.h generator) to generated_messages.h
generator.
This fixes compiling SPICE server where generated_messages.h
was not generated at all.
Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
---
common/meson.build | 40 ++++++++++++++++++++++++++--------------
1 file changed, 26 insertions(+), 14 deletions(-)
diff --git a/common/meson.build b/common/meson.build
index 2d76d2b..fdee5ec 100644
--- a/common/meson.build
+++ b/common/meson.build
@@ -59,25 +59,33 @@ spice_common_dep = declare_dependency(link_with : spice_common_lib,
include_directories : spice_common_include,
dependencies : spice_common_deps)
+targets = [
+ ['client_demarshallers', spice_proto,
+ ['generated_client_demarshallers.c', 'generated_messages.h'],
+ ['--generate-demarshallers',
+ '--client',
+ '--include', 'common/messages.h',
+ '--generated-declaration-file', '@OUTPUT1@',
+ '@INPUT@', '@OUTPUT0@'
+ ]
+ ]
+]
+
+foreach t : targets
+ cmd = [python, spice_codegen] + t[3]
+ common_generated = custom_target(t[0], input : t[1], output : t[2], install : false, command : cmd, depend_files : spice_codegen_files)
+endforeach
+
#
# libspice-common-client
#
if spice_common_generate_client_code
targets = [
- ['client_demarshallers', spice_proto,
- ['generated_client_demarshallers.c', 'generated_messages.h'],
- ['--generate-demarshallers',
- '--client',
- '--include', 'common/messages.h',
- '--generated-declaration-file', '@OUTPUT1@',
- '@INPUT@', '@OUTPUT0@'
- ]
- ],
- ['client_marshallers', spice_proto,
+ ['client_marshallers', [ spice_proto, common_generated ],
['generated_client_marshallers.c', 'generated_client_marshallers.h'],
['--generate-marshallers', '--generate-header',
'-P', '--client', '--include', 'client_marshallers.h',
- '@INPUT@', '@OUTPUT0@'
+ '@INPUT0@', '@OUTPUT0@'
]
]
]
@@ -88,6 +96,7 @@ if spice_common_generate_client_code
'ssl_verify.h',
]
+ spice_common_client_sources += common_generated
foreach t : targets
cmd = [python, spice_codegen] + t[3]
target = custom_target(t[0], input : t[1], output : t[2], install : false, command : cmd, depend_files : spice_codegen_files)
@@ -128,11 +137,14 @@ if spice_common_generate_server_code
]
targets = [
- ['server_demarshallers', spice_proto, 'generated_server_demarshallers.c', ['--generate-demarshallers', '--server', '--include', 'common/messages.h', '@INPUT@', '@OUTPUT@']],
- ['server_marshallers', spice_proto,
+ ['server_demarshallers', [ spice_proto, common_generated ],
+ 'generated_server_demarshallers.c',
+ ['--generate-demarshallers', '--server', '--include', 'common/messages.h', '@INPUT0@', '@OUTPUT@']
+ ],
+ ['server_marshallers', [ spice_proto, common_generated ],
['generated_server_marshallers.c', 'generated_server_marshallers.h'],
['--generate-marshallers', '--generate-header',
- '--server'] + structs_args + ['--include', 'common/messages.h', '@INPUT@', '@OUTPUT0@'
+ '--server'] + structs_args + ['--include', 'common/messages.h', '@INPUT0@', '@OUTPUT0@'
]
],
]
--
2.20.1
More information about the Spice-devel
mailing list