[gstreamermm] Modify build to not differentiate between wrapped and existing plug-ins.



commit 8b4b4df76886ff002a3ad5c12962b4c0e974ef1e
Author: José Alburquerque <jaalburqu svn gnome org>
Date:   Thu May 14 22:17:12 2009 -0400

    Modify build to not differentiate between wrapped and existing plug-ins.
---
 ChangeLog                                      |   12 ++++++++++++
 build_shared/Makefile_build.am_fragment        |    8 ++------
 build_shared/Makefile_build_gensrc.am_fragment |    3 ---
 configure.ac                                   |   23 ++++++++---------------
 gstreamer/gstreamermm/Makefile.am              |    8 +++-----
 gstreamer/gstreamermm/private/Makefile.am      |    9 ++-------
 gstreamer/src/Makefile_list_of_hg.am_fragment  |   14 ++++++--------
 7 files changed, 33 insertions(+), 44 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 63b9b7b..778b43b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2009-05-14  José Alburquerque  <jaalburqu svn gnome org>
+
+	* configure.ac: Remove the need to check if a plug-in exists because
+	they can all be built whether they exist or not on the build system.
+	* build_shared/Makefile_build.am_fragment:
+	* build_shared/Makefile_build_gensrc.am_fragment:
+	* gstreamer/gstreamermm/Makefile.am:
+	* gstreamer/gstreamermm/private/Makefile.am:
+	* gstreamer/src/Makefile_list_of_hg.am_fragment: Modify the build
+	system to not differentiate between all the wrapped plug-ins and the
+	existing plug-ins on the build system when building and installing.
+
 2009-05-14  Murray Cumming  <murrayc murrayc-x61>
 
 	Remove GSTREAMERMM_PLUGIN_* defines.
diff --git a/build_shared/Makefile_build.am_fragment b/build_shared/Makefile_build.am_fragment
index 8c7f5e7..08bb61f 100644
--- a/build_shared/Makefile_build.am_fragment
+++ b/build_shared/Makefile_build.am_fragment
@@ -44,13 +44,9 @@ DEFAULT_INCLUDES	=
 # DISABLE_DEPRECATED_CFLAGS is empty unless --enable-deprecated is specified to configure:
 INCLUDES = $(strip $(all_includes)) $(GSTREAMERMM_WARNING_FLAGS) $(DISABLE_DEPRECATED_CFLAGS)
 
-EXTRA_HEADERS = $(files_all_plugin_built_h)
-
 sublib_includedir	= $(includedir)/$(sublib_libname)/$(sublib_name)
