From: Roman Bolshakov <r.bolsha...@yadro.com> dtrace on macOS uses unresolved symbols with a special prefix to define probes [1], only headers should be generated for USDT (dtrace(1)). But it doesn't support backwards compatible no-op -G flag [2] and implicit build rules fail.
1. https://markmail.org/message/6grq2ygr5nwdwsnb 2. https://markmail.org/message/5xrxt2w5m42nojkz Cc: Daniel P. Berrangé <berra...@redhat.com> Cc: Cameron Esfahani <di...@apple.com> Signed-off-by: Roman Bolshakov <r.bolsha...@yadro.com> Reviewed-by: Daniel P. Berrangé <berra...@redhat.com> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- trace/meson.build | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/trace/meson.build b/trace/meson.build index 56e870848e..1c1fb31a61 100644 --- a/trace/meson.build +++ b/trace/meson.build @@ -39,12 +39,15 @@ foreach dir : [ '.' ] + trace_events_subdirs output: fmt.format('trace-dtrace', 'h'), input: trace_dtrace, command: [ 'dtrace', '-o', '@OUTPUT@', '-h', '-s', '@INPUT@' ]) - trace_dtrace_o = custom_target(fmt.format('trace-dtrace', 'o'), - output: fmt.format('trace-dtrace', 'o'), - input: trace_dtrace, - command: [ 'dtrace', '-o', '@OUTPUT@', '-G', '-s', '@INPUT@' ]) + trace_ss.add(trace_dtrace_h) + if host_machine.system() != 'darwin' + trace_dtrace_o = custom_target(fmt.format('trace-dtrace', 'o'), + output: fmt.format('trace-dtrace', 'o'), + input: trace_dtrace, + command: [ 'dtrace', '-o', '@OUTPUT@', '-G', '-s', '@INPUT@' ]) + trace_ss.add(trace_dtrace_o) + endif - trace_ss.add(trace_dtrace_h, trace_dtrace_o) genh += trace_dtrace_h endif endforeach -- 2.26.2