gdbus_codegen: Support arbitrary extra arguments

pull/3710/head
Robert Ancell 6 years ago committed by Nirbheek Chauhan
parent 61c6f589f3
commit 83665a482a
  1. 1
      docs/markdown/Gnome-module.md
  2. 5
      mesonbuild/modules/gnome.py

@ -234,6 +234,7 @@ one XML file.
* `sources`: list of XML files
* `interface_prefix`: prefix for the interface
* `namespace`: namespace of the interface
* `extra_args`: (*Added 0.47.0*) additional command line arguments to pass
* `object_manager`: *(Added 0.40.0)* if true generates object manager code
* `annotations`: *(Added 0.43.0)* list of lists of 3 strings for the annotation for `'ELEMENT', 'KEY', 'VALUE'`
* `docbook`: *(Added 0.43.0)* prefix to generate `'PREFIX'-NAME.xml` docbooks

@ -881,7 +881,8 @@ This will become a hard error in the future.''')
@FeatureNewKwargs('build target', '0.46.0', ['install_header', 'install_dir', 'sources'])
@FeatureNewKwargs('build target', '0.40.0', ['build_by_default'])
@permittedKwargs({'interface_prefix', 'namespace', 'object_manager', 'build_by_default',
@FeatureNewKwargs('build target', '0.47.0', ['extra_args'])
@permittedKwargs({'interface_prefix', 'namespace', 'extra_args', 'object_manager', 'build_by_default',
'annotations', 'docbook', 'install_header', 'install_dir', 'sources'})
def gdbus_codegen(self, state, args, kwargs):
if len(args) not in (1, 2):
@ -890,6 +891,8 @@ This will become a hard error in the future.''')
xml_files = args[1:]
target_name = namebase + '-gdbus'
cmd = [self.interpreter.find_program_impl('gdbus-codegen')]
extra_args = mesonlib.stringlistify(kwargs.pop('extra_args', []))
cmd += extra_args
if 'interface_prefix' in kwargs:
cmd += ['--interface-prefix', kwargs.pop('interface_prefix')]
if 'namespace' in kwargs:

Loading…
Cancel
Save