-sublib_include_HEADERS	= $(files_all_built_h) $(files_all_extra_h)
-
-EXTRA_sublib_includedir	= $(includedir)/$(sublib_libname)/$(sublib_name)
-EXTRA_sublib_include_HEADERS	= $(files_existing_plugin_built_h)
+sublib_include_HEADERS	= $(files_all_built_h) $(files_all_extra_h) \
+			  $(files_all_plugin_built_h)
 
 maintainer-clean-local:
 	(cd $(srcdir) && rm -f $(files_all_built_cc) $(files_all_built_h) \
diff --git a/build_shared/Makefile_build_gensrc.am_fragment b/build_shared/Makefile_build_gensrc.am_fragment
index cf4f1c5..25fd88d 100644
--- a/build_shared/Makefile_build_gensrc.am_fragment
+++ b/build_shared/Makefile_build_gensrc.am_fragment
@@ -57,9 +57,6 @@ files_all_built_h = $(files_all_hg:.hg=.h)
 
 files_all_plugin_built_cc = $(files_all_plugin_hg:.hg=.cc)
 files_all_plugin_built_h = $(files_all_plugin_hg:.hg=.h)
-files_existing_plugin_built_cc = $(files_existing_plugin_hg:.hg=.cc)
-files_existing_plugin_built_h = $(files_existing_plugin_hg:.hg=.h)
-files_existing_plugin_built_lo = $(files_existing_plugin_hg:.hg=.lo)
 
 # Extra files
 
diff --git a/configure.ac b/configure.ac
index ae6c2b8..8853cb5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -167,10 +167,6 @@ AC_SUBST([GENERATE_PLUGIN_GMMPROC_FILE_DIR])
 #  Plug-in processing
 #########################################################################
 
-# make sure grep and head are available:
-AC_PROG_GREP()
-AC_PATH_PROG([HEAD], [head])
-
 # make sure gst-inspect is available:
 AC_PATH_PROG([GST_INSPECT], [gst-inspect])
 if test x$GST_INSPECT = x ; then
@@ -180,14 +176,13 @@ AC_ARG_VAR([GST_INSPECT], [Variable to store gst-inspect executable])
 AC_SUBST(GST_INSPECT)
 
 # To add a plugin, add the plugin definition, in the form of
-# "plugin=CppClassName"  to the space-separated list of definitions below.  
-# (@here "plugin" is the plugin name as recognized by
-# gst-inspect and "CppClassName" is the desired name of the C++ class.)
+# "plugin=CppClassName" to the space-separated list of definitions below.
+# (Where "plugin" is the plugin name as recognized by gst-inspect and
+# "CppClassName" is the desired name of the C++ class.)
 #
 # Also add the target .hg file name to the files_all_plugin_hg variable in the
-# gstreamer/src/Makefile_list_of_hg.am_fragment file.  
-# (That must be the same as "CppClassName" - all in lowercase with a .hg
-# extension)
+# gstreamer/src/Makefile_list_of_hg.am_fragment file.  (That must be the same
+# as "CppClassName" - all in lowercase with a .hg extension).
 GSTREAMERMM_ALL_PLUGIN_DEFS="capsfilter=CapsFilter fakesrc=FakeSrc \
 fakesink=FakeSink fdsink=FdSink fdsrc=FdSrc filesrc=FileSrc filesink=FileSink \
 identity=Identity multiqueue=MultiQueue queue=Queue tee=Tee \
@@ -211,16 +206,14 @@ vorbistag=VorbisTag ximagesink=XImageSink xvimagesink=XvImageSink"
 # wrapped in glibmm first: DecodeBin2, MultiFdSink, PlayBin, TcpServerSink,
 # TheoraParse, UriDecodeBin.
 
-# TODO: Document this:
+# Go through all the "plug-in defs", extracting the plug-in name and the C++
+# class name.  Create a list of the C++ class names and a list of the
+# corresponding .hg file names which are taken from the C++ class name.
 for plugin_def in $GSTREAMERMM_ALL_PLUGIN_DEFS; do
   plugin_name=[`echo $plugin_def | cut -d'=' -f 1`]
   cppname=[`echo $plugin_def | cut -d'=' -f 2`]
   GSTREAMERMM_ALL_PLUGIN_CPPNAMES="$GSTREAMERMM_ALL_PLUGIN_CPPNAMES $cppname"
   GSTREAMERMM_ALL_PLUGIN_HG=["$GSTREAMERMM_ALL_PLUGIN_HG `echo $cppname | tr [:upper:] [:lower:]`.hg"]
-  if test -z "`$GST_INSPECT $plugin_name | $HEAD -n 1 | $GREP "No such element"`"; then
-    GSTREAMERMM_EXISTING_PLUGIN_CPPNAMES="$GSTREAMERMM_EXISTING_PLUGIN_CPPNAMES $cppname"
-    GSTREAMERMM_EXISTING_PLUGIN_HG=["$GSTREAMERMM_EXISTING_PLUGIN_HG `echo $cppname | tr [:upper:] [:lower:]`.hg"]
-  fi
 done
 AC_SUBST(GSTREAMERMM_ALL_PLUGIN_DEFS)
 AC_SUBST(GSTREAMERMM_ALL_PLUGIN_CPPNAMES)
diff --git a/gstreamer/gstreamermm/Makefile.am b/gstreamer/gstreamermm/Makefile.am
index 07aff96..fa66f04 100644
--- a/gstreamer/gstreamermm/Makefile.am
+++ b/gstreamer/gstreamermm/Makefile.am
@@ -24,9 +24,7 @@ sublib_files_extra_general_deprecated_h =
 include $(top_srcdir)/build_shared/Makefile_build.am_fragment
 
 lib_LTLIBRARIES = libgstreamermm-0.10.la
-libgstreamermm_0_10_la_SOURCES = $(files_built_cc) $(files_extra_cc)
-EXTRA_libgstreamermm_0_10_la_SOURCES = $(files_all_plugin_built_cc)
+libgstreamermm_0_10_la_SOURCES = $(files_built_cc) $(files_extra_cc) \
+				 $(files_all_plugin_built_cc)
 libgstreamermm_0_10_la_LDFLAGS = $(common_ldflags)
-libgstreamermm_0_10_la_LIBADD  = $(GSTREAMERMM_LIBS) \
-				 $(files_existing_plugin_built_lo)
-libgstreamermm_0_10_la_DEPENDENCIES = $(files_existing_plugin_built_lo)
+libgstreamermm_0_10_la_LIBADD  = $(GSTREAMERMM_LIBS)
diff --git a/gstreamer/gstreamermm/private/Makefile.am b/gstreamer/gstreamermm/private/Makefile.am
index bc3f7e9..5efbf5a 100644
--- a/gstreamer/gstreamermm/private/Makefile.am
+++ b/gstreamer/gstreamermm/private/Makefile.am
@@ -6,7 +6,6 @@ include $(srcdir)/../../src/Makefile_list_of_hg.am_fragment
 files_built_p_h		= $(files_hg:.hg=_p.h)
 files_built_all_p_h	= $(files_all_hg:.hg=_p.h)
 files_all_plugin_p_h = $(files_all_plugin_hg:.hg=_p.h)
-files_existing_plugin_p_h = $(files_existing_plugin_hg:.hg=_p.h)
 files_extra_p_h		= miniobject_p.h taglist_p.h
 files_extra_all_p_h	= miniobject_p.h taglist_p.h
 
@@ -15,13 +14,9 @@ dist_sources = $(files_built_all_p_h) $(files_extra_all_p_h) \
 
 DISTFILES = $(DIST_COMMON) $(dist_sources)
 
-EXTRA_HEADERS = $(files_all_plugin_p_h)
-
 private_includedir	= $(includedir)/gstreamermm-0.10/gstreamermm/private
-private_include_HEADERS	= $(files_built_p_h) $(files_extra_p_h)
-
-EXTRA_private_includedir = $(includedir)/gstreamermm-0.10/gstreamermm/private
-EXTRA_private_include_HEADERS = $(files_existing_plugin_p_h)
+private_include_HEADERS	= $(files_built_p_h) $(files_extra_p_h) \
+			  $(files_all_plugin_p_h)
 
 maintainer-clean-local:
 	(cd $(srcdir) && rm -f $(files_built_p_h) $(files_all_plugin_p_h))
diff --git a/gstreamer/src/Makefile_list_of_hg.am_fragment b/gstreamer/src/Makefile_list_of_hg.am_fragment
index 9335824..533e05c 100644
--- a/gstreamer/src/Makefile_list_of_hg.am_fragment
+++ b/gstreamer/src/Makefile_list_of_hg.am_fragment
@@ -24,13 +24,12 @@ files_general_hg = bin.hg buffer.hg bus.hg caps.hg childproxy.hg clock.hg \
 files_general_deprecated_hg =
 
 # To add a plugin, add the plugin definition, in the form of
-# "plugin=CppClassName" (where "plugin" is the plugin name as recognized by
-# gst-inspect and "CppClassName" is the desired name of the C++ class), to the
-# GSTREAMERMM_ALL_PLUGIN_DEFS variable of the configure.ac file.  Also add the
-# target .hg file name (which must be the same as "CppClassName" all in
-# lowercase with a .hg extension) to the variable below.  Finally, be sure to
-# include an #undef in the form of "#undef GSTREAMERMM_PLUGIN_name" in the
-# gstreamermmconfig.h.in file (where "name" is the plugin name all in caps).
+# "plugin=CppClassName" to the GSTREAMERMM_ALL_PLUGIN_DEFS variable of the
+# configure.ac file.  (Where "plugin" is the plugin name as recognized by
+# gst-inspect and "CppClassName" is the desired name of the C++ class.)
+#
+# Also add the target .hg file name to the the variable below.  (That must be
+# the same as "CppClassName" - all in lowercase with a .hg extension).
 
 files_all_plugin_hg = capsfilter.hg fakesrc.hg fakesink.hg fdsink.hg fdsrc.hg \
 		  filesrc.hg filesink.hg identity.hg multiqueue.hg queue.hg \
@@ -53,7 +52,6 @@ files_all_plugin_hg = capsfilter.hg fakesrc.hg fakesink.hg fdsink.hg fdsrc.hg \
 
 defs_plugin_all = $(GSTREAMERMM_ALL_PLUGIN_DEFS)
 cppnames_plugin_all = $(GSTREAMERMM_ALL_PLUGIN_CPPNAMES)
-files_existing_plugin_hg = $(GSTREAMERMM_ALL_PLUGIN_HG)
 
 files_patched_hg = taglist.hg
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]