Add meson build definitions

This commit is contained in:
Thibault Saunier 2017-08-21 15:20:47 -03:00
parent b37b5a2b92
commit 7e8ee12304
7 changed files with 1032 additions and 0 deletions

15
gacutil_install.py Normal file
View file

@ -0,0 +1,15 @@
#!/usr/bin/env python3
import os
import sys
import subprocess
outdir = os.path.join(os.environ['MESON_INSTALL_DESTDIR_PREFIX'], 'lib')
builddir = os.environ['MESON_BUILD_ROOT']
for i in range(1, len(sys.argv), 2):
assembly_name, fname = sys.argv[i], os.path.join(builddir, sys.argv[i + 1])
cmd = ['gacutil', '/i', fname, '/f', '/package', assembly_name, '/root', outdir]
print('(%s) Running %s' % (os.path.abspath(os.path.curdir), ' '.join(cmd)))
subprocess.check_call(cmd)

88
generate_code.py Normal file
View file

@ -0,0 +1,88 @@
#!/usr/bin/env python3
import argparse
import glob
import os
import re
import shutil
import subprocess
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("--api-raw")
parser.add_argument("--gapi-fixup")
parser.add_argument("--metadata")
parser.add_argument("--gapi-codegen")
parser.add_argument("--glue-file")
parser.add_argument("--glue-includes")
parser.add_argument("--glue-libname")
parser.add_argument("--assembly-name")
parser.add_argument("--extra-includes", action='append', default=[])
parser.add_argument("--out")
parser.add_argument("--files")
parser.add_argument("--symbols")
parser.add_argument("--schema")
parser.add_argument("--fakeglue", action='store_true')
opts = parser.parse_args()
if opts.fakeglue:
exit(0)
if not opts.glue_libname:
opts.glue_libname = opts.assembly_name + 'sharpglue-3'
api_xml = os.path.join(opts.out, os.path.basename(
opts.api_raw).replace('.raw', '.xml'))
shutil.copyfile(opts.api_raw, api_xml)
cmd = [opts.gapi_fixup, "--api=" + api_xml,
"--metadata=" + opts.metadata]
if opts.symbols:
cmd.extend(['--symbols=' + opts.symbols])
subprocess.check_call(cmd)
cmd = [
opts.gapi_codegen, '--generate', api_xml,
'--outdir=' + opts.out,
'--glue-filename=' + opts.glue_file,
'--gluelib-name=' + opts.glue_libname,
'--glue-includes=' + opts.glue_includes,
'--assembly-name=' + opts.assembly_name,]
if opts.schema:
cmd += ['--schema=' + opts.schema]
for flag in opts.extra_includes:
flags = flag.split()
for flag in flags:
if not flag.startswith('-I'):
flag = '-I' + flag
cmd.append(flag)
print(' '.join(cmd))
subprocess.check_call(cmd)
# WORKAROUND: Moving files into the out directory with special names
# as meson doesn't like path separator in output names.
regex = re.compile('_')
dirs = set()
for _f in opts.files.split(';'):
fpath = os.path.join(opts.out, regex.sub("/", _f, 1))
dirs.add(os.path.dirname(fpath))
_f = os.path.join(opts.out, _f)
shutil.move(fpath, _f)
missing_files = []
for _dir in dirs:
missing_files.extend(glob.glob(os.path.join(_dir, '*.cs')))
if missing_files:
print("Following files were generated but not listed:\n %s" %
'\n '.join(["'%s_%s'," % (m.split(os.path.sep)[-2], m.split(os.path.sep)[-1])
for m in missing_files]))
exit(1)
for _dir in dirs:
shutil.rmtree(_dir)

95
meson.build Normal file
View file

@ -0,0 +1,95 @@
project('gstreamer-sharp', ['cs', 'c'], version: '1.12.0',
meson_version: '>0.42')
if host_machine.system() == 'osx'
lib_prefix=''
lib_suffix='.dylib'
else
lib_prefix='.so'
lib_suffix=''
endif
gtk_sharp_required_version = '>=3.22.6'
glib_sharp_dep = dependency('glib-sharp-3.0',
version: gtk_sharp_required_version,
fallback: ['gtk-sharp', 'glib_sharp_dep'])
gio_sharp_dep = dependency('gio-sharp-3.0',
version: gtk_sharp_required_version,
fallback: ['gtk-sharp', 'gio_sharp_dep'])
if glib_sharp_dep.type_name() == 'internal'
gtk_sharp = subproject('gtk-sharp')
gapi_fixup = gtk_sharp.get_variable('gapi_fixup')
gapi_codegen = gtk_sharp.get_variable('gapi_codegen')
glib_api_includes = gtk_sharp.get_variable('glib_api_includes')
gio_api_includes = gtk_sharp.get_variable('gio_api_includes')
has_gtk = gtk_sharp.get_variable('has_gtk')
if has_gtk
gtk_sharp_dep = [gtk_sharp.get_variable('gtk_sharp_dep'),
gtk_sharp.get_variable('atk_sharp_dep')]
else
gtk_sharp_dep = dependency('gtk-sharp-3.0', version: gtk_sharp_required_version,
required: false)
endif
codegen_dependencies = [gapi_codegen, gapi_fixup]
gapi_fixup = gapi_fixup.full_path()
gapi_codegen = gapi_codegen.full_path()
else
gtk_sharp_dep = dependency('gtk-sharp-3.0', version: gtk_sharp_required_version,
required: false)
has_gtk = gtk_sharp_dep.found()
gapi_fixup = find_program('gapi3-fixup')
gapi_codegen = find_program('gapi3-codegen')
pkgconfig = find_program('pkg-config')
glib_api_includes = run_command(pkgconfig, '--cflags', 'glib-sharp-3.0').stdout()
gio_api_includes = run_command(pkgconfig, '--cflags', 'gio-sharp-3.0').stdout()
codegen_dependencies = []
endif
gacutil = find_program('gacutil')
generate_api = find_program('generate_code.py')
gacutil_install = join_paths(meson.current_source_dir(), 'gacutil_install.py')
# TODO Handle monodoc
apiversion = '1.0'
gst_required_version = '>=@0@'.format(meson.project_version())
gst_deps = []
foreach dep: [
['gstreamer', ['gstreamer', 'gst_dep']],
['gstreamer-app', ['gst-plugins-base', 'app_dep']],
['gstreamer-audio', ['gst-plugins-base', 'audio_dep']],
['gstreamer-base', ['gst-plugins-base', 'audio_dep']],
['gstreamer-controller', ['gstreamer', 'gst_controller_dep']],
['gstreamer-fft', ['gst-plugins-base', 'fft_dep']],
['gstreamer-net', ['gstreamer', 'gst_net_dep']],
['gstreamer-pbutils', ['gst-plugins-base', 'pbutils_dep']],
['gstreamer-riff', ['gst-plugins-base', 'riff_dep']],
['gstreamer-rtp', ['gst-plugins-base', 'rtp_dep']],
['gstreamer-rtsp', ['gst-plugins-base', 'rtsp_dep']],
['gstreamer-sdp', ['gst-plugins-base', 'sdp_dep']],
['gstreamer-tag', ['gst-plugins-base', 'tag_dep']],
['gstreamer-video', ['gst-plugins-base', 'video_dep']],]
gst_deps += [dependency(dep.get(0) + '-' + apiversion, version: gst_required_version,
fallback: dep.get(1))]
endforeach
subdir('sources')
subdir('samples')
bindinate = find_program('bindinate', required: false)
if bindinate.found()
run_target('update-bindings',
command: [bindinate,
'--name=gstreamer', '--regenerate=true',
'--merge-with=GstApp-1.0,GstAudio-1.0,GstBase-1.0,GstController-1.0,GstFft-1.0,GstNet-1.0,GstPbutils-1.0,GstRiff-1.0,GstRtp-1.0,GstRtsp-1.0,GstSdp-1.0,GstTag-1.0,GstVideo-1.0',
'--gir=Gst-1.0']
)
endif

