mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-20 08:41:07 +00:00
cf9fd6ec9a
Also fix indention everywhere and change code to use Gst.MiniObject.GetObject() instead of GLib.Opaque.GetOpaque(). It's currently not possible to implement or use GInterfaces on mini objects but apart from that this should be a great improvement, especially new mini object classes can be defined in C# now.
138 lines
3.7 KiB
Makefile
138 lines
3.7 KiB
Makefile
SUBDIRS = . glue
|
|
|
|
TARGET = $(ASSEMBLY)
|
|
noinst_DATA = $(TARGET)
|
|
APIS = $(API)
|
|
API = gstreamer-api.xml
|
|
RAW_API = gstreamer-api.raw
|
|
METADATA = Gstreamer.metadata
|
|
SYMBOLS=gstreamer-symbols.xml
|
|
ASSEMBLY_NAME = gstreamer-sharp
|
|
references = $(GLIBSHARP_LIBS)
|
|
KEYFILE = gstreamer-sharp.snk
|
|
|
|
ASSEMBLY = $(ASSEMBLY_NAME).dll
|
|
gapidir = $(datadir)/gapi
|
|
gapi_DATA = $(APIS)
|
|
|
|
glue_includes="gst/gst.h gst/interfaces/colorbalance.h gst/interfaces/colorbalancechannel.h gst/interfaces/tuner.h gst/interfaces/tunerchannel.h gst/interfaces/tunernorm.h"
|
|
|
|
CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs glue/generated.c $(API) $(KEYFILE)
|
|
DISTCLEANFILES = $(ASSEMBLY).config AssemblyInfo.cs
|
|
MAINTAINERCLEANFILES = Makefile.in
|
|
|
|
install-data-local:
|
|
@if test -n '$(TARGET)'; then \
|
|
echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
|
|
$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
|
|
fi
|
|
|
|
uninstall-local:
|
|
@if test -n '$(TARGET)'; then \
|
|
echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
|
|
$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
|
|
fi
|
|
|
|
clean-local:
|
|
rm -rf generated
|
|
|
|
sources = \
|
|
DynamicSignal.cs \
|
|
BindingHelper.cs \
|
|
Application.cs \
|
|
Version.cs \
|
|
AssemblyInfo.cs \
|
|
GError.cs \
|
|
Value.cs \
|
|
PropertyInfo.cs \
|
|
EnumInfo.cs \
|
|
Iterator.cs \
|
|
MiniObject.cs \
|
|
GstSharp.PadQueryTypeFunctionNative.cs \
|
|
PadQueryTypeFunction.cs \
|
|
TypeFindDelegates.cs \
|
|
PresetDefault.cs \
|
|
MixerMessage.cs \
|
|
NavigationMessage.cs \
|
|
NavigationEvent.cs \
|
|
NavigationQuery.cs \
|
|
coreplugins/*.cs \
|
|
baseplugins/*.cs
|
|
|
|
overrides = \
|
|
override/URIHandlerAdapter.cs \
|
|
override/ColorBalanceAdapter.cs \
|
|
override/ColorBalance.cs \
|
|
override/Mixer.cs \
|
|
override/MixerAdapter.cs \
|
|
override/PropertyProbe.cs \
|
|
override/PropertyProbeAdapter.cs \
|
|
override/ProbeNeededHandler.cs \
|
|
override/NavigationAdapter.cs
|
|
|
|
build_sources = $(addprefix $(srcdir)/, $(sources))
|
|
|
|
customs = \
|
|
Bin.custom \
|
|
Buffer.custom \
|
|
Bus.custom \
|
|
Caps.custom \
|
|
ColorBalanceChannel.custom \
|
|
Clock.custom \
|
|
ClockEntry.custom \
|
|
Debug.custom \
|
|
Element.custom \
|
|
Message.custom \
|
|
Event.custom \
|
|
Pad.custom \
|
|
Parse.custom \
|
|
Object.custom \
|
|
PadTemplate.custom \
|
|
Plugin.custom \
|
|
Task.custom \
|
|
IndexEntry.custom \
|
|
Index.custom \
|
|
IndexFactory.custom \
|
|
Registry.custom \
|
|
Query.custom \
|
|
Structure.custom \
|
|
Tag.custom \
|
|
TagList.custom \
|
|
TypeFind.custom \
|
|
TypeFindFactory.custom \
|
|
MixerTrack.custom \
|
|
TunerNorm.custom \
|
|
TunerChannel.custom
|
|
|
|
build_customs = $(addprefix $(srcdir)/, $(customs))
|
|
|
|
EXTRA_DIST = \
|
|
$(RAW_API) \
|
|
$(SYMBOLS) \
|
|
$(METADATA) \
|
|
$(customs) \
|
|
$(sources) \
|
|
$(overrides) \
|
|
$(ASSEMBLY).config.in
|
|
|
|
$(API): $(srcdir)/$(RAW_API) $(srcdir)/$(METADATA) $(srcdir)/$(SYMBOLS)
|
|
cp $(srcdir)/$(RAW_API) $(API)
|
|
chmod u+w $(API)
|
|
$(MONO) $(top_builddir)/parser/gst-gapi-fixup.exe --api=$(API) --metadata=$(srcdir)/$(METADATA) \
|
|
--symbols=$(srcdir)/$(SYMBOLS)
|
|
|
|
generated-stamp: $(API) $(build_customs) $(overrides)
|
|
$(MONO) $(top_builddir)/generator/gst-gapi_codegen.exe --generate $(API) \
|
|
--outdir=generated --customdir=$(srcdir) --assembly-name=$(ASSEMBLY_NAME) \
|
|
--gluelib-name=gstreamersharpglue-0.10 --glue-filename=glue/generated.c \
|
|
--glue-includes=$(glue_includes) \
|
|
&& cp $(overrides) $(builddir)/generated \
|
|
&& sed -i 's;public class ObjectManager;internal class ObjectManager;g' generated/ObjectManager.cs \
|
|
&& touch generated-stamp
|
|
|
|
$(KEYFILE): $(top_srcdir)/gstreamer-sharp.snk
|
|
cp $(top_srcdir)/gstreamer-sharp.snk .
|
|
|
|
$(ASSEMBLY): $(build_sources) generated-stamp $(KEYFILE)
|
|
$(CSC) /nowarn:0612 /debug /unsafe /out:$(ASSEMBLY) /target:library $(references) $(build_sources) $(GENERATED_SOURCES)
|
|
|