gstreamer/sources/Makefile.am

56 lines
1.7 KiB
Makefile
Raw Normal View History

2013-06-17 14:23:54 +00:00
RAW_API = $(ASSEMBLY_NAME)-api.raw
API = $(ASSEMBLY_NAME)-api.xml
METADATA = $(ASSEMBLY_NAME).metadata
DLL = $(top_srcdir)/out/$(ASSEMBLY_NAME).dll
DLLMAP = $(top_srcdir)/out/$(ASSEMBLY_NAME).dll.config
GLUEDIR = $(srcdir)/glue
2013-06-17 14:23:54 +00:00
sources = custom/*.cs
2013-06-17 14:23:54 +00:00
build_sources = AssemblyInfo.cs $(sources)
2014-03-16 23:14:48 +00:00
CLEANFILES = $(DLL) generated-stamp generated/*/*.cs $(API)
2013-06-17 14:23:54 +00:00
DISTCLEANFILES = AssemblyInfo.cs $(DLLMAP)
noinst_DATA = $(DLL)
EXTRA_DIST = \
$(RAW_API) \
$(sources) \
$(METADATA) \
AssemblyInfo.cs.in \
2014-03-19 14:46:38 +00:00
$(ASSEMBLY_NAME).snk \
gstreamer-sharp-api.xml
2013-06-17 14:23:54 +00:00
all: generated-stamp $(ASSEMBLY)
$(API): $(srcdir)/$(RAW_API) $(srcdir)/$(METADATA)
cp $(srcdir)/$(RAW_API) $(API)
chmod u+w $(API)
$(GAPI_FIXUP) --api=$(srcdir)/$(API) --metadata=$(srcdir)/$(METADATA)
generated-stamp: $(API)
2014-03-16 23:14:48 +00:00
rm -rf generated/* && \
2014-07-20 01:52:58 +00:00
$(GAPI_CODEGEN) --generate $(srcdir)/$(API) $(GLIB_SHARP_CFLAGS) $(GIO_SHARP_CFLAGS) \
2013-06-17 14:23:54 +00:00
--outdir=generated \
--glue-filename=$(GLUEDIR)/generated.c --gluelib-name=libgstreamersharpglue-1.0.0.dll \
2014-07-20 01:32:48 +00:00
--glue-includes=gst/gst.h,`cd $(GST_INCLUDEDIR);find gst -type f -name "*.h" -not -path "gst/gl/*" | tr "\n" ","` \
2013-06-17 14:23:54 +00:00
--assembly-name=$(ASSEMBLY_NAME) && touch generated-stamp
$(DLL): $(build_sources) generated-stamp
2014-07-20 01:52:58 +00:00
$(CSC) -nowarn:169 -nowarn:108 -nowarn:114 -unsafe -target:library $(GLIB_SHARP_LIBS) $(GIO_SHARP_LIBS) \
2014-03-16 23:14:48 +00:00
$(build_sources) generated/*/*.cs -out:$(DLL)
2013-06-17 14:23:54 +00:00
install-data-local:
echo "$(GACUTIL) /i $(DLL) /f $(GACUTIL_FLAGS)"; \
2014-03-19 14:46:38 +00:00
$(GACUTIL) /i $(DLL) /f $(GACUTIL_FLAGS) || exit 1; \
cp $(API) $(gapidir);
2013-06-17 14:23:54 +00:00
uninstall-local:
echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1;
2014-03-19 14:46:38 +00:00
rm -f $(gapidir)/$(API)
2014-03-16 23:14:48 +00:00
clean-local:
-rm -r generated/*