35
samples/meson.build Normal file
View file

@ -0,0 +1,35 @@
examples = [
['playback', 'Playback.cs'],
['video-overlay' , 'VideoOverlay.cs', has_gtk, gtk_sharp_dep],
['basic-tutorial-1' , 'BasicTutorial1.cs',],
['basic-tutorial-2' , 'BasicTutorial2.cs',],
['basic-tutorial-3' , 'BasicTutorial3.cs',],
['basic-tutorial-4' , 'BasicTutorial4.cs',],
['basic-tutorial-5' , 'BasicTutorial5.cs', has_gtk, gtk_sharp_dep],
['basic-tutorial-6' , 'BasicTutorial6.cs',],
['basic-tutorial-7' , 'BasicTutorial7.cs',],
['basic-tutorial-8' , 'BasicTutorial8.cs',],
['basic-tutorial-9' , 'BasicTutorial9.cs',],
['basic-tutorial-12' , 'BasicTutorial12.cs',],
['basic-tutorial-13' , 'BasicTutorial13.cs',],
['example-volume' , 'ExampleVolume.cs',],
['playback-tutorial-1' , 'PlaybackTutorial1.cs',],
['playback-tutorial-2' , 'PlaybackTutorial2.cs',],
['playback-tutorial-3' , 'PlaybackTutorial3.cs',],
['playback-tutorial-4' , 'PlaybackTutorial4.cs',],
['playback-tutorial-5' , 'PlaybackTutorial5.cs',],
['playback-tutorial-6' , 'PlaybackTutorial6.cs',],
['playback-tutorial-7' , 'PlaybackTutorial7.cs',],
]
foreach example: examples
deps = [gst_sharp_dep]
if example.length() == 2 or example.get(2)
if example.length() > 2
deps += example.get(3)
endif
executable(example.get(0), example.get(1),
cs_args: ['-unsafe'], dependencies: deps)
endif
endforeach

View file

