Use bindinator as a subproject

This commit is contained in:
Thibault Saunier 2018-05-17 12:03:55 -04:00
parent 9439399cd5
commit 29f0c340ab
3 changed files with 33 additions and 26 deletions

View file

@ -34,13 +34,12 @@ is triggered right after.
Updating to new GStreamer version
--------------------------------
* Make sure [bindinator] is installed on the system
Make sure you are in an environement where latest `.gir` files are available (either install
or through the `$GI_TYPELIB_PATH` env var).
Make sure you are in an environement where latest `.gir` files are available (either installed
or through the `$GI_TYPELIB_PATH` env var), those files are automatically copied to `girs/`.
ninja -C update-all
* Verify newly copied gir files in `girs/` and `git add` them
* Verify newly generated code and `git add` files in `sources/generated/` and `ges/generated`
* Commit

View file

@ -157,9 +157,11 @@ custom_target('GstSharp-nuget',
)
subdir('samples')
subdir('Tests')
bindinate = find_program('bindinate', required: false)
if bindinate.found()
bindinator = subproject('bindinator', default_options: ['gapi_fixup=@0@'.format(gapi_fixup)])
if bindinator.get_variable('found')
bindinate = bindinator.get_variable('bindinate')
run_target('bindinate_gstreamer',
command: [bindinate,
'--name=gstreamer', '--regenerate=true',
@ -167,16 +169,18 @@ if bindinate.found()
'--gir=Gst-1.0',
'--copy-girs=@0@'.format(join_paths(meson.current_source_dir(), 'girs'))],
depends: []
)
run_target('bindinate_ges',
)
run_target('bindinate_ges',
command: ['sh', '-c',
'''bindinate --name=gst-editing-services --regenerate=true --gir=GES-1.0 && mv @0@/sources/gst-editing-services-sharp-api.raw @0@/ges/gst-editing-services-api.raw '''.format(
meson.current_source_dir())
]
'''@0@ --name=gst-editing-services --regenerate=true --gir=GES-1.0 && mv @1@/sources/gst-editing-services-sharp-api.raw @1@/ges/gst-editing-services-api.raw '''.format(
bindinate.path(),
meson.current_source_dir()),
],
depends: []
)
python3 = import('python3').find_python()
run_target('update-code', command: [find_program('update_sources.py')])
run_target('update-all', command: [find_program('update_sources.py'), 'bindinate'])
else
warning('Bindinator not usable as some required dependencies are not avalaible.')
endif
subdir('Tests')

View file

@ -0,0 +1,4 @@
[wrap-git]
directory=bindinator
url=https://github.com/GLibSharp/bindinator.git
revision=master