xref: /qemu/qga/vss-win32/meson.build (revision 1dbb74e86f15116a72996bf9614baf29a0a43b57)
17272fc72SMarc-André Lureauif add_languages('cpp', required: false)
29f34101dSKostiantyn Kostiuk  glib_dynamic = dependency('glib-2.0', static: false)
37272fc72SMarc-André Lureau  link_args = cc.get_supported_link_arguments(['-fstack-protector-all', '-fstack-protector-strong',
47272fc72SMarc-André Lureau                                               '-Wl,--add-stdcall-alias', '-Wl,--enable-stdcall-fixup'])
5328ec32dSMarc-André Lureau
6328ec32dSMarc-André Lureau  qga_vss = shared_module('qga-vss', ['requester.cpp', 'provider.cpp', 'install.cpp'],
77272fc72SMarc-André Lureau                name_prefix: '',
87272fc72SMarc-André Lureau                cpp_args: ['-Wno-unknown-pragmas', '-Wno-delete-non-virtual-dtor', '-Wno-non-virtual-dtor'],
97272fc72SMarc-André Lureau                link_args: link_args,
107272fc72SMarc-André Lureau                vs_module_defs: 'qga-vss.def',
119f34101dSKostiantyn Kostiuk                dependencies: [glib_dynamic, socket,
127272fc72SMarc-André Lureau                               cc.find_library('ole32'),
137272fc72SMarc-André Lureau                               cc.find_library('oleaut32'),
147272fc72SMarc-André Lureau                               cc.find_library('shlwapi'),
157272fc72SMarc-André Lureau                               cc.find_library('uuid'),
167272fc72SMarc-André Lureau                               cc.find_library('intl')])
17588a19faSPaolo Bonzini
18588a19faSPaolo Bonzini  all_qga += qga_vss
197272fc72SMarc-André Lureauendif
207272fc72SMarc-André Lureau
217272fc72SMarc-André Lureaumidl = find_program('midl', required: false)
22*1dbb74e8SMarc-André Lureauwidl = find_program('widl', required: false)
237272fc72SMarc-André Lureauif midl.found()
247272fc72SMarc-André Lureau  gen_tlb = custom_target('gen-tlb',
257272fc72SMarc-André Lureau                          input: 'qga-vss.idl',
267272fc72SMarc-André Lureau                          output: 'qga-vss.tlb',
27fa142ec8SMarc-André Lureau                          command: [midl, '@INPUT@', '/tlb', '@OUTPUT@'])
28*1dbb74e8SMarc-André Lureauelif widl.found()
29*1dbb74e8SMarc-André Lureau  gen_tlb = custom_target('gen-tlb',
30*1dbb74e8SMarc-André Lureau                          input: 'qga-vss.idl',
31*1dbb74e8SMarc-André Lureau                          output: 'qga-vss.tlb',
32*1dbb74e8SMarc-André Lureau                          command: [widl, '-t', '@INPUT@', '-o', '@OUTPUT@'])
337272fc72SMarc-André Lureauelse
347272fc72SMarc-André Lureau  gen_tlb = custom_target('gen-tlb',
357272fc72SMarc-André Lureau                          input: 'qga-vss.tlb',
367272fc72SMarc-André Lureau                          output: 'qga-vss.tlb',
377272fc72SMarc-André Lureau                          command: ['cp', '@INPUT@', '@OUTPUT@'])
387272fc72SMarc-André Lureauendif
39