diff options
Diffstat (limited to 'common')
-rw-r--r-- | common/Makefile.in | 49 | ||||
-rwxr-xr-x | common/check-exports | 4 | ||||
-rw-r--r-- | common/gst.supp | 36 | ||||
-rwxr-xr-x | common/gstdoc-scangobj | 75 | ||||
-rw-r--r-- | common/gtk-doc-plugins.mak | 138 | ||||
-rw-r--r-- | common/gtk-doc.mak | 127 | ||||
-rw-r--r-- | common/m4/Makefile.in | 49 | ||||
-rw-r--r-- | common/m4/gst-args.m4 | 5 | ||||
-rw-r--r-- | common/m4/gst-feature.m4 | 59 | ||||
-rw-r--r-- | common/m4/gst-glib2.m4 | 2 | ||||
-rw-r--r-- | common/m4/introspection.m4 | 6 | ||||
-rw-r--r-- | common/m4/orc.m4 | 12 | ||||
-rwxr-xr-x | common/scangobj-merge.py | 41 |
13 files changed, 351 insertions, 252 deletions
diff --git a/common/Makefile.in b/common/Makefile.in index e15d80b..dad689b 100644 --- a/common/Makefile.in +++ b/common/Makefile.in @@ -1,9 +1,9 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. +# Makefile.in generated by automake 1.11.3 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -64,8 +64,7 @@ am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \ $(top_srcdir)/common/m4/orc.m4 $(top_srcdir)/common/m4/pkg.m4 \ $(top_srcdir)/m4/aalib.m4 $(top_srcdir)/m4/esd.m4 \ $(top_srcdir)/m4/gconf-2.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/gst-fionread.m4 \ - $(top_srcdir)/m4/gst-shout2.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/gst-fionread.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ @@ -79,11 +78,11 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_$(V)) -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_$(V)) -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = @@ -203,7 +202,10 @@ GDK_PIXBUF_CFLAGS = @GDK_PIXBUF_CFLAGS@ GDK_PIXBUF_LIBS = @GDK_PIXBUF_LIBS@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GIO_CFLAGS = @GIO_CFLAGS@ +GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ @@ -278,7 +280,6 @@ JPEG_LIBS = @JPEG_LIBS@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBCACA_CFLAGS = @LIBCACA_CFLAGS@ -LIBCACA_CONFIG = @LIBCACA_CONFIG@ LIBCACA_LIBS = @LIBCACA_LIBS@ LIBDV_CFLAGS = @LIBDV_CFLAGS@ LIBDV_LIBS = @LIBDV_LIBS@ @@ -302,6 +303,7 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ @@ -336,18 +338,10 @@ PKG_CONFIG = @PKG_CONFIG@ PLUGINDIR = @PLUGINDIR@ POSUB = @POSUB@ PROFILE_CFLAGS = @PROFILE_CFLAGS@ -PULSE_0_9_11_CFLAGS = @PULSE_0_9_11_CFLAGS@ -PULSE_0_9_11_LIBS = @PULSE_0_9_11_LIBS@ -PULSE_0_9_12_CFLAGS = @PULSE_0_9_12_CFLAGS@ -PULSE_0_9_12_LIBS = @PULSE_0_9_12_LIBS@ -PULSE_0_9_13_CFLAGS = @PULSE_0_9_13_CFLAGS@ -PULSE_0_9_13_LIBS = @PULSE_0_9_13_LIBS@ -PULSE_0_9_15_CFLAGS = @PULSE_0_9_15_CFLAGS@ -PULSE_0_9_15_LIBS = @PULSE_0_9_15_LIBS@ -PULSE_0_9_16_CFLAGS = @PULSE_0_9_16_CFLAGS@ -PULSE_0_9_16_LIBS = @PULSE_0_9_16_LIBS@ PULSE_0_9_20_CFLAGS = @PULSE_0_9_20_CFLAGS@ PULSE_0_9_20_LIBS = @PULSE_0_9_20_LIBS@ +PULSE_1_0_CFLAGS = @PULSE_1_0_CFLAGS@ +PULSE_1_0_LIBS = @PULSE_1_0_LIBS@ PULSE_CFLAGS = @PULSE_CFLAGS@ PULSE_LIBS = @PULSE_LIBS@ PYTHON = @PYTHON@ @@ -400,6 +394,7 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ @@ -434,7 +429,6 @@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ @@ -725,10 +719,15 @@ install-am: all-am installcheck: installcheck-recursive install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: diff --git a/common/check-exports b/common/check-exports index c6d3eca..dd7bafb 100755 --- a/common/check-exports +++ b/common/check-exports @@ -41,9 +41,7 @@ fi # BSS symbol, unlike on linux where it's a local absolute symbol. nm $NMARGS $lib_path | awk \ '{ - if ($3 !~ /^_gst_parse_yy/ && \ - $3 !~ /^_gst_[a-z]*_init/ && \ - $3 !~ /^_gst_parse_launch/ && \ + if ($3 !~ /^_gst_[a-z]*_init/ && \ $3 !~ /^__gst_element_details_/ && \ $3 !~ /^__gst_element_factory_add_/ && \ $3 !~ /^gst_interfaces_marshal/ && \ diff --git a/common/gst.supp b/common/gst.supp index 7e24bc8..d7f8961 100644 --- a/common/gst.supp +++ b/common/gst.supp @@ -915,7 +915,7 @@ fun:*alloc ... fun:g_type_init* - fun:init_pre + fun:init_pre* } { @@ -3894,6 +3894,13 @@ obj:*/sed } +{ + <weird one when re-reading registry> + Memcheck:Addr8 + ... + obj:*/sed +} + # GLib 2.23 interface vtable { <insert_a_suppression_name_here> @@ -3927,3 +3934,30 @@ fun:_gst_plugin_loader_client_run fun:main } + +{ + <warning with libc 2.13-2 as in Debian/unstable on amd64> + Memcheck:Cond + fun:*strcasecmp* + ... + fun:__dcigettext +} + +{ + <warning with libc 2.13-2 as in Debian/unstable on amd64> + Memcheck:Value8 + fun:*strcasecmp* + ... + fun:__dcigettext +} + +{ + <GstSystemClock is a singleton and does not leak> + Memcheck:Leak + fun:malloc + ... + fun:gst_poll_new + fun:gst_poll_new_timer + fun:gst_system_clock_init +} + diff --git a/common/gstdoc-scangobj b/common/gstdoc-scangobj index 688b2c0..5b13352 100755 --- a/common/gstdoc-scangobj +++ b/common/gstdoc-scangobj @@ -43,6 +43,7 @@ require "gtkdoc-common.pl"; my $MODULE; my $OUTPUT_DIR; my $INSPECT_DIR; +my $VERBOSE; my $PRINT_VERSION; my $PRINT_HELP; my $TYPE_INIT_FUNC="g_type_init ()"; @@ -55,10 +56,11 @@ my $TYPE_INIT_FUNC="g_type_init ()"; 'type-init-func' => \$TYPE_INIT_FUNC, 'output-dir' => \$OUTPUT_DIR, 'inspect-dir' => \$INSPECT_DIR, + 'verbose' => \$VERBOSE, 'version' => \$PRINT_VERSION, 'help' => \$PRINT_HELP); -GetOptions(\%optctl, "module=s", "source=s", "types:s", "output-dir:s", "inspect-dir:s", "nogtkinit", "type-init-func:s", "version", "help"); +GetOptions(\%optctl, "module=s", "source=s", "types:s", "output-dir:s", "inspect-dir:s", "nogtkinit", "type-init-func:s", "verbose", "version", "help"); if ($NO_GTK_INIT) { # Do nothing. This just avoids a warning. @@ -75,15 +77,19 @@ if (!$MODULE) { } if ($PRINT_HELP) { - print "gstdoc-scangobj version 1.5\n"; - print "\n--module=MODULE_NAME Name of the doc module being parsed"; - print "\n--source=SOURCE_NAME Name of the source module for plugins"; - print "\n--types=FILE The name of the file to store the types in"; - print "\n--type-init-func=FUNC The init function to call instead of g_type_init ()"; - print "\n--output-dir=DIRNAME The directory where the results are stored"; - print "\n--inspect-dir=DIRNAME The directory where the plugin inspect data is stored"; - print "\n--version Print the version of this program"; - print "\n--help Print this help\n"; + print <<EOF; +gstdoc-scangobj version 1.5 - introspect gstreamer-plugins + +--module=MODULE_NAME Name of the doc module being parsed +--source=SOURCE_NAME Name of the source module for plugins +--types=FILE The name of the file to store the types in +--type-init-func=FUNC The init function to call instead of g_type_init() +--output-dir=DIRNAME The directory where the results are stored +--inspect-dir=DIRNAME The directory where the plugin inspect data is stored +--verbose Print extra output while processing +--version Print the version of this program +--help Print this help +EOF exit 0; } @@ -105,6 +111,11 @@ my $new_prerequisites_filename = "$OUTPUT_DIR/$MODULE.prerequisites.new"; my $old_args_filename = "$OUTPUT_DIR/$MODULE.args"; my $new_args_filename = "$OUTPUT_DIR/$MODULE.args.new"; +my $debug_log="g_message"; +if (!defined($VERBOSE) or $VERBOSE eq "0") { + $debug_log="//$debug_log"; +} + # write a C program to scan the types $includes = ""; @@ -221,7 +232,6 @@ get_object_types (void) plugin = (GstPlugin *) (plugins->data); plugins = g_list_next (plugins); source = gst_plugin_get_source (plugin); - /*g_print ("plugin: %s source: %s\\n", plugin->desc.name, source);*/ if (!source || strcmp (source, "$SOURCE") != 0) { continue; } @@ -230,7 +240,7 @@ get_object_types (void) if (gst_plugin_get_filename (plugin) == NULL) continue; - g_print ("plugin: %s source: %s\\n", plugin->desc.name, source); + $debug_log ("plugin: %s source: %s", plugin->desc.name, source); if (reinspect) { inspect_name = g_strdup_printf ("$INSPECT_DIR" G_DIR_SEPARATOR_S "plugin-%s.xml", @@ -277,7 +287,7 @@ get_object_types (void) const gchar *pad_pres[] = { "always","sometimes","request" }; GList *pads, *pad; - /*g_print (" feature: %s\\n", feature->name);*/ + $debug_log (" feature: %s", feature->name); factory = GST_ELEMENT_FACTORY (feature); factories = g_list_prepend (factories, factory); @@ -320,7 +330,7 @@ get_object_types (void) g_string_free (xmlstr, TRUE); - g_message ("number of element factories: %d", g_list_length (factories)); + $debug_log ("number of element factories: %d", g_list_length (factories)); /* allocate the object_types array to hold them */ object_types = g_new0 (GType, g_list_length (factories)+$ntypes+1); @@ -333,7 +343,7 @@ get_object_types (void) factory = GST_ELEMENT_FACTORY (l->data); type = gst_element_factory_get_element_type (factory); if (type != 0) { - g_message ("adding type %p for factory %s", (void *) type, gst_element_factory_get_longname (factory)); + $debug_log ("adding type for factory %s", gst_element_factory_get_longname (factory)); object_types[i++] = type; } else { g_message ("type info for factory %s not found", @@ -522,7 +532,7 @@ output_object_signal (FILE *fp, gchar signal_name[128]; gchar flags[16]; - /* g_print ("Object: %s Signal: %u\\n", object_name, signal_id);*/ + $debug_log ("Object: %s Signal: %u", object_name, signal_id); param_num = 1; widget_num = event_num = callback_num = 0; @@ -765,6 +775,16 @@ output_object_hierarchy (void) fclose (fp); } +static int +compare_types (const void *a, const void *b) +{ + const char *na = g_type_name (*((GType *)a)); + const char *nb = g_type_name (*((GType *)b)); + + return g_strcmp0 (na, nb); +} + + /* This is called recursively to output the hierarchy of a object. */ static void output_hierarchy (FILE *fp, @@ -783,6 +803,8 @@ output_hierarchy (FILE *fp, fprintf (fp, "%s\\n", g_type_name (type)); children = g_type_children (type, &n_children); + qsort (children, n_children, sizeof (GType), compare_types); + for (i=0; i < n_children; i++) output_hierarchy (fp, children[i], level + 1); @@ -1547,15 +1569,20 @@ if ($CC =~ /libtool/) { $o_file = "$MODULE-scan.o" } -print "gtk-doc: Compiling scanner\n"; -$command = "$CC $CFLAGS -c -o $o_file $MODULE-scan.c"; -system($command) == 0 or die "Compilation of scanner failed: $!\n"; +my $stdout=""; +if (!defined($VERBOSE) or $VERBOSE eq "0") { + $stdout=">/dev/null"; +} + +# Compiling scanner +$command = "$CC $stdout $CFLAGS -c -o $o_file $MODULE-scan.c"; +system("($command)") == 0 or die "Compilation of scanner failed: $!\n"; -print "gtk-doc: Linking scanner\n"; -$command = "$LD -o $MODULE-scan $o_file $LDFLAGS"; +# Linking scanner +$command = "$LD $stdout -o $MODULE-scan $o_file $LDFLAGS"; system($command) == 0 or die "Linking of scanner failed: $!\n"; -print "gtk-doc: Running scanner $MODULE-scan\n"; +# Running scanner $MODULE-scan "; system("sh -c ./$MODULE-scan") == 0 or die "Scan failed: $!\n"; if (!defined($ENV{"GTK_DOC_KEEP_INTERMEDIATE"})) { @@ -1563,9 +1590,9 @@ if (!defined($ENV{"GTK_DOC_KEEP_INTERMEDIATE"})) { } &UpdateFileIfChanged ($old_hierarchy_filename, $new_hierarchy_filename, 0); -&UpdateFileIfChanged ($old_interfaces_filename, $new_interfaces_filename, 0); -&UpdateFileIfChanged ($old_prerequisites_filename, $new_prerequisites_filename, 0); # we will merge these in scangobj-merge.py +#&UpdateFileIfChanged ($old_interfaces_filename, $new_interfaces_filename, 0); +#&UpdateFileIfChanged ($old_prerequisites_filename, $new_prerequisites_filename, 0); #&UpdateFileIfChanged ($old_signals_filename, $new_signals_filename, 0); #&UpdateFileIfChanged ($old_args_filename, $new_args_filename, 0); diff --git a/common/gtk-doc-plugins.mak b/common/gtk-doc-plugins.mak index ca6a351..8cc42e7 100644 --- a/common/gtk-doc-plugins.mak +++ b/common/gtk-doc-plugins.mak @@ -55,12 +55,12 @@ DOC_STAMPS = \ # files generated/updated by gtkdoc-scangobj SCANOBJ_FILES = \ - $(DOC_MODULE).signals \ + $(DOC_MODULE).args \ $(DOC_MODULE).hierarchy \ $(DOC_MODULE).interfaces \ $(DOC_MODULE).prerequisites \ - $(DOC_MODULE).types \ - $(DOC_MODULE).args + $(DOC_MODULE).signals \ + $(DOC_MODULE).types SCANOBJ_FILES_O = \ .libs/$(DOC_MODULE)-scan.o @@ -78,11 +78,8 @@ REPORT_FILES = \ $(DOC_MODULE)-undeclared.txt \ $(DOC_MODULE)-unused.txt -# FC3 seems to need -scan.c to be part of CLEANFILES for distcheck -# no idea why FC4 can do without CLEANFILES = \ $(SCANOBJ_FILES_O) \ - $(DOC_MODULE)-scan.c \ $(REPORT_FILES) \ $(DOC_STAMPS) \ inspect-registry.xml @@ -104,32 +101,34 @@ INSPECT_ENVIRONMENT=\ PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" \ $(INSPECT_EXTRA_ENVIRONMENT) -# update the element and plugin XML descriptions; store in inspect/ -inspect: - @-mkdir -p $(INSPECT_DIR) - #### scan gobjects; done by documentation maintainer #### scanobj-update: -rm scanobj-build.stamp $(MAKE) scanobj-build.stamp -# 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) --type-init-func="gst_init(NULL,NULL)" \ + $(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); \ if test x"$(srcdir)" != x. ; then \ @@ -145,91 +144,102 @@ $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(SCANOBJ_FILES_O): scan-build.stamp ### scan headers; done on every build ### scan-build.stamp: $(HFILE_GLOB) $(EXTRA_HFILES) $(basefiles) scanobj-build.stamp - @echo '*** Scanning header files ***' + @echo ' DOC Scanning header files' + @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 + @_source_dir='' ; \ + for i in $(DOC_SOURCE_DIR) ; do \ + _source_dir="$${_source_dir} --source-dir=$$i" ; \ + done ; \ gtkdoc-scan \ $(SCAN_OPTIONS) $(EXTRA_HFILES) \ --module=$(DOC_MODULE) \ - --source-dir=$(DOC_SOURCE_DIR) \ + $${_source_dir} \ --ignore-headers="$(IGNORE_HFILES)"; \ touch scan-build.stamp #### update templates; done on every build #### -### FIXME: make this error out again when docs are fixed for 0.X # in a non-srcdir build, we need to copy files from the previous step # and the files from previous runs of this step tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_OVERRIDES) - @echo '*** Rebuilding template files ***' + @echo ' DOC Rebuilding template files' @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 - gtkdoc-mktmpl --module=$(DOC_MODULE) | tee tmpl-build.log - $(PYTHON) \ + @gtkdoc-mktmpl --module=$(DOC_MODULE) + @$(PYTHON) \ $(top_srcdir)/common/mangle-tmpl.py $(srcdir)/$(INSPECT_DIR) tmpl - @rm -f tmpl-build.log - touch tmpl-build.stamp + @touch tmpl-build.stamp tmpl.stamp: tmpl-build.stamp @true -#### build xml; done on every build #### +#### xml #### -### FIXME: make this error out again when docs are fixed for 0.9 sgml-build.stamp: tmpl.stamp scan-build.stamp $(CFILE_GLOB) $(top_srcdir)/common/plugins.xsl $(expand_content_files) - @echo '*** Building XML ***' + @echo ' DOC Building XML' @-mkdir -p xml @for a in $(srcdir)/$(INSPECT_DIR)/*.xml; do \ xsltproc --stringparam module $(MODULE) \ $(top_srcdir)/common/plugins.xsl $$a > xml/`basename $$a`; done @for f in $(EXAMPLE_CFILES); do \ $(PYTHON) $(top_srcdir)/common/c-to-xml.py $$f > xml/element-`basename $$f .c`.xml; done - gtkdoc-mkdb \ + @gtkdoc-mkdb \ --module=$(DOC_MODULE) \ --source-dir=$(DOC_SOURCE_DIR) \ --expand-content-files="$(expand_content_files)" \ --main-sgml-file=$(srcdir)/$(DOC_MAIN_SGML_FILE) \ --output-format=xml \ --ignore-files="$(IGNORE_HFILES) $(IGNORE_CFILES)" \ - $(MKDB_OPTIONS) \ - | tee sgml-build.log - @if grep "WARNING:" sgml-build.log > /dev/null; then true; fi # exit 1; fi - cp ../version.entities xml - rm sgml-build.log - touch sgml-build.stamp + $(MKDB_OPTIONS) + @cp ../version.entities xml + @touch sgml-build.stamp sgml.stamp: sgml-build.stamp @true -#### build html; done on every step #### +#### html #### html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) - @echo '*** Building HTML ***' - if test -d html; then rm -rf html; fi - mkdir html - cp $(srcdir)/$(DOC_MAIN_SGML_FILE) html + @echo ' DOC Building HTML' + @rm -rf html + @mkdir html + @cp $(srcdir)/$(DOC_MAIN_SGML_FILE) html @for f in $(content_files); do cp $(srcdir)/$$f html; done - cp -pr xml html - cp ../version.entities html - cd html && gtkdoc-mkhtml $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) - mv html/index.sgml html/index.sgml.bak - $(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_MAJORMINOR@\//g" html/index.sgml.bak >html/index.sgml - rm -f html/index.sgml.bak - rm -f html/$(DOC_MAIN_SGML_FILE) - rm -rf html/xml - rm -f html/version.entities - test "x$(HTML_IMAGES)" = "x" || for i in "" $(HTML_IMAGES) ; do \ + @cp -pr xml html + @cp ../version.entities html + @mkhtml_options=""; \ + gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-verbose"; \ + if test "$(?)" = "0"; then \ + if test "x$(V)" = "x1"; then \ + mkhtml_options="$$mkhtml_options --verbose"; \ + fi; \ + fi; \ + cd html && gtkdoc-mkhtml $$mkhtml_options $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) + @mv html/index.sgml html/index.sgml.bak + @$(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_MAJORMINOR@\//g" html/index.sgml.bak >html/index.sgml + @rm -f html/index.sgml.bak + @rm -f html/$(DOC_MAIN_SGML_FILE) + @rm -rf html/xml + @rm -f html/version.entities + @test "x$(HTML_IMAGES)" = "x" || for i in "" $(HTML_IMAGES) ; do \ if test "$$i" != ""; then cp $(srcdir)/$$i html ; fi; done - @echo '-- Fixing Crossreferences' - gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) - touch html-build.stamp + @echo ' DOC Fixing cross-references' + @gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) + @touch html-build.stamp clean-local-gtkdoc: - rm -rf xml tmpl html + @rm -rf xml tmpl html # clean files copied for nonsrcdir templates build - if test x"$(srcdir)" != x. ; then \ + @if test x"$(srcdir)" != x. ; then \ rm -rf $(SCANOBJ_FILES) $(SCAN_FILES) $(REPORT_FILES) \ $(MAINTAINER_DOC_STAMPS); \ fi @@ -239,16 +249,16 @@ clean-local-gtkdoc: endif clean-local: clean-local-gtkdoc - rm -f *~ *.bak - rm -rf .libs + @rm -f *~ *.bak + @rm -rf .libs distclean-local: - rm -f $(REPORT_FILES) \ + @rm -f $(REPORT_FILES) \ $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt - rm -rf tmpl/*.sgml.bak - rm -f $(DOC_MODULE).hierarchy - rm -f *.stamp || true - if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ + @rm -rf tmpl/*.sgml.bak + @rm -f $(DOC_MODULE).hierarchy + @rm -f *.stamp || true + @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ rm -f $(DOC_MODULE)-docs.sgml ; \ rm -f $(DOC_MODULE).types ; \ rm -f $(DOC_MODULE).interfaces ; \ @@ -258,7 +268,7 @@ distclean-local: rm -rf tmpl/*.sgml ; \ rm -rf $(INSPECT_DIR); \ fi - rm -rf *.o + @rm -rf *.o MAINTAINERCLEANFILES = $(MAINTAINER_DOC_STAMPS) @@ -280,9 +290,7 @@ install-data-local: $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \ done; \ fi; \ - echo '-- Installing $(builddir)/html/$(DOC_MODULE).devhelp' ; \ - $(INSTALL_DATA) $(builddir)/html/$(DOC_MODULE).devhelp \ - $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp; \ + echo '-- Installing $(builddir)/html/$(DOC_MODULE).devhelp2' ; \ if test -e $(builddir)/html/$(DOC_MODULE).devhelp2; then \ $(INSTALL_DATA) $(builddir)/html/$(DOC_MODULE).devhelp2 \ $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \ diff --git a/common/gtk-doc.mak b/common/gtk-doc.mak index 91edeee..dd2b5a5 100644 --- a/common/gtk-doc.mak +++ b/common/gtk-doc.mak @@ -28,7 +28,6 @@ DOC_STAMPS = \ scan-build.stamp \ sgml-build.stamp \ html-build.stamp \ - setup.stamp \ sgml.stamp \ html.stamp @@ -52,30 +51,36 @@ all-local: html-build.stamp #### setup #### -setup.stamp: $(content_files) +setup-build.stamp: $(content_files) -@if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ - cp -p $(abs_srcdir)/$(DOC_MAIN_SGML_FILE) \ - $(abs_srcdir)/$(DOC_MODULE)-overrides.txt \ - $(abs_srcdir)/$(DOC_MODULE)-sections.txt \ - $(abs_srcdir)/$(DOC_MODULE).types \ - $(abs_builddir)/; \ - if test "x$(content_files)" != "x" ; then \ - for file in $(content_files) ; do \ - test -f $(abs_srcdir)/$$file || \ - cp -p $(abs_srcdir)/$$file $(abs_builddir)/; \ - done \ - fi \ + echo ' DOC Preparing build'; \ + files=`echo $(DOC_MAIN_SGML_FILE) $(DOC_OVERRIDES) $(DOC_MODULE)-sections.txt $(DOC_MODULE).types $(content_files)`; \ + if test "x$$files" != "x" ; then \ + for file in $$files ; do \ + test -f $(abs_srcdir)/$$file && \ + cp -pu $(abs_srcdir)/$$file $(abs_builddir)/ || true; \ + done; \ + fi; \ fi - touch setup.stamp + @touch setup-build.stamp #### scan #### # in the case of non-srcdir builds, the built gst directory gets added # to gtk-doc scanning; but only then, to avoid duplicates scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) - @echo '*** Scanning header files ***' - if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null; \ - then \ + @echo ' DOC Scanning header files' + @_source_dir='' ; \ + for i in $(DOC_SOURCE_DIR) ; do \ + _source_dir="$${_source_dir} --source-dir=$$i" ; \ + done ; \ + gtkdoc-scan \ + $(SCAN_OPTIONS) $(EXTRA_HFILES) \ + --module=$(DOC_MODULE) \ + $${_source_dir} \ + --ignore-headers="$(IGNORE_HFILES)" + @if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null; then \ + echo " DOC Introspecting gobjects"; \ GST_PLUGIN_SYSTEM_PATH=`cd $(top_builddir) && pwd` \ GST_PLUGIN_PATH= \ GST_REGISTRY=doc-registry.xml \ @@ -90,31 +95,18 @@ scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) test -f $$i || touch $$i ; \ done \ fi - if test "x$(top_srcdir)" != "x$(top_builddir)"; \ - then \ - export BUILT_OPTIONS="--source-dir=$(DOC_BUILD_DIR)"; \ - fi; \ - gtkdoc-scan \ - $(SCAN_OPTIONS) $(EXTRA_HFILES) \ - --module=$(DOC_MODULE) \ - --source-dir=$(DOC_SOURCE_DIR) \ - $$BUILT_OPTIONS \ - --ignore-headers="$(IGNORE_HFILES)" - touch scan-build.stamp + @touch scan-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp @true #### xml #### -### FIXME: make this error out again when docs are complete -sgml-build.stamp: setup.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(expand_content_files) - @echo '*** Building XML ***' - gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) --output-format=xml $(MKDB_OPTIONS) | tee sgml-build.log - @if grep "WARNING:" sgml-build.log > /dev/null; then true; fi # exit 1; fi - cp ../version.entities xml - rm sgml-build.log - touch sgml-build.stamp +sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(expand_content_files) + @echo ' DOC Building XML' + @gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) --output-format=xml $(MKDB_OPTIONS) + @cp ../version.entities xml + @touch sgml-build.stamp sgml.stamp: sgml-build.stamp @true @@ -122,31 +114,37 @@ sgml.stamp: sgml-build.stamp #### html #### html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) - @echo '*** Building HTML ***' + @echo ' DOC Building HTML' @rm -rf html @mkdir html - cp -pr xml html - cp ../version.entities ./ + @cp -pr xml html + @cp ../version.entities ./ @mkhtml_options=""; \ - gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \ + gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-verbose"; \ + if test "$(?)" = "0"; then \ + if test "x$(V)" = "x1"; then \ + mkhtml_options="$$mkhtml_options --verbose"; \ + fi; \ + fi; \ + @gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \ if test "$(?)" = "0"; then \ mkhtml_options=--path="$(abs_srcdir)"; \ fi; \ cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) - mv html/index.sgml html/index.sgml.bak - $(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_MAJORMINOR@\//g" html/index.sgml.bak >html/index.sgml - rm -f html/index.sgml.bak - rm -rf html/xml - rm -f version.entities - test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) $(abs_builddir)/html ) - @echo '-- Fixing Crossreferences' - gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) - touch html-build.stamp + @mv html/index.sgml html/index.sgml.bak + @$(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_MAJORMINOR@\//g" html/index.sgml.bak >html/index.sgml + @rm -f html/index.sgml.bak + @rm -rf html/xml + @rm -f version.entities + @test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) $(abs_builddir)/html ) + @echo ' DOC Fixing cross-references' + @gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) + @touch html-build.stamp clean-local-gtkdoc: - rm -rf xml tmpl html + @rm -rf xml tmpl html # clean files copied for nonsrcdir templates build - if test x"$(srcdir)" != x. ; then \ + @if test x"$(srcdir)" != x. ; then \ rm -rf $(DOC_MODULE).types; \ fi else @@ -155,28 +153,29 @@ clean-local-gtkdoc: endif clean-local: clean-local-gtkdoc - rm -f *~ *.bak - rm -rf .libs + @rm -f *~ *.bak + @rm -rf .libs distclean-local: - rm -f $(REPORT_FILES) \ + @rm -f $(REPORT_FILES) \ $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt - rm -rf tmpl/*.sgml.bak - rm -f $(DOC_MODULE).hierarchy - rm -f *.stamp || true - if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ - rm -f $(DOC_MODULE)-docs.sgml ; \ + @rm -rf tmpl/*.sgml.bak + @rm -f $(DOC_MODULE).hierarchy + @rm -f *.stamp || true + @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ + rm -f $(DOC_MAIN_SGML_FILE) ; \ + rm -f $(DOC_OVERRIDES) ; \ rm -f $(DOC_MODULE).types ; \ rm -f $(DOC_MODULE).interfaces ; \ - rm -f $(DOC_MODULE)-overrides.txt ; \ rm -f $(DOC_MODULE).prerequisites ; \ rm -f $(DOC_MODULE)-sections.txt ; \ + rm -f $(content_files) ; \ rm -rf tmpl/*.sgml ; \ fi - rm -rf *.o + @rm -rf *.o maintainer-clean-local: clean - cd $(srcdir) && rm -rf html \ + @cd $(srcdir) && rm -rf html \ xml $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt # thomas: make docs parallel installable; devhelp requires majorminor too @@ -190,9 +189,7 @@ install-data-local: echo '-- Installing '$$i ; \ $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \ done; \ - echo '-- Installing $(builddir)/html/$(DOC_MODULE).devhelp' ; \ - $(INSTALL_DATA) $(builddir)/html/$(DOC_MODULE).devhelp \ - $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp; \ + echo '-- Installing $(builddir)/html/$(DOC_MODULE).devhelp2' ; \ if test -e $(builddir)/html/$(DOC_MODULE).devhelp2; then \ $(INSTALL_DATA) $(builddir)/html/$(DOC_MODULE).devhelp2 \ $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \ diff --git a/common/m4/Makefile.in b/common/m4/Makefile.in index e4fd8f8..9e754c2 100644 --- a/common/m4/Makefile.in +++ b/common/m4/Makefile.in @@ -1,9 +1,9 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. +# Makefile.in generated by automake 1.11.3 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -64,8 +64,7 @@ am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \ $(top_srcdir)/common/m4/orc.m4 $(top_srcdir)/common/m4/pkg.m4 \ $(top_srcdir)/m4/aalib.m4 $(top_srcdir)/m4/esd.m4 \ $(top_srcdir)/m4/gconf-2.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/gst-fionread.m4 \ - $(top_srcdir)/m4/gst-shout2.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/gst-fionread.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ @@ -79,11 +78,11 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_$(V)) -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_$(V)) -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = @@ -163,7 +162,10 @@ GDK_PIXBUF_CFLAGS = @GDK_PIXBUF_CFLAGS@ GDK_PIXBUF_LIBS = @GDK_PIXBUF_LIBS@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GIO_CFLAGS = @GIO_CFLAGS@ +GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ @@ -238,7 +240,6 @@ JPEG_LIBS = @JPEG_LIBS@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBCACA_CFLAGS = @LIBCACA_CFLAGS@ -LIBCACA_CONFIG = @LIBCACA_CONFIG@ LIBCACA_LIBS = @LIBCACA_LIBS@ LIBDV_CFLAGS = @LIBDV_CFLAGS@ LIBDV_LIBS = @LIBDV_LIBS@ @@ -262,6 +263,7 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ @@ -296,18 +298,10 @@ PKG_CONFIG = @PKG_CONFIG@ PLUGINDIR = @PLUGINDIR@ POSUB = @POSUB@ PROFILE_CFLAGS = @PROFILE_CFLAGS@ -PULSE_0_9_11_CFLAGS = @PULSE_0_9_11_CFLAGS@ -PULSE_0_9_11_LIBS = @PULSE_0_9_11_LIBS@ -PULSE_0_9_12_CFLAGS = @PULSE_0_9_12_CFLAGS@ -PULSE_0_9_12_LIBS = @PULSE_0_9_12_LIBS@ -PULSE_0_9_13_CFLAGS = @PULSE_0_9_13_CFLAGS@ -PULSE_0_9_13_LIBS = @PULSE_0_9_13_LIBS@ -PULSE_0_9_15_CFLAGS = @PULSE_0_9_15_CFLAGS@ -PULSE_0_9_15_LIBS = @PULSE_0_9_15_LIBS@ -PULSE_0_9_16_CFLAGS = @PULSE_0_9_16_CFLAGS@ -PULSE_0_9_16_LIBS = @PULSE_0_9_16_LIBS@ PULSE_0_9_20_CFLAGS = @PULSE_0_9_20_CFLAGS@ PULSE_0_9_20_LIBS = @PULSE_0_9_20_LIBS@ +PULSE_1_0_CFLAGS = @PULSE_1_0_CFLAGS@ +PULSE_1_0_LIBS = @PULSE_1_0_LIBS@ PULSE_CFLAGS = @PULSE_CFLAGS@ PULSE_LIBS = @PULSE_LIBS@ PYTHON = @PYTHON@ @@ -360,6 +354,7 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ @@ -394,7 +389,6 @@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ @@ -548,10 +542,15 @@ install-am: all-am installcheck: installcheck-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: diff --git a/common/m4/gst-args.m4 b/common/m4/gst-args.m4 index ccdd4da..030e7ac 100644 --- a/common/m4/gst-args.m4 +++ b/common/m4/gst-args.m4 @@ -66,10 +66,7 @@ AC_DEFUN([AG_GST_ARG_VALGRIND], if test "x$USE_VALGRIND" = xyes; then PKG_CHECK_MODULES(VALGRIND, valgrind >= $VALGRIND_REQ, USE_VALGRIND="yes", - [ - USE_VALGRIND="no" - AC_MSG_RESULT([no]) - ]) + USE_VALGRIND="no") fi if test "x$USE_VALGRIND" = xyes; then AC_DEFINE(HAVE_VALGRIND, 1, [Define if valgrind should be used]) diff --git a/common/m4/gst-feature.m4 b/common/m4/gst-feature.m4 index bfb3a1c..c072c79 100644 --- a/common/m4/gst-feature.m4 +++ b/common/m4/gst-feature.m4 @@ -122,35 +122,6 @@ dnl *** Define the conditional as appropriate AM_CONDITIONAL(USE_[$1], test x$USE_[$1] = xyes) ]) -dnl Use a -config program which accepts --cflags and --libs parameters -dnl to set *_CFLAGS and *_LIBS and check existence of a feature. -dnl Richard Boulton <richard-alsa@tartarus.org> -dnl Last modification: 26/06/2001 -dnl AG_GST_CHECK_CONFIGPROG(FEATURE-NAME, CONFIG-PROG-FILENAME, MODULES) -dnl -dnl This check was written for GStreamer: it should be renamed and checked -dnl for portability if you decide to use it elsewhere. -dnl -AC_DEFUN([AG_GST_CHECK_CONFIGPROG], -[ - AC_PATH_PROG([$1]_CONFIG, [$2], no) - if test x$[$1]_CONFIG = xno; then - [$1]_LIBS= - [$1]_CFLAGS= - HAVE_[$1]=no - else - if [$2] --plugin-libs [$3] &> /dev/null; then - [$1]_LIBS=`[$2] --plugin-libs [$3]` - else - [$1]_LIBS=`[$2] --libs [$3]` - fi - [$1]_CFLAGS=`[$2] --cflags [$3]` - HAVE_[$1]=yes - fi - AC_SUBST([$1]_LIBS) - AC_SUBST([$1]_CFLAGS) -]) - dnl Use AC_CHECK_LIB and AC_CHECK_HEADER to do both tests at once dnl sets HAVE_module if we have it dnl Richard Boulton <richard-alsa@tartarus.org> @@ -247,7 +218,37 @@ AC_DEFUN([AG_GST_PARSE_SUBSYSTEM_DISABLES], AG_GST_PARSE_SUBSYSTEM_DISABLE($1,XML) ]) +dnl AG_GST_CHECK_GST_DEBUG_DISABLED(ACTION-IF-DISABLED, ACTION-IF-NOT-DISABLED) +dnl +dnl Checks if the GStreamer debugging system is disabled in the core version +dnl we are compiling against (by checking gstconfig.h) +dnl +AC_DEFUN([AG_GST_CHECK_GST_DEBUG_DISABLED], +[ + AC_REQUIRE([AG_GST_CHECK_GST]) + + AC_MSG_CHECKING([whether the GStreamer debugging system is enabled]) + AC_LANG_PUSH([C]) + save_CFLAGS="$CFLAGS" + CFLAGS="$GST_CFLAGS $CFLAGS" + AC_COMPILE_IFELSE([ + #include <gst/gstconfig.h> + #ifdef GST_DISABLE_GST_DEBUG + #error "debugging disabled, make compiler fail" + #endif], [ debug_system_enabled=yes], [debug_system_enabled=no]) + CFLAGS="$save_CFLAGS" + AC_LANG_POP([C]) + + AC_MSG_RESULT([$debug_system_enabled]) + if test "x$debug_system_enabled" = "xyes" ; then + $2 + true + else + $1 + true + fi +]) dnl relies on GST_PLUGINS_ALL, GST_PLUGINS_SELECTED, GST_PLUGINS_YES, dnl GST_PLUGINS_NO, and BUILD_EXTERNAL diff --git a/common/m4/gst-glib2.m4 b/common/m4/gst-glib2.m4 index bafba41..b01f02f 100644 --- a/common/m4/gst-glib2.m4 +++ b/common/m4/gst-glib2.m4 @@ -70,4 +70,6 @@ AC_DEFUN([AG_GST_GLIB_CHECK], dnl for the poor souls who for example have glib in /usr/local AS_SCRUB_INCLUDE(GLIB_CFLAGS) + + AC_SUBST(GLIB_EXTRA_CFLAGS) ]) diff --git a/common/m4/introspection.m4 b/common/m4/introspection.m4 index f9ce49c..589721c 100644 --- a/common/m4/introspection.m4 +++ b/common/m4/introspection.m4 @@ -59,12 +59,18 @@ m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL], INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0` INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)" + INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0` + INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` + INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection fi AC_SUBST(INTROSPECTION_SCANNER) AC_SUBST(INTROSPECTION_COMPILER) AC_SUBST(INTROSPECTION_GENERATE) AC_SUBST(INTROSPECTION_GIRDIR) AC_SUBST(INTROSPECTION_TYPELIBDIR) + AC_SUBST(INTROSPECTION_CFLAGS) + AC_SUBST(INTROSPECTION_LIBS) + AC_SUBST(INTROSPECTION_MAKEFILE) AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes") ]) diff --git a/common/m4/orc.m4 b/common/m4/orc.m4 index 3b2c6b5..26b2459 100644 --- a/common/m4/orc.m4 +++ b/common/m4/orc.m4 @@ -21,17 +21,19 @@ AC_DEFUN([ORC_CHECK], if test "x$enable_orc" != "xno" ; then PKG_CHECK_MODULES(ORC, orc-0.4 >= $ORC_REQ, [ AC_DEFINE(HAVE_ORC, 1, [Use Orc]) + HAVE_ORC=yes if test "x$ORCC" = "x" ; then + AC_MSG_CHECKING(for usable orcc) ORCC=`$PKG_CONFIG --variable=orcc orc-0.4` + dnl check whether the orcc found by pkg-config can be run from the build environment + dnl if this is not the case (e.g. when cross-compiling) fall back to orcc from PATH + AS_IF([$ORCC --version 1> /dev/null 2> /dev/null], [], [ORCC=`which orcc`]) + AC_MSG_RESULT($ORCC) fi AC_SUBST(ORCC) ORCC_FLAGS="--compat $ORC_REQ" AC_SUBST(ORCC_FLAGS) - HAVE_ORC=yes - HAVE_ORCC=yes - if test "x$cross_compiling" = "xyes" ; then - HAVE_ORCC=no - fi + AS_IF([test "x$ORCC" = "x"], [HAVE_ORCC=no], [HAVE_ORCC=yes]) ], [ if test "x$enable_orc" = "xyes" ; then AC_MSG_ERROR([--enable-orc specified, but Orc >= $ORC_REQ not found]) diff --git a/common/scangobj-merge.py b/common/scangobj-merge.py index 5e84235..9a1cac9 100755 --- a/common/scangobj-merge.py +++ b/common/scangobj-merge.py @@ -3,7 +3,7 @@ # vi:si:et:sw=4:sts=4:ts=4 """ -parse, update and write .signals and .args files +parse, merge and write gstdoc-scanobj files """ import sys @@ -16,9 +16,9 @@ def debug(*args): # http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/107747 # Licensed under the Python License class OrderedDict(dict): - def __init__(self, dict = None): + def __init__(self): self._keys = [] - dict.__init__(self, dict) + dict.__init__(self) def __delitem__(self, key): dict.__delitem__(self, key) @@ -110,8 +110,7 @@ class GDoc: def save_file(self, filename, backup=False): """ - Save the signals information to the given .signals file if the - file content changed. + Save the information to the given file if the file content changed. """ olddata = None try: @@ -256,6 +255,25 @@ class Args(GDoc): return "\n".join(lines) + '\n' +class SingleLine(GDoc): + def __init__(self): + self._objects = [] + + def load_data(self, data): + """ + Load the .interfaces/.prerequisites lines, merge duplicates + """ + # split data on '\n' + lines = data.splitlines(); + # merge them into self._objects + for line in lines: + if line not in self._objects: + self._objects.append(line) + + def get_data(self): + lines = sorted(self._objects) + return "\n".join(lines) + '\n' + def main(argv): modulename = None try: @@ -264,7 +282,6 @@ def main(argv): sys.stderr.write('Please provide a documentation module name\n') sys.exit(1) - print "Merging scangobj output for %s" % modulename signals = Signals() signals.load_file(modulename + '.signals') signals.load_file(modulename + '.signals.new') @@ -277,4 +294,16 @@ def main(argv): args.save_file(modulename + '.args', backup=True) os.unlink(modulename + '.args.new') + ifaces = SingleLine() + ifaces.load_file(modulename + '.interfaces') + ifaces.load_file(modulename + '.interfaces.new') + ifaces.save_file(modulename + '.interfaces', backup=True) + os.unlink(modulename + '.interfaces.new') + + prereq = SingleLine() + prereq.load_file(modulename + '.prerequisites') + prereq.load_file(modulename + '.prerequisites.new') + prereq.save_file(modulename + '.prerequisites', backup=True) + os.unlink(modulename + '.prerequisites.new') + main(sys.argv) |