@ -0,0 +1,736 @@
generated_sources = [
'Gst.Sdp_MIKEYMacAlg.cs',
'Gst.Sdp_MIKEYPRFFunc.cs',
'Gst.Sdp_SDPResult.cs',
'Gst.Sdp_MIKEYTSType.cs',
'Gst.Sdp_Global.cs',
'Gst.Sdp_MIKEYDecryptInfo.cs',
'Gst.Sdp_MIKEYPayload.cs',
'Gst.Sdp_SDPMessage.cs',
'Gst.Sdp_SDPKey.cs',
'Gst.Sdp_SDPZone.cs',
'Gst.Sdp_MIKEYCacheType.cs',
'Gst.Sdp_MIKEYPayloadPKE.cs',
'Gst.Sdp_MIKEYMapType.cs',
'Gst.Sdp_MIKEYKeyDataType.cs',
'Gst.Sdp_MIKEYPayloadSP.cs',
'Gst.Sdp_SDPAttribute.cs',
'Gst.Sdp_SDPOrigin.cs',
'Gst.Sdp_MIKEYPayloadT.cs',
'Gst.Sdp_MIKEYMapSRTP.cs',
'Gst.Sdp_MIKEYKVType.cs',
'Gst.Sdp_MIKEYPayloadSPParam.cs',
'Gst.Sdp_SDPBandwidth.cs',
'Gst.Sdp_MIKEYSecSRTP.cs',
'Gst.Sdp_MIKEYPayloadType.cs',
'Gst.Sdp_MIKEYSecProto.cs',
'Gst.Sdp_MIKEYPayloadKEMAC.cs',
'Gst.Sdp_MIKEYMessage.cs',
'Gst.Sdp_MIKEYEncAlg.cs',
'Gst.Sdp_MIKEYEncryptInfo.cs',
'Gst.Sdp_SDPTime.cs',
'Gst.Sdp_MIKEYPayloadRAND.cs',
'Gst.Sdp_MIKEYPayloadKeyData.cs',
'Gst.Sdp_SDPMedia.cs',
'Gst.Sdp_MIKEYType.cs',
'Gst.Sdp_SDPConnection.cs',
'Gst.Sdp_Constants.cs',
'Gst.Rtsp_RTSPAuthMethod.cs',
'Gst.Rtsp_Global.cs',
'Gst.Rtsp_RTSPTime2.cs',
'Gst.Rtsp_RTSPEvent.cs',
'Gst.Rtsp_RTSPRangeUnit.cs',
'Gst.Rtsp_RTSPWatch.cs',
'Gst.Rtsp_RTSPVersion.cs',
'Gst.Rtsp_RTSPMessage.cs',
'Gst.Rtsp_RTSPResult.cs',
'Gst.Rtsp_RTSPUrl.cs',
'Gst.Rtsp_RTSPConnection.cs',
'Gst.Rtsp_RTSPHeaderField.cs',
'Gst.Rtsp_SendEventHandler.cs',
'Gst.Rtsp_RTSPLowerTrans.cs',
'Gst.Rtsp_RTSPState.cs',
'Gst.Rtsp_RTSPMsgType.cs',
'Gst.Rtsp_RTSPWatchFuncs.cs',
'Gst.Rtsp_RTSPTransMode.cs',
'Gst.Rtsp_RTSPAuthCredential.cs',
'Gst.Rtsp_RTSPTimeRange.cs',
'Gst.Rtsp_IRTSPExtension.cs',
'Gst.Rtsp_RTSPTimeType.cs',
'Gst.Rtsp_RTSPMethod.cs',
'Gst.Rtsp_RTSPFamily.cs',
'Gst.Rtsp_RTSPTransport.cs',
'Gst.Rtsp_RTSPExtensionAdapter.cs',
'Gst.Rtsp_RTSPRange.cs',
'Gst.Rtsp_RTSPProfile.cs',
'Gst.Rtsp_RTSPStatusCode.cs',
'Gst.Rtsp_Constants.cs',
'Gst.Rtsp_RTSPAuthParam.cs',
'Gst.Rtsp_RTSPTime.cs',
'Gst.Base_Gst.BaseSharp.CollectPadsFunctionNative.cs',
'Gst.Base_CollectPadsCompareFunction.cs',
'Gst.Base_Gst.BaseSharp.CollectPadsCompareFunctionNative.cs',
'Gst.Base_Gst.BaseSharp.TypeFindHelperGetRangeFunctionNative.cs',
'Gst.Base_Gst.BaseSharp.DataQueueCheckFullFunctionNative.cs',
'Gst.Base_Global.cs',
'Gst.Base_CollectPadsFunction.cs',
'Gst.Base_DataQueueEmptyCallback.cs',
'Gst.Base_BaseSrc.cs',
'Gst.Base_Gst.BaseSharp.CollectDataDestroyNotifyNative.cs',
'Gst.Base_CollectPadsClipFunction.cs',
'Gst.Base_PushSrc.cs',
'Gst.Base_TypeFindHelperGetRangeFunction.cs',
'Gst.Base_Adapter.cs',
'Gst.Base_Gst.BaseSharp.CollectPadsEventFunctionNative.cs',
'Gst.Base_BaseParseFrame.cs',
'Gst.Base_DataQueue.cs',
'Gst.Base_CollectDataDestroyNotify.cs',
'Gst.Base_FlowCombiner.cs',
'Gst.Base_Gst.BaseSharp.CollectPadsClipFunctionNative.cs',
'Gst.Base_BaseParseFrameFlags.cs',
'Gst.Base_Gst.BaseSharp.DataQueueFullCallbackNative.cs',
'Gst.Base_DataQueueSize.cs',
'Gst.Base_Gst.BaseSharp.CollectPadsFlushFunctionNative.cs',
'Gst.Base_CollectPadsQueryFunction.cs',
'Gst.Base_Gst.BaseSharp.CollectPadsBufferFunctionNative.cs',
'Gst.Base_CollectPadsStateFlags.cs',
'Gst.Base_BaseTransform.cs',
'Gst.Base_ByteReader.cs',
'Gst.Base_CollectPads.cs',
'Gst.Base_DataQueueFullCallback.cs',
'Gst.Base_BitReader.cs',
'Gst.Base_Gst.BaseSharp.DataQueueEmptyCallbackNative.cs',
'Gst.Base_ByteWriter.cs',
'Gst.Base_Gst.BaseSharp.CollectPadsQueryFunctionNative.cs',
'Gst.Base_QueueArray.cs',
'Gst.Base_DataQueueCheckFullFunction.cs',
'Gst.Base_BaseParse.cs',
'Gst.Base_CollectPadsFlushFunction.cs',
'Gst.Base_CollectData.cs',
'Gst.Base_Constants.cs',
'Gst.Base_CollectPadsEventFunction.cs',
'Gst.Base_BaseSink.cs',
'Gst.Base_CollectPadsBufferFunction.cs',
'Gst.Base_BaseSrcFlags.cs',
'Gst.Base_DataQueueItem.cs',
'Gst.PbUtils_EncodingTarget.cs',
'Gst.PbUtils_EncodingAudioProfile.cs',
'Gst.PbUtils_EncodingContainerProfile.cs',
'Gst.PbUtils_SourceSetupHandler.cs',
'Gst.PbUtils_Global.cs',
'Gst.PbUtils_DiscovererVideoInfo.cs',
'Gst.PbUtils_Gst.PbUtilsSharp.AudioVisualizerShaderFuncNative.cs',
'Gst.PbUtils_InstallPluginsResultFunc.cs',
'Gst.PbUtils_EncodingProfile.cs',
'Gst.PbUtils_DiscovererContainerInfo.cs',
'Gst.PbUtils_InstallPluginsContext.cs',
'Gst.PbUtils_DiscovererResult.cs',
'Gst.PbUtils_DiscoveredHandler.cs',
'Gst.PbUtils_InstallPluginsReturn.cs',
'Gst.PbUtils_DiscovererStreamInfo.cs',
'Gst.PbUtils_AudioVisualizerShaderFunc.cs',
'Gst.PbUtils_AudioVisualizer.cs',
'Gst.PbUtils_Constants.cs',
'Gst.PbUtils_Discoverer.cs',
'Gst.PbUtils_DiscovererSubtitleInfo.cs',
'Gst.PbUtils_DiscovererSerializeFlags.cs',
'Gst.PbUtils_DiscovererAudioInfo.cs',
'Gst.PbUtils_AudioVisualizerShader.cs',
'Gst.PbUtils_DiscovererInfo.cs',
'Gst.PbUtils_EncodingVideoProfile.cs',
'Gst.PbUtils_Gst.PbUtilsSharp.InstallPluginsResultFuncNative.cs',
'Gst_StaticCaps.cs',
'Gst_MessageType.cs',
'Gst_GstSharp.PadUnlinkFunctionNative.cs',
'Gst_Int64Range.cs',
'Gst_IPreset.cs',
'Gst_MetaInfo.cs',
'Gst_GstSharp.IteratorForeachFunctionNative.cs',
'Gst_StreamFlags.cs',
'Gst_TypeFindFunction.cs',
'Gst_QueryType.cs',
'Gst_GstSharp.TypeFindFunctionNative.cs',
'Gst_ClockType.cs',
'Gst_DeviceProvider.cs',
'Gst_MiniObjectCopyFunction.cs',
'Gst_GstSharp.PadForwardFunctionNative.cs',
'Gst_GstSharp.ValueDeserializeFuncNative.cs',
'Gst_SyncMessageHandler.cs',
'Gst_TagMergeFunc.cs',
'Gst_TimedValue.cs',
'Gst_PadFlags.cs',
'Gst_IteratorFoldFunction.cs',
'Gst_TocLoopType.cs',
'Gst_PadForwardFunction.cs',
'Gst_GstSharp.CapsFilterMapFuncNative.cs',
'Gst_ValueSerializeFunc.cs',
'Gst_MetaInitFunction.cs',
'Gst_GstSharp.MetaTransformFunctionNative.cs',
'Gst_AllocatorFlags.cs',
'Gst_PluginDesc.cs',
'Gst_GstSharp.TaskFunctionNative.cs',
'Gst_ElementCallAsyncFunc.cs',
'Gst_ValueTable.cs',
'Gst_Object.cs',
'Gst_ParamSpecArray.cs',
'Gst_GstSharp.MetaFreeFunctionNative.cs',
'Gst_ElementRemovedHandler.cs',
'Gst_GstSharp.MemoryShareFunctionNative.cs',
'Gst_MemoryMapFunction.cs',
'Gst_URIHandlerAdapter.cs',
'Gst_ClockFlags.cs',
'Gst_GstSharp.PadGetRangeFunctionNative.cs',
'Gst_Tracer.cs',
'Gst_Stream.cs',
'Gst_PadTemplateFlags.cs',
'Gst_GstSharp.IteratorItemFunctionNative.cs',
'Gst_ChildRemovedEventHandler.cs',
'Gst_ControlBinding.cs',
'Gst_PluginFlags.cs',
'Gst_Global.cs',
'Gst_IteratorResult.cs',
'Gst_BufferPoolAcquireParams.cs',
'Gst_Pipeline.cs',
'Gst_GstSharp.LogFunctionNative.cs',
'Gst_UnlinkedHandler.cs',
'Gst_SystemClock.cs',
'Gst_StreamType.cs',
'Gst_PadProbeInfo.cs',
'Gst_DeepElementAddedHandler.cs',
'Gst_ParamSpecFraction.cs',
'Gst_CapsMapFunc.cs',
'Gst_GstSharp.IteratorNextFunctionNative.cs',
'Gst_PadLinkFunction.cs',
'Gst_PresetAdapter.cs',
'Gst_GstSharp.CapsForeachFuncNative.cs',
'Gst_GstSharp.MemoryMapFunctionNative.cs',
'Gst_MetaFlags.cs',
'Gst_PadIterIntLinkFunction.cs',
'Gst_ProxyPad.cs',
'Gst_TracerValueScope.cs',
'Gst_Bitmask.cs',
'Gst_IteratorForeachFunction.cs',
'Gst_PluginDependencyFlags.cs',
'Gst_PluginInitFullFunc.cs',
'Gst_Caps.cs',
'Gst_SeekFlags.cs',
'Gst_DeepNotifyHandler.cs',
'Gst_GstSharp.MiniObjectFreeFunctionNative.cs',
'Gst_GstSharp.ElementCallAsyncFuncNative.cs',
'Gst_PadRemovedHandler.cs',
'Gst_BusFunc.cs',
'Gst_MiniObject.cs',
'Gst_AllocationParams.cs',
'Gst_MiniObjectFreeFunction.cs',
'Gst_QOSType.cs',
'Gst_StreamNotifyHandler.cs',
'Gst_GstSharp.CapsMapFuncNative.cs',
'Gst_PadAddedHandler.cs',
'Gst_PadLinkCheck.cs',
'Gst_GstSharp.PadLinkFunctionNative.cs',
'Gst_GstSharp.MiniObjectNotifyNative.cs',
'Gst_FlowReturn.cs',
'Gst_IteratorCopyFunction.cs',
'Gst_LibraryError.cs',
'Gst_IteratorNextFunction.cs',
'Gst_Memory.cs',
'Gst_GstSharp.TagMergeFuncNative.cs',
'Gst_TypeFind.cs',
'Gst_GstSharp.BusFuncNative.cs',
'Gst_GstSharp.TagForeachFuncNative.cs',
'Gst_PadProbeReturn.cs',
'Gst_GstSharp.MemoryUnmapFullFunctionNative.cs',
'Gst_Meta.cs',
'Gst_BufferCopyFlags.cs',
'Gst_TaskThreadFunc.cs',
'Gst_Toc.cs',
'Gst_ValueCompareFunc.cs',
'Gst_Clock.cs',
'Gst_TracerValueFlags.cs',
'Gst_Uri.cs',
'Gst_URIError.cs',
'Gst_TaskFunction.cs',
'Gst_GstSharp.ValueSerializeFuncNative.cs',
'Gst_Structure.cs',
'Gst_Buffer.cs',
'Gst_StreamCollection.cs',
'Gst_Application.cs',
'Gst_PadProbeCallback.cs',
'Gst_GstSharp.PadActivateModeFunctionNative.cs',
'Gst_GstSharp.BufferListFuncNative.cs',
'Gst_GstSharp.IteratorResyncFunctionNative.cs',
'Gst_MemoryFlags.cs',
'Gst_MiniObjectDisposeFunction.cs',
'Gst_GstSharp.PadProbeCallbackNative.cs',
'Gst_MiniObjectFlags.cs',
'Gst_GstSharp.IteratorCopyFunctionNative.cs',
'Gst_IteratorItem.cs',
'Gst_PadProbeType.cs',
'Gst_ParseFlags.cs',
'Gst_ValueList.cs',
'Gst_DebugLevel.cs',
'Gst_StaticPadTemplate.cs',
'Gst_GstSharp.PadQueryFunctionNative.cs',
'Gst_ClockEntry.cs',
'Gst_BufferList.cs',
'Gst_GstSharp.StructureMapFuncNative.cs',
'Gst_MapFlags.cs',
'Gst_DebugMessage.cs',
'Gst_ControlSourceGetValueArray.cs',
'Gst_PluginFeatureFilter.cs',
'Gst_ITagSetter.cs',
'Gst_ElementFactory.cs',
'Gst_DateTime.cs',
'Gst_PadGetRangeFunction.cs',
'Gst_ProgressType.cs',
'Gst_MetaTransformCopy.cs',
'Gst_ProviderUnhiddenHandler.cs',
'Gst_GstSharp.DebugFuncPtrNative.cs',
'Gst_DebugColorFlags.cs',
'Gst_MiniObjectNotify.cs',
'Gst_AtomicQueue.cs',
'Gst_MetaFreeFunction.cs',
'Gst_DynamicTypeFactory.cs',
'Gst_MemoryUnmapFullFunction.cs',
'Gst_BufferFlags.cs',
'Gst_GstSharp.MemoryIsSpanFunctionNative.cs',
'Gst_ParentBufferMeta.cs',
'Gst_GstSharp.PadChainListFunctionNative.cs',
'Gst_TagFlag.cs',
'Gst_CapsFlags.cs',
'Gst_Pad.cs',
'Gst_PluginFilter.cs',
'Gst_PadChainFunction.cs',
'Gst_ValueDeserializeFunc.cs',
'Gst_StructureMapFunc.cs',
'Gst_Value.cs',
'Gst_IteratorResyncFunction.cs',
'Gst_ClockCallback.cs',
'Gst_SchedulingFlags.cs',
'Gst_ControlBindingConvert.cs',
'Gst_Allocator.cs',
'Gst_BufferingMode.cs',
'Gst_FlagSet.cs',
'Gst_Element.cs',
'Gst_GstSharp.IteratorFoldFunctionNative.cs',
'Gst_PluginFeature.cs',
'Gst_ChildAddedEventHandler.cs',
'Gst_GstSharp.MemoryUnmapFunctionNative.cs',
'Gst_MemoryCopyFunction.cs',
'Gst_PluginInitFunc.cs',
'Gst_DebugCategory.cs',
'Gst_DeviceMonitor.cs',
'Gst_TocSetterAdapter.cs',
'Gst_PluginError.cs',
'Gst_DeepElementRemovedHandler.cs',
'Gst_GhostPad.cs',
'Gst_StructureChangeType.cs',
'Gst_TagForeachFunc.cs',
'Gst_BufferPoolAcquireFlags.cs',
'Gst_GstSharp.ControlBindingConvertNative.cs',
'Gst_GstSharp.MiniObjectDisposeFunctionNative.cs',
'Gst_Debug.cs',
'Gst_DeviceProviderFactory.cs',
'Gst_PadQueryFunction.cs',
'Gst_TocScope.cs',
'Gst_PadUnlinkFunction.cs',
'Gst_GstSharp.ControlSourceGetValueNative.cs',
'Gst_QueryTypeFlags.cs',
'Gst_CoreError.cs',
'Gst_GstSharp.ControlSourceGetValueArrayNative.cs',
'Gst_Sample.cs',
'Gst_Device.cs',
'Gst_TagMergeMode.cs',
'Gst_ProtectionMeta.cs',
'Gst_ElementFlags.cs',
'Gst_TagScope.cs',
'Gst_PadActivateFunction.cs',
'Gst_GstSharp.StructureFilterMapFuncNative.cs',
'Gst_Event.cs',
'Gst_GstSharp.PadEventFullFunctionNative.cs',
'Gst_GstSharp.PadActivateFunctionNative.cs',
'Gst_ClockReturn.cs',
'Gst_MemoryMapFullFunction.cs',
'Gst_GstSharp.PluginFilterNative.cs',
'Gst_ParseContext.cs',
'Gst_LockFlags.cs',
'Gst_StackTraceFlags.cs',
'Gst_GstSharp.TaskPoolFunctionNative.cs',
'Gst_Task.cs',
'Gst_GstSharp.ClockCallbackNative.cs',
'Gst_Registry.cs',
'Gst_TracerRecord.cs',
'Gst_Query.cs',
'Gst_PadEventFunction.cs',
'Gst_GstSharp.IteratorFreeFunctionNative.cs',
'Gst_TocEntryType.cs',
'Gst_Poll.cs',
'Gst_MemoryShareFunction.cs',
'Gst_ResourceError.cs',
'Gst_Tag.cs',
'Gst_BinFlags.cs',
'Gst_PadLinkReturn.cs',
'Gst_Bus.cs',
'Gst_GstSharp.PadIterIntLinkFunctionNative.cs',
'Gst_Segment.cs',
'Gst_GstSharp.PadChainFunctionNative.cs',
'Gst_CapsIntersectMode.cs',
'Gst_TaskPool.cs',
'Gst_CapsForeachFunc.cs',
'Gst_TypeFindFactory.cs',
'Gst_State.cs',
'Gst_Message.cs',
'Gst_Context.cs',
'Gst_LogFunction.cs',
'Gst_TagSetterAdapter.cs',
'Gst_GstSharp.PluginInitFullFuncNative.cs',
'Gst_ParseError.cs',
'Gst_IURIHandler.cs',
'Gst_PadChainListFunction.cs',
'Gst_MemoryUnmapFunction.cs',
'Gst_StateChangeReturn.cs',
'Gst_PadTemplate.cs',
'Gst_StreamError.cs',
'Gst_ObjectFlags.cs',
'Gst_GstSharp.PadStickyEventsForeachFunctionNative.cs',
'Gst_BusFlags.cs',
'Gst_ParamArray.cs',
'Gst_MessageHandler.cs',
'Gst_BusSyncHandler.cs',
'Gst_ClockEntryType.cs',
'Gst_StreamStatusType.cs',
'Gst_CapsFeatures.cs',
'Gst_PadMode.cs',
'Gst_Parse.cs',
'Gst_GstSharp.PadEventFunctionNative.cs',
'Gst_TaskState.cs',
'Gst_DebugFuncPtr.cs',
'Gst_Iterator.cs',
'Gst_Rank.cs',
'Gst_MapInfo.cs',
'Gst_GstSharp.ValueCompareFuncNative.cs',
'Gst_FeatureAddedHandler.cs',
'Gst_ControlSourceGetValue.cs',
'Gst_BufferPool.cs',
'Gst_Format.cs',
'Gst_Plugin.cs',
'Gst_PadActivateModeFunction.cs',
'Gst_PadDirection.cs',
'Gst_GstSharp.BufferForeachMetaFuncNative.cs',
'Gst_GstSharp.StructureForeachFuncNative.cs',
'Gst_DebugColorMode.cs',
'Gst_GstSharp.BusSyncHandlerNative.cs',
'Gst_SyncedHandler.cs',
'Gst_DoLatencyHandler.cs',
'Gst_BusSyncReply.cs',
'Gst_PadPresence.cs',
'Gst_ControlSource.cs',
'Gst_GstSharp.PluginInitFuncNative.cs',
'Gst_PadEventFullFunction.cs',
'Gst_SearchMode.cs',
'Gst_ChildProxyAdapter.cs',
'Gst_IChildProxy.cs',
'Gst_PadStickyEventsForeachFunction.cs',
'Gst_SeekType.cs',
'Gst_GstSharp.MemoryMapFullFunctionNative.cs',
'Gst_GstSharp.MiniObjectCopyFunctionNative.cs',
'Gst_BufferListFunc.cs',
'Gst_MemoryIsSpanFunction.cs',
'Gst_ITocSetter.cs',
'Gst_MetaTransformFunction.cs',
'Gst_Constants.cs',
'Gst_PadCreatedEventHandler.cs',
'Gst_ProviderHiddenHandler.cs',
'Gst_StructureFilterMapFunc.cs',
'Gst_PluginAddedHandler.cs',
'Gst_ValueArray.cs',
'Gst_DebugGraphDetails.cs',
'Gst_IteratorItemFunction.cs',
'Gst_StructureForeachFunc.cs',
'Gst_EventType.cs',
'Gst_ElementAddedHandler.cs',
'Gst_Util.cs',
'Gst_CapsFilterMapFunc.cs',
'Gst_GstSharp.TaskThreadFuncNative.cs',
'Gst_PipelineFlags.cs',
'Gst_FormatDefinition.cs',
'Gst_URIType.cs',
'Gst_ParamFraction.cs',
'Gst_TracerFactory.cs',
'Gst_GstSharp.MetaInitFunctionNative.cs',
'Gst_TypeFindProbability.cs',
'Gst_Bin.cs',
'Gst_GstSharp.MemoryCopyFunctionNative.cs',
'Gst_StateChange.cs',
'Gst_LinkedHandler.cs',
'Gst_GstSharp.PluginFeatureFilterNative.cs',
'Gst_TocEntry.cs',
'Gst_EventTypeFlags.cs',
'Gst_IteratorFreeFunction.cs',
'Gst_TagList.cs',
'Gst_TaskPoolFunction.cs',
'Gst_BufferForeachMetaFunc.cs',
'Gst_SegmentFlags.cs',
'Gst_PollFD.cs',
'Gst.Tags_TagXmpWriterAdapter.cs',
'Gst.Tags_Global.cs',
'Gst.Tags_TagMux.cs',
'Gst.Tags_TagDemux.cs',
'Gst.Tags_ITagXmpWriter.cs',
'Gst.Tags_TagImageType.cs',
'Gst.Tags_TagLicenseFlags.cs',
'Gst.Tags_TagDemuxResult.cs',
'Gst.Tags_Constants.cs',
'Gst.FFT_FFTS16.cs',
'Gst.FFT_Global.cs',
'Gst.FFT_FFTF64.cs',
'Gst.FFT_FFTF64Complex.cs',
'Gst.FFT_FFTS32.cs',
'Gst.FFT_FFTWindow.cs',
'Gst.FFT_FFTF32.cs',
'Gst.FFT_FFTF32Complex.cs',
'Gst.FFT_FFTS16Complex.cs',
'Gst.FFT_FFTS32Complex.cs',
'Gst.FFT_Constants.cs',
'Gst.App_NewSampleHandler.cs',
'Gst.App_AppSrc.cs',
'Gst.App_SeekDataHandler.cs',
'Gst.App_TryPullPrerollEventHandler.cs',
'Gst.App_Global.cs',
'Gst.App_NeedDataHandler.cs',
'Gst.App_AppSink.cs',
'Gst.App_NewPrerollHandler.cs',
'Gst.App_TryPullSampleEventHandler.cs',
'Gst.App_AppStreamType.cs',
'Gst.App_AppSrcCallbacks.cs',
'Gst.App_AppSinkCallbacks.cs',
'Gst.App_PushSampleEventHandler.cs',
'Gst.App_PushBufferEventHandler.cs',
'Gst.App_Constants.cs',
'Gst.App_EndOfStreamEventHandler.cs',
'Gst.Video_VideoDitherFlags.cs',
'Gst.Video_VideoCodecFrameFlags.cs',
'Gst.Video_VideoInterlaceMode.cs',
'Gst.Video_VideoGammaMode.cs',
'Gst.Video_VideoMultiviewMode.cs',
'Gst.Video_VideoMultiviewFramePacking.cs',
'Gst.Video_VideoFormatPack.cs',
'Gst.Video_VideoAlignment.cs',
'Gst.Video_VideoDither.cs',
'Gst.Video_NavigationQueryType.cs',
'Gst.Video_Gst.VideoSharp.VideoGLTextureUploadNative.cs',
'Gst.Video_NavigationEventType.cs',
'Gst.Video_VideoFormat.cs',
'Gst.Video_IVideoDirection.cs',
'Gst.Video_VideoTimeCode.cs',
'Gst.Video_NavigationAdapter.cs',
'Gst.Video_Global.cs',
'Gst.Video_VideoResamplerFlags.cs',
'Gst.Video_VideoInfo.cs',
'Gst.Video_ColorBalanceType.cs',
'Gst.Video_VideoScaler.cs',
'Gst.Video_VideoDecoder.cs',
'Gst.Video_VideoMetaTransform.cs',
'Gst.Video_VideoAffineTransformationMeta.cs',
'Gst.Video_IVideoOverlay.cs',
'Gst.Video_VideoFlags.cs',
'Gst.Video_IColorBalance.cs',
'Gst.Video_VideoChromaResample.cs',
'Gst.Video_VideoTimeCodeInterval.cs',
'Gst.Video_VideoSink.cs',
'Gst.Video_VideoPackFlags.cs',
'Gst.Video_VideoResampler.cs',
'Gst.Video_VideoColorRange.cs',
'Gst.Video_VideoOrientationMethod.cs',
'Gst.Video_Gst.VideoSharp.VideoFormatPackNative.cs',
'Gst.Video_VideoColorPrimariesInfo.cs',
'Gst.Video_VideoFilter.cs',
'Gst.Video_VideoChromaMode.cs',
'Gst.Video_VideoDirectionAdapter.cs',
'Gst.Video_VideoColorMatrix.cs',
'Gst.Video_VideoGLTextureUpload.cs',
'Gst.Video_INavigation.cs',
'Gst.Video_VideoGLTextureOrientation.cs',
'Gst.Video_VideoFormatFlags.cs',
'Gst.Video_VideoFrameFlags.cs',
'Gst.Video_VideoOverlayCompositionMeta.cs',
'Gst.Video_VideoOverlayRectangle.cs',
'Gst.Video_VideoTileType.cs',
'Gst.Video_Gst.VideoSharp.VideoAffineTransformationGetMatrixNative.cs',
'Gst.Video_VideoGLTextureUploadMeta.cs',
'Gst.Video_VideoFormatInfo.cs',
'Gst.Video_VideoFormatUnpack.cs',
'Gst.Video_VideoTimeCodeConfig.cs',
'Gst.Video_VideoTransferFunction.cs',
'Gst.Video_Gst.VideoSharp.VideoConvertSampleCallbackNative.cs',
'Gst.Video_VideoChromaSite.cs',
'Gst.Video_VideoColorimetry.cs',
'Gst.Video_ValueChangedEventHandler.cs',
'Gst.Video_VideoScalerFlags.cs',
'Gst.Video_VideoAlphaMode.cs',
'Gst.Video_VideoResamplerMethod.cs',
'Gst.Video_VideoCodecFrame.cs',
'Gst.Video_Gst.VideoSharp.VideoFormatUnpackNative.cs',
'Gst.Video_ValueChangedHandler.cs',
'Gst.Video_VideoRectangle.cs',
'Gst.Video_VideoConvertSampleCallback.cs',
'Gst.Video_NavigationMessageType.cs',
'Gst.Video_VideoEncoder.cs',
'Gst.Video_VideoTimeCodeMeta.cs',
'Gst.Video_VideoOverlayComposition.cs',
'Gst.Video_VideoColorPrimaries.cs',
'Gst.Video_VideoTimeCodeFlags.cs',
'Gst.Video_VideoBufferPool.cs',
'Gst.Video_VideoOrientationAdapter.cs',
'Gst.Video_VideoChromaMethod.cs',
'Gst.Video_IVideoOrientation.cs',
'Gst.Video_VideoFrameMapFlags.cs',
'Gst.Video_VideoCropMeta.cs',
'Gst.Video_VideoBufferFlags.cs',
'Gst.Video_VideoFrame.cs',
'Gst.Video_VideoMeta.cs',
'Gst.Video_VideoConverter.cs',
'Gst.Video_ColorBalanceAdapter.cs',
'Gst.Video_VideoChromaFlags.cs',
'Gst.Video_VideoCodecState.cs',
'Gst.Video_VideoGLTextureType.cs',
'Gst.Video_Constants.cs',
'Gst.Video_ColorBalanceChannel.cs',
'Gst.Video_VideoOverlayFormatFlags.cs',
'Gst.Video_VideoMultiviewFlagsSet.cs',
'Gst.Video_NavigationCommand.cs',
'Gst.Video_VideoDitherMethod.cs',
'Gst.Video_VideoOverlayAdapter.cs',
'Gst.Video_VideoRegionOfInterestMeta.cs',
'Gst.Video_VideoPrimariesMode.cs',
'Gst.Video_VideoFieldOrder.cs',
'Gst.Video_VideoAffineTransformationGetMatrix.cs',
'Gst.Video_VideoMatrixMode.cs',
'Gst.Video_VideoTileMode.cs',
'Gst.Video_VideoMultiviewFlags.cs',
'GtkSharp_ObjectManager.cs',
'Gst.Controller_InterpolationControlSource.cs',
'Gst.Controller_ValueAddedHandler.cs',
'Gst.Controller_Global.cs',
'Gst.Controller_TimedValueControlSource.cs',
'Gst.Controller_LFOControlSource.cs',
'Gst.Controller_LFOWaveform.cs',
'Gst.Controller_ProxyControlBinding.cs',
'Gst.Controller_ARGBControlBinding.cs',
'Gst.Controller_ValueRemovedHandler.cs',
'Gst.Controller_Gst.ControllerSharp.DirectControlBindingConvertGValueNative.cs',
'Gst.Controller_ValueChangedHandler.cs',
'Gst.Controller_ControlPoint.cs',
'Gst.Controller_DirectControlBinding.cs',
'Gst.Controller_TriggerControlSource.cs',
'Gst.Controller_InterpolationMode.cs',
'Gst.Controller_DirectControlBindingConvertGValue.cs',
'Gst.Controller_Constants.cs',
'Gst.Controller_Gst.ControllerSharp.DirectControlBindingConvertValueNative.cs',
'Gst.Controller_DirectControlBindingConvertValue.cs',
'Gst.Audio_Gst.AudioSharp.AudioRingBufferCallbackNative.cs',
'Gst.Audio_AudioRingBufferCallback.cs',
'Gst.Audio_AudioCdSrcTrack.cs',
'Gst.Audio_AudioFormatPack.cs',
'Gst.Audio_Global.cs',
'Gst.Audio_AudioCdSrcMode.cs',
'Gst.Audio_AudioClockGetTimeFunc.cs',
'Gst.Audio_AudioResamplerMethod.cs',
'Gst.Audio_Gst.AudioSharp.AudioFormatPackNative.cs',
'Gst.Audio_AudioFormatInfo.cs',
'Gst.Audio_AudioDownmixMeta.cs',
'Gst.Audio_AudioConverterFlags.cs',
'Gst.Audio_AudioClippingMeta.cs',
'Gst.Audio_AudioResampler.cs',
'Gst.Audio_Gst.AudioSharp.AudioFormatUnpackNative.cs',
'Gst.Audio_AudioSrc.cs',
'Gst.Audio_AudioRingBufferFormatType.cs',
'Gst.Audio_AudioSink.cs',
'Gst.Audio_StreamVolumeFormat.cs',
'Gst.Audio_AudioBaseSrcSlaveMethod.cs',
'Gst.Audio_AudioQuantizeFlags.cs',
'Gst.Audio_AudioRingBuffer.cs',
'Gst.Audio_AudioFormatUnpack.cs',
'Gst.Audio_AudioEncoder.cs',
'Gst.Audio_AudioBaseSinkDiscontReason.cs',
'Gst.Audio_Gst.AudioSharp.AudioBaseSinkCustomSlavingCallbackNative.cs',
'Gst.Audio_AudioNoiseShapingMethod.cs',
'Gst.Audio_AudioFormat.cs',
'Gst.Audio_AudioRingBufferState.cs',
'Gst.Audio_AudioChannelMixer.cs',
'Gst.Audio_AudioDecoder.cs',
'Gst.Audio_AudioCdSrc.cs',
'Gst.Audio_AudioFlags.cs',
'Gst.Audio_AudioResamplerFlags.cs',
'Gst.Audio_AudioFilter.cs',
'Gst.Audio_AudioClock.cs',
'Gst.Audio_AudioLayout.cs',
'Gst.Audio_AudioBaseSink.cs',
'Gst.Audio_AudioQuantize.cs',
'Gst.Audio_AudioPackFlags.cs',
'Gst.Audio_Gst.AudioSharp.AudioClockGetTimeFuncNative.cs',
'Gst.Audio_IStreamVolume.cs',
'Gst.Audio_AudioRingBufferSpec.cs',
'Gst.Audio_AudioFormatFlags.cs',
'Gst.Audio_AudioDitherMethod.cs',
'Gst.Audio_AudioBaseSrc.cs',
'Gst.Audio_AudioChannelMixerFlags.cs',
'Gst.Audio_Constants.cs',
'Gst.Audio_AudioInfo.cs',
'Gst.Audio_AudioBaseSinkSlaveMethod.cs',
'Gst.Audio_AudioBaseSinkCustomSlavingCallback.cs',
'Gst.Audio_StreamVolumeAdapter.cs',
'Gst.Audio_AudioConverter.cs',
'Gst.Audio_AudioResamplerFilterMode.cs',
'Gst.Audio_AudioChannelPosition.cs',
'Gst.Audio_AudioResamplerFilterInterpolation.cs',
'Gst.Net_NetClientClock.cs',
'Gst.Net_Global.cs',
'Gst.Net_PtpClock.cs',
'Gst.Net_Gst.NetSharp.PtpStatisticsCallbackNative.cs',
'Gst.Net_NetControlMessageMeta.cs',
'Gst.Net_NtpClock.cs',
'Gst.Net_NetAddressMeta.cs',
'Gst.Net_NetTimePacket.cs',
'Gst.Net_Constants.cs',
'Gst.Net_PtpStatisticsCallback.cs',
'Gst.Net_NetTimeProvider.cs',
'Gst.Rtp_RTCPPacket.cs',
'Gst.Rtp_RTPPayload.cs',
'Gst.Rtp_Global.cs',
'Gst.Rtp_RTCPBuffer.cs',
'Gst.Rtp_RTCPFBType.cs',
'Gst.Rtp_RTCPType.cs',
'Gst.Rtp_RTCPSDESType.cs',
'Gst.Rtp_RTPProfile.cs',
'Gst.Rtp_RTPBufferFlags.cs',
'Gst.Rtp_RTPBaseDepayload.cs',
'Gst.Rtp_RTPPayloadInfo.cs',
'Gst.Rtp_RTPBasePayload.cs',
'Gst.Rtp_RTPBufferMapFlags.cs',
'Gst.Rtp_Constants.cs',
'Gst.Rtp_RTPBuffer.cs',
'Gst.Rtp_RTPBaseAudioPayload.cs'
]
source_gen = custom_target('gst_codegen',
input: raw_api_fname,
output: generated_sources,
command: [
generate_api,
'--api-raw', '@INPUT@',
'--gapi-fixup', gapi_fixup,
'--metadata', metadata_fname,
'--gapi-codegen', gapi_codegen,
'--extra-includes=' + glib_api_includes,
'--extra-includes=' + gio_api_includes,
'--glue-file', gluefile,
'--glue-includes', glueincludes,
'--out', meson.current_build_dir(),
'--files', ';'.join(generated_sources),
'--assembly-name', meson.project_name(),
'--glue-libname', 'libgstreamersharpglue-1.0.0.dll',
],
depend_files: [raw_api_fname],
depends: codegen_dependencies)

