gstbase: Add gobject-introspection support

This commit is contained in:
Sebastian Dröge 2009-09-05 09:23:19 +02:00
parent 7c031ae4d0
commit 0bb8634b37
3 changed files with 38 additions and 2 deletions

2
.gitignore vendored
View file

@ -41,3 +41,5 @@ gst-element-check.m4
.libs .libs
*~ *~
_stdint.h _stdint.h
*.gir
*.typelib

2
gst/.gitignore vendored
View file

@ -18,5 +18,3 @@ gstconfig.h
*.gcno *.gcno
*.gcov *.gcov
*.gcov.out *.gcov.out
*.gir
*.typelib

View file

@ -39,3 +39,39 @@ CLEANFILES = *.gcno *.gcda *.gcov
$(GCOV) -b -f -o $^ > $@.out $(GCOV) -b -f -o $^ > $@.out
gcov: $(libgstbase_@GST_MAJORMINOR@_la_SOURCES:=.gcov) gcov: $(libgstbase_@GST_MAJORMINOR@_la_SOURCES:=.gcov)
if HAVE_INTROSPECTION
BUILT_GIRSOURCES = GstBase-@GST_MAJORMINOR@.gir
gir_headers=$(patsubst %,$(srcdir)/%, $(libgstbase_@GST_MAJORMINOR@include_HEADERS))
gir_sources=$(patsubst %,$(srcdir)/%, $(libgstbase_@GST_MAJORMINOR@_la_SOURCES))
gir_cincludes=$(patsubst %,--c-include='gst/base/%',$(libgstbase_@GST_MAJORMINOR@include_HEADERS))
GstBase-@GST_MAJORMINOR@.gir: $(INTROSPECTION_SCANNER) libgstbase-@GST_MAJORMINOR@.la
$(INTROSPECTION_SCANNER) -v --namespace GstBase \
--nsversion=@GST_MAJORMINOR@ \
-I$(top_srcdir) \
$(gir_cincludes) \
--add-include-path=$(top_srcdir)/gst \
--library=gstbase-0.10 \
--include=Gst-0.10 \
--libtool="$(top_builddir)/libtool" \
--pkg gstreamer-0.10 \
--output $@ \
$(gir_headers) \
$(gir_sources)
# INTROSPECTION_GIRDIR/INTROSPECTION_TYPELIBDIR aren't the right place to
# install anything - we need to install inside our prefix.
girdir = $(datadir)/gir-1.0
gir_DATA = $(BUILT_GIRSOURCES)
typelibsdir = $(libdir)/girepository-1.0/
typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib)
%.typelib: %.gir $(INTROSPECTION_COMPILER)
$(INTROSPECTION_COMPILER) --includedir=$(srcdir) --includedir=$(builddir) $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F)
CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA)
endif