-# TODO: finish elite script that updates the output files of this step
-# instead of rewriting them, so that multiple maintainers can generate
-# a collective set of args and signals
-scanobj-build.stamp: $(SCANOBJ_DEPS) $(basefiles) inspect
- @echo '*** Scanning GObjects ***'
+# gstdoc-scanobj produces 5 output files (.new)
+# scangobj-merge.py merges them into the file which we commit later
+# TODO: also merge the hierarchy
+scanobj-build.stamp: $(SCANOBJ_DEPS) $(basefiles)
+ @echo " DOC Introspecting gobjects"
+ @if test x"$(srcdir)" != x. ; then \
+ for f in $(SCANOBJ_FILES) $(SCAN_FILES); \
+ do \
+ if test -e $(srcdir)/$$f; then cp -u $(srcdir)/$$f . ; fi; \
+ done; \
+ fi; \
+ mkdir -p $(INSPECT_DIR); \
+ scanobj_options=""; \
+ if test "x$(V)" = "x1"; then \
+ scanobj_options="--verbose"; \
+ fi; \
+ $(INSPECT_ENVIRONMENT) \
+ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" \
+ CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS) $(WARNING_CFLAGS)" \
+ LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \
+ $(GST_DOC_SCANOBJ) $$scanobj_options --type-init-func="gst_init(NULL,NULL)" \
+ --module=$(DOC_MODULE) --source=$(PACKAGE) --inspect-dir=$(INSPECT_DIR) && \
+ echo " DOC Merging introspection data" && \
+ $(PYTHON) \
+ $(top_srcdir)/common/scangobj-merge.py $(DOC_MODULE) || exit 1; \