59
sources/meson.build Normal file
View file

@ -0,0 +1,59 @@
raw_api_fname = join_paths(meson.current_source_dir(), meson.project_name() + '-api.raw')
metadata_fname = join_paths(meson.current_source_dir(), meson.project_name() + '.metadata')
snk = join_paths(meson.current_source_dir(), '../', meson.project_name() + '.snk')
glueincludes = 'gst/gst.h,gst/app/app.h,gst/audio/audio.h,gst/base/base.h,gst/controller/controller.h,gst/fft/fft.h,gst/net/net.h,gst/pbutils/gstaudiovisualizer.h,gst/pbutils/pbutils.h,gst/rtp/rtp.h,gst/rtsp/rtsp.h,gst/sdp/sdp.h,gst/tag/tag.h,gst/video/video.h'
gluefile = join_paths(meson.current_build_dir(), 'generate.c')
sources = [
'custom/Adapter.cs',
'custom/Application.cs',
'custom/AppSink.cs',
'custom/AppSrc.cs',
'custom/AudioFilter.cs',
'custom/Bin.cs',
'custom/Buffer.cs',
'custom/Bus.cs',
'custom/Caps.cs',
'custom/DeviceProvider.cs',
'custom/DynamicSignal.cs',
'custom/Element.cs',
'custom/FFTF32.cs',
'custom/Iterator.cs',
'custom/MapInfo.cs',
'custom/Message.cs',
'custom/MiniObject.cs',
'custom/NavigationAdapter.cs',
'custom/Object.cs',
'custom/Pad.cs',
'custom/Pipeline.cs',
'custom/TagList.cs',
'custom/Value.cs',
'custom/Version.cs',
'custom/VideoGLUploadMeta.cs'
]
subdir('generated')
# Install with gacutil_install.py from gtk-sharp.
gst_sharp = library('gstreamer-sharp', source_gen, sources,
cs_args: ['-nowarn:169', '-nowarn:108', '-nowarn:114', '-unsafe',
'-keyfile:' + snk],
dependencies: [glib_sharp_dep, gio_sharp_dep])
gluegen = custom_target('gluegen',
input: raw_api_fname,
output: 'generate.c',
command: [generate_api, '--fakeglue'],
depends: [source_gen])
library('gstreamersharpglue-1.0.0', gluegen, 'glue/gobject.c', dependencies: gst_deps)
gst_sharp_dep = declare_dependency(dependencies: [glib_sharp_dep, gio_sharp_dep],
link_with: gst_sharp)
meson.add_install_script(gacutil_install, meson.project_name(), gst_sharp.full_path())
configure_file(
input: '../out/gstreamer-sharp.dll.config',
output: 'gstreamer-sharp.dll.config',
configuration: configuration_data())

View file

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