lib_LTLIBRARIES = libgstpbutils-@GST_API_VERSION@.la

headers_pbutils = \
	pbutils.h         \
	codec-utils.h     \
	descriptions.h    \
	encoding-profile.h	\
	encoding-target.h	\
	install-plugins.h \
	missing-plugins.h \
	gstdiscoverer.h

# variables used for enum/marshal generation
glib_enum_headers = $(headers_pbutils)
glib_enum_define = PB_UTILS
glib_gen_prefix = pbutils
glib_gen_basename = pbutils

built_headers_configure = \
	gstpluginsbaseversion.h

libgstpbutils_@GST_API_VERSION@_la_SOURCES = \
	gstpluginsbaseversion.c \
	pbutils.c         \
	codec-utils.c     \
	descriptions.c    \
	encoding-profile.c	\
	encoding-target.c	\
	install-plugins.c \
	missing-plugins.c \
	gstdiscoverer.c   \
	gstdiscoverer-types.c

nodist_libgstpbutils_@GST_API_VERSION@_la_SOURCES = \
	pbutils-enumtypes.c

libgstpbutils_@GST_API_VERSION@includedir = $(includedir)/gstreamer-@GST_API_VERSION@/gst/pbutils
libgstpbutils_@GST_API_VERSION@include_HEADERS = \
	$(headers_pbutils)
nodist_libgstpbutils_@GST_API_VERSION@include_HEADERS = \
	$(built_headers_configure) \
	pbutils-enumtypes.h
noinst_HEADERS = \
	pbutils-private.h

libgstpbutils_@GST_API_VERSION@_la_LIBADD = \
  $(top_builddir)/gst-libs/gst/video/libgstvideo-@GST_API_VERSION@.la \
  $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_API_VERSION@.la \
  $(GST_LIBS)
libgstpbutils_@GST_API_VERSION@_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS)
libgstpbutils_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS)

BUILT_SOURCES = \
	pbutils-enumtypes.c \
	pbutils-enumtypes.h

CLEANFILES = $(BUILT_SOURCES)

# DISTCLEANFILES is for files generated by configure
DISTCLEANFILES = $(built_headers_configure)

include $(top_srcdir)/common/gst-glib-gen.mak

if HAVE_INTROSPECTION
BUILT_GIRSOURCES = GstPbutils-@GST_API_VERSION@.gir

gir_headers=$(patsubst %,$(srcdir)/%, $(libgstpbutils_@GST_API_VERSION@include_HEADERS))
gir_headers+=$(patsubst %,$(builddir)/%, $(nodist_libgstpbutils_@GST_API_VERSION@include_HEADERS))
gir_sources=$(patsubst %,$(srcdir)/%, $(libgstpbutils_@GST_API_VERSION@_la_SOURCES))
gir_sources+=$(patsubst %,$(builddir)/%, $(nodist_libgstpbutils_@GST_API_VERSION@_la_SOURCES))

GstPbutils-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstpbutils-@GST_API_VERSION@.la
	$(AM_V_GEN)PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" GI_SCANNER_DISABLE_CACHE=yes\
		GST_PLUGIN_SYSTEM_PATH_1_0="" GST_PLUGIN_PATH_1_0="" GST_REGISTRY_UPDATE=no \
		$(INTROSPECTION_SCANNER) -v --namespace GstPbutils \
		--nsversion=@GST_API_VERSION@ \
		--strip-prefix=Gst \
		--warn-all \
		--c-include "gst/pbutils/pbutils.h" \
		-I$(top_srcdir)/gst-libs \
		-I$(top_builddir)/gst-libs \
		--add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \
		--add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \
		--add-include-path="$(top_builddir)/gst-libs/gst/tag/" \
		--add-include-path="$(top_builddir)/gst-libs/gst/video/" \
		--add-include-path="$(top_builddir)/gst-libs/gst/audio/" \
		--library=libgstpbutils-@GST_API_VERSION@.la \
		--library-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-@GST_API_VERSION@` \
		--library-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-base-@GST_API_VERSION@` \
		--library-path="$(top_builddir)/gst-libs/gst/tag/" \
		--library-path="$(top_builddir)/gst-libs/gst/video/" \
		--library-path="$(top_builddir)/gst-libs/gst/audio/" \
		--include=Gst-@GST_API_VERSION@ \
		--include=GstTag-@GST_API_VERSION@ \
		--include=GstVideo-@GST_API_VERSION@ \
		--include=GstAudio-@GST_API_VERSION@ \
		--libtool="$(top_builddir)/libtool" \
		--pkg gstreamer-@GST_API_VERSION@ \
		--pkg gstreamer-tag-@GST_API_VERSION@ \
		--pkg gstreamer-video-@GST_API_VERSION@ \
		--pkg gstreamer-audio-@GST_API_VERSION@ \
		--pkg-export gstreamer-pbutils-@GST_API_VERSION@ \
		--add-init-section="$(INTROSPECTION_INIT)" \
		--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)
	$(AM_V_GEN)PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" \
		$(INTROSPECTION_COMPILER) \
		--includedir=$(srcdir) \
		--includedir=$(builddir) \
		--includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \
		--includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \
		--includedir="$(top_builddir)/gst-libs/gst/tag/" \
		--includedir="$(top_builddir)/gst-libs/gst/video/" \
		--includedir="$(top_builddir)/gst-libs/gst/audio/" \
		$(INTROSPECTION_COMPILER_OPTS) $< -o $(@F)

CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA)
endif
