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 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 installed
or through the `$GI_TYPELIB_PATH` env var), those files are automatically copied to `girs/`.
Make sure you are in an environement where latest `.gir` files are available (either install
or through the `$GI_TYPELIB_PATH` env var).
ninja -C update-all 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` * Verify newly generated code and `git add` files in `sources/generated/` and `ges/generated`
* Commit * Commit

View File

@ -157,26 +157,30 @@ custom_target('GstSharp-nuget',
) )
subdir('samples') subdir('samples')
subdir('Tests')
bindinate = find_program('bindinate', required: false) bindinator = subproject('bindinator', default_options: ['gapi_fixup=@0@'.format(gapi_fixup)])
if bindinate.found() if bindinator.get_variable('found')
run_target('bindinate_gstreamer', bindinate = bindinator.get_variable('bindinate')
command: [bindinate, run_target('bindinate_gstreamer',
'--name=gstreamer', '--regenerate=true', command: [bindinate,
'--merge-with=GstApp-1.0,GstAudio-1.0,GstBase-1.0,GstController-1.0,GstNet-1.0,GstPbutils-1.0,GstRtp-1.0,GstRtsp-1.0,GstSdp-1.0,GstTag-1.0,GstVideo-1.0', '--name=gstreamer', '--regenerate=true',
'--gir=Gst-1.0', '--merge-with=GstApp-1.0,GstAudio-1.0,GstBase-1.0,GstController-1.0,GstNet-1.0,GstPbutils-1.0,GstRtp-1.0,GstRtsp-1.0,GstSdp-1.0,GstTag-1.0,GstVideo-1.0',
'--copy-girs=@0@'.format(join_paths(meson.current_source_dir(), 'girs'))], '--gir=Gst-1.0',
depends: [] '--copy-girs=@0@'.format(join_paths(meson.current_source_dir(), 'girs'))],
) depends: []
run_target('bindinate_ges', )
command: ['sh', '-c', run_target('bindinate_ges',
'''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( command: ['sh', '-c',
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()),
python3 = import('python3').find_python() ],
run_target('update-code', command: [find_program('update_sources.py')]) depends: []
run_target('update-all', command: [find_program('update_sources.py'), 'bindinate']) )
endif python3 = import('python3').find_python()
run_target('update-code', command: [find_program('update_sources.py')])
subdir('Tests') run_target('update-all', command: [find_program('update_sources.py'), 'bindinate'])
else
warning('Bindinator not usable as some required dependencies are not avalaible.')
endif

View File

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