gstreamer/gstreamer-sharp/Makefile.am

184 lines
5.6 KiB
Makefile
Raw Normal View History

SUBDIRS = . glue coreplugins baseplugins goodplugins badplugins
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-2.0
gapi_DATA = $(APIS)
2009-06-05 19:02:16 +00:00
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 gst/cdda/gstcddabasesrc.h"
2009-05-26 13:34:31 +00:00
CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb $(ASSEMBLY_NAME).pdb 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 \
Application.cs \
Version.cs \
AssemblyInfo.cs \
GError.cs \
Value.cs \
PropertyInfo.cs \
EnumInfo.cs \
MiniObject.cs \
Marshaller.cs \
2009-04-28 19:03:44 +00:00
GstSharp.PadQueryTypeFunctionNative.cs \
2009-04-30 11:10:15 +00:00
PadQueryTypeFunction.cs \
TypeFindDelegates.cs \
PresetDefault.cs \
MissingPluginMessage.cs \
MixerMessage.cs \
2009-05-14 14:50:16 +00:00
NavigationMessage.cs \
NavigationEvent.cs \
NavigationQuery.cs \
2010-02-01 09:44:21 +00:00
VideoEvent.cs \
coreplugins/*.cs \
glib-sharp/*.cs
overrides = \
$(srcdir)/override/URIHandlerAdapter.cs \
$(srcdir)/override/ColorBalanceAdapter.cs \
$(srcdir)/override/Mixer.cs \
$(srcdir)/override/MixerAdapter.cs \
$(srcdir)/override/PropertyProbe.cs \
$(srcdir)/override/PropertyProbeAdapter.cs \
$(srcdir)/override/ProbeNeededHandler.cs \
$(srcdir)/override/NavigationAdapter.cs
build_sources = $(addprefix $(srcdir)/, $(sources))
if USE_MONO_COMPILER
csc_build_sources = $(build_sources)
else
csc_build_sources = $(subst /,\\,$(build_sources))
endif
customs = \
AppSink.custom \
AppSrc.custom \
Bin.custom \
Pipeline.custom \
Buffer.custom \
Bus.custom \
Caps.custom \
ColorBalanceChannel.custom \
Clock.custom \
ClockEntry.custom \
Debug.custom \
Element.custom \
ElementFactory.custom \
Message.custom \
2009-04-23 12:32:08 +00:00
Event.custom \
Pad.custom \
Parse.custom \
2009-04-04 11:33:40 +00:00
Object.custom \
PadTemplate.custom \
Plugin.custom \
Task.custom \
2009-04-30 13:13:31 +00:00
IndexEntry.custom \
Index.custom \
IndexFactory.custom \
Iterator.custom \
2009-04-11 18:07:03 +00:00
Registry.custom \
2009-04-22 17:08:00 +00:00
Query.custom \
Structure.custom \
Tag.custom \
2009-04-30 11:10:15 +00:00
TagList.custom \
TypeFind.custom \
TypeFindFactory.custom \
2009-05-12 10:04:53 +00:00
MixerTrack.custom \
TunerNorm.custom \
TunerChannel.custom \
2009-05-31 19:10:45 +00:00
Adapter.custom \
Controller.custom \
2009-06-06 11:14:11 +00:00
ControlSource.custom \
2009-10-02 13:44:16 +00:00
VideoUtil.custom \
BitReader.custom \
2009-10-03 09:43:55 +00:00
ByteReader.custom \
ByteWriter.custom
2009-09-03 07:28:43 +00:00
plugin_csfiles = $(builddir)/coreplugins/generated/*.cs \
$(builddir)/baseplugins/generated/*.cs \
$(builddir)/goodplugins/generated/*.cs \
$(builddir)/badplugins/generated/*.cs
build_customs = $(addprefix $(srcdir)/, $(customs))
EXTRA_DIST = \
$(RAW_API) \
$(SYMBOLS) \
$(METADATA) \
$(customs) \
2009-09-03 08:21:50 +00:00
$(build_sources) \
$(overrides) \
$(ASSEMBLY).config.in
$(API): $(srcdir)/$(RAW_API) $(srcdir)/$(METADATA) $(srcdir)/$(SYMBOLS)
2009-09-03 08:21:50 +00:00
cp $(srcdir)/$(RAW_API) $(builddir)/$(API)
chmod u+w $(API)
2009-09-03 08:21:50 +00:00
$(MONO) $(top_builddir)/parser/gst-gapi-fixup.exe --api=$(builddir)/$(API) \
--metadata=$(srcdir)/$(METADATA) --symbols=$(srcdir)/$(SYMBOLS)
generated-stamp: $(API) $(build_customs) $(overrides)
2009-09-03 08:21:50 +00:00
$(MONO) $(top_builddir)/generator/gst-gapi_codegen.exe --generate $(builddir)/$(API) \
--outdir=$(builddir)/generated --customdir=$(srcdir) --assembly-name=$(ASSEMBLY_NAME) \
--gluelib-name=gstreamersharpglue-0.10.dll --glue-filename=$(builddir)/glue/generated.c \
2009-04-07 07:45:54 +00:00
--glue-includes=$(glue_includes) \
&& cp $(overrides) $(builddir)/generated \
2009-09-03 08:21:50 +00:00
&& sed 's;public class ObjectManager;internal class ObjectManager;g' $(builddir)/generated/ObjectManager.cs > $(builddir)/generated/ObjectManager.cs.tmp \
&& mv $(builddir)/generated/ObjectManager.cs.tmp $(builddir)/generated/ObjectManager.cs \
&& touch generated-stamp
2009-09-03 07:28:43 +00:00
coreplugins/generated/*.cs: $(API) $(builddir)/coreplugins/generated
coreplugins/generated: $(API) $(srcdir)/coreplugins/*.metadata $(srcdir)/coreplugins/inspect/*.raw
$(MAKE) -C coreplugins
2009-09-03 07:28:43 +00:00
baseplugins/generated/*.cs: $(API) $(builddir)/baseplugins/generated
baseplugins/generated: $(API) $(srcdir)/baseplugins/*.metadata $(srcdir)/baseplugins/inspect/*.raw
$(MAKE) -C baseplugins
goodplugins/generated/*.cs: $(API) $(builddir)/goodplugins/generated
goodplugins/generated: $(API) $(srcdir)/goodplugins/inspect/*.raw
$(MAKE) -C goodplugins
badplugins/generated/*.cs: $(API) $(builddir)/badplugins/generated
badplugins/generated: $(API) $(srcdir)/badplugins/inspect/*.raw
$(MAKE) -C badplugins
$(KEYFILE): $(top_srcdir)/gstreamer-sharp.snk
cp $(top_srcdir)/gstreamer-sharp.snk .
$(ASSEMBLY): $(build_sources) generated-stamp $(KEYFILE) $(plugin_csfiles)
2009-10-03 10:03:36 +00:00
$(CSC) -nowarn:0612 -debug -unsafe -out:$(ASSEMBLY) -target:library $(references) $(csc_build_sources) $(GENERATED_SOURCES) $(plugin_csfiles) -define:GTK_SHARP_2_6 -define:GTK_SHARP_2_8 -define:GTK_SHARP_2_10 -define:GTK_SHARP_2_12 -define:GTK_SHARP_2_14
plugins-update:
$(MAKE) -C coreplugins plugins-update
$(MAKE) -C baseplugins plugins-update
$(MAKE) -C goodplugins plugins-update
$(MAKE) -C badplugins plugins-update