mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-03 15:06:34 +00:00
49 lines
1.5 KiB
Makefile
49 lines
1.5 KiB
Makefile
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
|
|
|
|
sources = custom/*.cs
|
|
|
|
build_sources = AssemblyInfo.cs $(sources)
|
|
|
|
CLEANFILES = $(DLL) generated-stamp generated/*.cs $(API)
|
|
|
|
DISTCLEANFILES = AssemblyInfo.cs $(DLLMAP)
|
|
|
|
noinst_DATA = $(DLL)
|
|
|
|
EXTRA_DIST = \
|
|
$(RAW_API) \
|
|
$(sources) \
|
|
$(METADATA) \
|
|
AssemblyInfo.cs.in \
|
|
$(ASSEMBLY_NAME).snk
|
|
|
|
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)
|
|
$(GAPI_CODEGEN) --generate $(srcdir)/$(API) $(GLIB_SHARP_CFLAGS) \
|
|
--outdir=generated \
|
|
--glue-filename=$(GLUEDIR)/generated.c --gluelib-name=libgstreamersharpglue-1.0.6.so \
|
|
--glue-includes=gst/gst.h,`cd $(GST_INCLUDEDIR);find gst -type f | tr "\n" ","` \
|
|
--assembly-name=$(ASSEMBLY_NAME) && touch generated-stamp
|
|
|
|
$(DLL): $(build_sources) generated-stamp
|
|
$(CSC) -nowarn:169 -unsafe -target:library $(GLIB_SHARP_LIBS) \
|
|
$(build_sources) generated/*.cs -out:$(DLL)
|
|
|
|
install-data-local:
|
|
echo "$(GACUTIL) /i $(DLL) /f $(GACUTIL_FLAGS)"; \
|
|
$(GACUTIL) /i $(DLL) /f $(GACUTIL_FLAGS) || exit 1;
|
|
|
|
uninstall-local:
|
|
echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
|
|
$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1;
|