[gstreamermm/devel-other-plugins] gstreamermm-plugins-bad: create build infrastructure for gst-plugins-bad
- From: Marcin Kolny <mkolny src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gstreamermm/devel-other-plugins] gstreamermm-plugins-bad: create build infrastructure for gst-plugins-bad
- Date: Tue, 21 Jul 2015 13:24:33 +0000 (UTC)
commit b044889813b48f3e268cbfae1f28b52af1df3732
Author: Marcin Kolny <marcin kolny flytronic pl>
Date: Tue Jul 21 13:58:17 2015 +0200
gstreamermm-plugins-bad: create build infrastructure for gst-plugins-bad
* .gitignore
* Makefile.am
* configure.ac
* examples/Makefile.am
* gst-plugins-bad/gstreamermm-plugins-bad-uninstalled.pc.in
* gst-plugins-bad/gstreamermm-plugins-bad.pc.in
* gst-plugins-bad/gstreamermm-plugins-bad/Makefile.am
* gst-plugins-bad/gstreamermm-plugins-bad/filelist.am
* gst-plugins-bad/gstreamermm-plugins-bad/private/.gitignore
* gst-plugins-bad/gstreamermm-plugins-bad/wrap_init.h
* gst-plugins-bad/src/Makefile.am
* gst-plugins-bad/src/filelist.am
* gstreamer/src/glbasefilter.ccg -> gst-plugins-bad/src/glbasefilter.ccg
* gstreamer/src/glbasefilter.hg -> gst-plugins-bad/src/glbasefilter.hg
* gstreamer/src/glfilter.ccg -> gst-plugins-bad/src/glfilter.ccg
* gstreamer/src/glfilter.hg -> gst-plugins-bad/src/glfilter.hg
* gst-plugins-bad/src/gst.defs
* gstreamer/src/filelist.am
.gitignore | 12 +++++++-
Makefile.am | 8 +++--
configure.ac | 17 ++++++++---
examples/Makefile.am | 2 +-
.../gstreamermm-plugins-bad-uninstalled.pc.in | 10 +++++++
gst-plugins-bad/gstreamermm-plugins-bad.pc.in | 19 +++++++++++++
.../gstreamermm-plugins-bad/Makefile.am | 29 ++++++++++++++++++++
.../gstreamermm-plugins-bad/filelist.am | 6 ++++
.../gstreamermm-plugins-bad/private/.gitignore | 1 +
.../gstreamermm-plugins-bad/wrap_init.h | 20 ++++++++++++-
gst-plugins-bad/src/Makefile.am | 24 ++++++++++++++++
gst-plugins-bad/src/filelist.am | 16 +++++++++++
.../src/glbasefilter.ccg | 0
{gstreamer => gst-plugins-bad}/src/glbasefilter.hg | 8 +++++-
{gstreamer => gst-plugins-bad}/src/glfilter.ccg | 8 +++--
{gstreamer => gst-plugins-bad}/src/glfilter.hg | 10 +++++-
gstreamer/src/filelist.am | 2 +-
17 files changed, 172 insertions(+), 20 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index d81afb0..c5851e1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -496,12 +496,20 @@ gstreamer/src/ximagesink.hg
gstreamer/src/xvimagesink.ccg
gstreamer/src/xvimagesink.hg
+#gst-plugins-bad/
+gst-plugins-bad/gstreamermm-plugins-bad/glbasefilter.cc
+gst-plugins-bad/gstreamermm-plugins-bad/glbasefilter.h
+gst-plugins-bad/gstreamermm-plugins-bad/glfilter.cc
+gst-plugins-bad/gstreamermm-plugins-bad/glfilter.h
+gst-plugins-bad/gstreamermm-plugins-bad/wrap_init.cc
+gst-plugins-bad/gstreamermm-*.pc
+
#tests/
tests/test-allocator
tests/test-atomicqueue
tests/test-bin
-tests/test-buffer
-tests/test-bus
+tests/test-buffert
+ests/test-bus
tests/test-caps
tests/test-capsfeatures
tests/test-ghostpad
diff --git a/Makefile.am b/Makefile.am
index 6ff51c0..07be4d0 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -19,7 +19,7 @@ DISTCHECK_CONFIGURE_FLAGS = --enable-warnings=fatal
EXTRA_DIST = tests/plugins/test-foo.h tests/regression/utils.h tests/regression/pluginbin.h
tests/resources/input-image.png
if MAINTAINER_MODE
-src_subdirs = gstreamer/src
+src_subdirs = gstreamer/src gst-plugins-bad/src
else
src_subdirs =
endif
@@ -28,7 +28,9 @@ doc_subdirs = docs
else
doc_subdirs =
endif
-SUBDIRS = tools $(src_subdirs) gstreamer/gstreamermm tests examples $(doc_subdirs)
+SUBDIRS = tools $(src_subdirs) gstreamer/gstreamermm \
+ gst-plugins-bad/gstreamermm-plugins-bad \
+ tests examples $(doc_subdirs)
gstreamermm_includedir = $(includedir)/$(GSTREAMERMM_MODULE_NAME)
gstreamermm_include_HEADERS = gstreamer/gstreamermm.h
@@ -36,7 +38,7 @@ gstreamermm_libincludedir = $(libdir)/$(GSTREAMERMM_MODULE_NAME)/include
nodist_gstreamermm_libinclude_HEADERS = gstreamer/gstreamermmconfig.h
pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = gstreamer/$(GSTREAMERMM_MODULE_NAME).pc
+pkgconfig_DATA = gstreamer/$(GSTREAMERMM_MODULE_NAME).pc
gst-plugins-bad/$(GSTREAMERMM_PLUGINS_BAD_MODULE_NAME).pc
dist_noinst_SCRIPTS = autogen.sh
diff --git a/configure.ac b/configure.ac
index 2cbf696..0c8f14e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -13,9 +13,9 @@
## You should have received a copy of the GNU Lesser General Public License
## along with this program. If not, see <http://www.gnu.org/licenses/>.
-m4_define([GSTREAMERMM_VERSION], [1.4.3])
+m4_define([GSTMM_VERSION], [1.4.3])
-AC_INIT([gstreamermm], GSTREAMERMM_VERSION,
+AC_INIT([gstreamermm], [1.4.3],
[http://bugzilla.gnome.org/enter_bug.cgi?product=gstreamermm],
[gstreamermm], [http://www.gtkmm.org/])
AC_PREREQ([2.59])
@@ -27,6 +27,7 @@ AC_CONFIG_HEADERS([config.h gstreamer/gstreamermmconfig.h])
MM_PREREQ([0.9.6])
MM_INIT_MODULE([gstreamermm-1.0])
+MM_INIT_MODULE([gstreamermm-plugins-bad-1.0])
# Copy the mm-common .pl scripts into docs/,
# and use them from there,
@@ -56,6 +57,7 @@ AC_PROG_SED
AS_IF([test "x$enable_static" = xyes],
[
AC_DEFINE([GSTREAMERMM_STATIC_LIB], [1], [Define if gstreamermm is built as a static library])
+ AC_DEFINE([GSTREAMERMM_PLUGINS_BAD_STATIC_LIB], [1], [Define if gstreamermm-plugins-bad is built as a
static library])
])
# The format below is used so that the requirements appear nicely in the .pc
@@ -65,11 +67,12 @@ AC_SUBST([GSTREAMERMM_MODULES],
[[], [-app], [-audio], [-base], [-check],
[-controller], [-fft], [-net], [-pbutils], [-plugins-base],
[-riff], [-rtp], [-sdp], [-tag], [-video], [-gl]],
- [ gstreamer[]m4_defn([gstmm_mod])[]-1.0 >= GSTREAMERMM_VERSION])'])
+ [ gstreamer[]m4_defn([gstmm_mod])[]-1.0 >= GSTMM_VERSION])'])
PKG_CHECK_MODULES([GSTREAMERMM], [$GSTREAMERMM_MODULES])
-
-PKG_CHECK_MODULES([GSTREAMERMM_PLUGINS_BAD], gstreamer-plugins-bad-1.0 >= GSTREAMERMM_VERSION,
+AC_SUBST([GSTREAMERMM_PLUGINS_BAD_MODULES],
+ ["gstreamer-plugins-bad-1.0 >= GSTMM_VERSION $GSTREAMERMM_MODULES"])
+PKG_CHECK_MODULES([GSTREAMERMM_PLUGINS_BAD], ,
[
gstmm_bad_version=$(pkg-config --modversion gstreamer-plugins-bad-1.0)
gstmm_enable_bad=yes
@@ -211,6 +214,10 @@ AC_CONFIG_FILES([Makefile
gstreamer/${GSTREAMERMM_MODULE_NAME}-uninstalled.pc:gstreamer/gstreamermm-uninstalled.pc.in
gstreamer/src/Makefile
gstreamer/gstreamermm/Makefile
+
gst-plugins-bad/${GSTREAMERMM_PLUGINS_BAD_MODULE_NAME}.pc:gst-plugins-bad/gstreamermm-plugins-bad.pc.in
+
gst-plugins-bad/${GSTREAMERMM_PLUGINS_BAD_MODULE_NAME}-uninstalled.pc:gst-plugins-bad/gstreamermm-plugins-bad-uninstalled.pc.in
+ gst-plugins-bad/src/Makefile
+ gst-plugins-bad/gstreamermm-plugins-bad/Makefile
examples/Makefile
tests/Makefile
docs/Makefile
diff --git a/examples/Makefile.am b/examples/Makefile.am
index 9c40c43..b8ff986 100644
--- a/examples/Makefile.am
+++ b/examples/Makefile.am
@@ -23,7 +23,7 @@ examples_cppflags = $(GUI_EXAMPLES_CFLAGS) $(examples_cppflags)
endif
if ENABLE_GSTREAMERMM_GL
-gl_examples = opengl_filter/example
+#gl_examples = opengl_filter/example
endif
noinst_PROGRAMS = \
diff --git a/gst-plugins-bad/gstreamermm-plugins-bad-uninstalled.pc.in
b/gst-plugins-bad/gstreamermm-plugins-bad-uninstalled.pc.in
new file mode 100644
index 0000000..c8cd503
--- /dev/null
+++ b/gst-plugins-bad/gstreamermm-plugins-bad-uninstalled.pc.in
@@ -0,0 +1,10 @@
+doxytagfile=${pc_top_builddir}/docs/reference/@GSTREAMERMM_MODULE_NAME tag
+htmlrefpub=http://library.gnome.org/@PACKAGE_TARNAME@/unstable/
+
+Name: gstreamermm-plugins-bad
+Description: C++ binding for GStreamer, not installed
+Version: @GSTREAMERMM_VERSION@
+URL: http://www.gtkmm.org/
+Requires: @GSTREAMERMM_MODULES@
+Libs: ${pc_top_builddir}/${pcfiledir}/gstreamermm/libgstreamermm- GSTREAMERMM_API_VERSION@.la
+Cflags: -I${pc_top_builddir}/${pcfiledir} -I${pc_top_builddir}/${pcfiledir}/@srcdir@
diff --git a/gst-plugins-bad/gstreamermm-plugins-bad.pc.in b/gst-plugins-bad/gstreamermm-plugins-bad.pc.in
new file mode 100644
index 0000000..b537645
--- /dev/null
+++ b/gst-plugins-bad/gstreamermm-plugins-bad.pc.in
@@ -0,0 +1,19 @@
+prefix= prefix@
+exec_prefix= exec_prefix@
+libdir= libdir@
+datarootdir= datarootdir@
+datadir= datadir@
+includedir= includedir@
+
+docdir=${datarootdir}/doc/@GSTREAMERMM_MODULE_NAME@
+doxytagfile=${docdir}/reference/@GSTREAMERMM_MODULE_NAME tag
+htmlrefdir=${docdir}/reference/html
+htmlrefpub=http://library.gnome.org/@PACKAGE_TARNAME@/unstable/
+
+Name: gstreamermm-plugins-bad
+Description: C++ binding for gstreamer
+Version: @GSTREAMERMM_VERSION@
+URL: http://www.gtkmm.org/
+Requires: @GSTREAMERMM_PLUGINS_BAD_MODULES@ gstreamermm-1.0 >= @GSTREAMERMM_VERSION@
+Libs: -L${libdir} -lgstreamermm-plugins-bad- GSTREAMERMM_API_VERSION@
+Cflags: -I${includedir}/@GSTREAMERMM_MODULE_NAME@ -I${libdir}/@GSTREAMERMM_MODULE_NAME@/include
diff --git a/gst-plugins-bad/gstreamermm-plugins-bad/Makefile.am
b/gst-plugins-bad/gstreamermm-plugins-bad/Makefile.am
new file mode 100644
index 0000000..4f8b18e
--- /dev/null
+++ b/gst-plugins-bad/gstreamermm-plugins-bad/Makefile.am
@@ -0,0 +1,29 @@
+## Copyright 2009 The gstreamermm Development Team
+##
+## This library is free software: you can redistribute it and/or modify it
+## under the terms of the GNU Lesser General Public License as published
+## by the Free Software Foundation, either version 2.1 of the License,
+## or (at your option) any later version.
+##
+## This library is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public License
+## along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+lib_LTLIBRARIES = libgstreamermm-plugins-bad- GSTREAMERMM_API_VERSION@.la
+
+include $(srcdir)/../src/filelist.am
+include $(srcdir)/filelist.am
+include $(top_srcdir)/build/compile-binding.am
+
+local_cppflags = -I$(top_srcdir)/gstreamer $(binding_includes) $(binding_cppflags) -DGSTREAMERMM_BUILD=1
+
+AM_CPPFLAGS = $(local_cppflags) $(GSTREAMERMM_CFLAGS)
+AM_CXXFLAGS = $(GSTREAMERMM_WXXFLAGS)
+
+libgstreamermm_plugins_bad_ GSTREAMERMM_API_VERSION@_la_SOURCES = $(binding_sources)
+libgstreamermm_plugins_bad_ GSTREAMERMM_API_VERSION@_la_LDFLAGS = -no-undefined -version-info
$(GSTREAMERMM_SO_VERSION)
+libgstreamermm_plugins_bad_ GSTREAMERMM_API_VERSION@_la_LIBADD = $(GSTREAMERMM_LIBS)
diff --git a/gst-plugins-bad/gstreamermm-plugins-bad/filelist.am
b/gst-plugins-bad/gstreamermm-plugins-bad/filelist.am
new file mode 100644
index 0000000..d02bd27
--- /dev/null
+++ b/gst-plugins-bad/gstreamermm-plugins-bad/filelist.am
@@ -0,0 +1,6 @@
+## Copyright 2009 The gstreamermm Development Team
+
+files_built_cc = $(files_hg:.hg=.cc) wrap_init.cc
+files_built_h = $(files_hg:.hg=.h)
+files_built_ph = $(patsubst %.hg,private/%_p.h,$(files_hg))
+files_extra_ph =
diff --git a/gst-plugins-bad/gstreamermm-plugins-bad/private/.gitignore
b/gst-plugins-bad/gstreamermm-plugins-bad/private/.gitignore
new file mode 100644
index 0000000..c3d1f64
--- /dev/null
+++ b/gst-plugins-bad/gstreamermm-plugins-bad/private/.gitignore
@@ -0,0 +1 @@
+*_p.h
diff --git a/gstreamer/src/glbasefilter.ccg b/gst-plugins-bad/gstreamermm-plugins-bad/wrap_init.h
similarity index 67%
copy from gstreamer/src/glbasefilter.ccg
copy to gst-plugins-bad/gstreamermm-plugins-bad/wrap_init.h
index 96989b1..2561128 100644
--- a/gstreamer/src/glbasefilter.ccg
+++ b/gst-plugins-bad/gstreamermm-plugins-bad/wrap_init.h
@@ -1,6 +1,8 @@
+// -*- c++ -*-
+
/* gstreamermm - a C++ wrapper for gstreamer
*
- * Copyright 2008-2015 The gstreamermm Development Team
+ * Copyright 2008 The gstreamermm Development Team
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -17,4 +19,18 @@
* Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-_PINCLUDE(gstreamermm/private/basetransform_p.h)
+#ifndef _GSTREAMERMM_WRAP_INIT_H
+#define _GSTREAMERMM_WRAP_INIT_H
+
+// wrap_init.cc is generated by tools/generate_wrap_init.pl
+
+#include <gstreamermmconfig.h>
+
+namespace GstBad
+{
+ /** Initializes the gstreamermm-plugins-bad wrapping system.
+ */
+ void wrap_init();
+}
+
+#endif //_GSTREAMERMM_WRAP_INIT_H
diff --git a/gst-plugins-bad/src/Makefile.am b/gst-plugins-bad/src/Makefile.am
new file mode 100644
index 0000000..01a5a29
--- /dev/null
+++ b/gst-plugins-bad/src/Makefile.am
@@ -0,0 +1,24 @@
+## Copyright 2015 The gstreamermm Development Team
+##
+## This library is free software: you can redistribute it and/or modify it
+## under the terms of the GNU Lesser General Public License as published
+## by the Free Software Foundation, either version 2.1 of the License,
+## or (at your option) any later version.
+##
+## This library is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public License
+## along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+binding_name = gstreamermm-plugins-bad
+# generate_wrap_init.pl should support nested namespaces
+wrap_init_flags = --namespace=Gst --parent_dir=gstreamermm-plugins-bad
+codegen_srcdir = $(top_srcdir)/tools
+
+
+include $(srcdir)/filelist.am
+include $(top_srcdir)/tools/m4/filelist.am
+include $(top_srcdir)/build/generate-binding.am
diff --git a/gst-plugins-bad/src/filelist.am b/gst-plugins-bad/src/filelist.am
new file mode 100644
index 0000000..4da70c8
--- /dev/null
+++ b/gst-plugins-bad/src/filelist.am
@@ -0,0 +1,16 @@
+## Copyright 2009 The gstreamermm Development Team
+
+#files_defs = \
+# gst.defs \
+# gst_enums.defs \
+# gst_extra_objects.defs \
+# gst_methods.defs \
+# gst_others.defs \
+# gst_signals.defs \
+# gst_vfuncs.defs \
+# gst_docs.xml \
+# gst_docs_override.xml
+
+files_hg = glbasefilter.hg glfilter.hg
+
+files_ccg = $(files_hg:.hg=.ccg)
diff --git a/gstreamer/src/glbasefilter.ccg b/gst-plugins-bad/src/glbasefilter.ccg
similarity index 100%
rename from gstreamer/src/glbasefilter.ccg
rename to gst-plugins-bad/src/glbasefilter.ccg
diff --git a/gstreamer/src/glbasefilter.hg b/gst-plugins-bad/src/glbasefilter.hg
similarity index 93%
rename from gstreamer/src/glbasefilter.hg
rename to gst-plugins-bad/src/glbasefilter.hg
index ea02ace..55e1bf1 100644
--- a/gstreamer/src/glbasefilter.hg
+++ b/gst-plugins-bad/src/glbasefilter.hg
@@ -17,13 +17,18 @@
* Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-_DEFS(gstreamermm,gst)
+_DEFS(gstreamermm-plugins-bad,gst)
#include <gst/gl/gl.h>
#include <gstreamermm/basetransform.h>
namespace Gst
{
+namespace Bad
+{
+
+_GMMPROC_EXTRA_NAMESPACE(Bad)
+
class GLBaseFilter
: public BaseTransform
{
@@ -36,3 +41,4 @@ public:
};
}
+}
diff --git a/gstreamer/src/glfilter.ccg b/gst-plugins-bad/src/glfilter.ccg
similarity index 86%
rename from gstreamer/src/glfilter.ccg
rename to gst-plugins-bad/src/glfilter.ccg
index 87e2795..8cee240 100644
--- a/gstreamer/src/glfilter.ccg
+++ b/gst-plugins-bad/src/glfilter.ccg
@@ -17,22 +17,24 @@
* Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-_PINCLUDE(gstreamermm/private/glbasefilter_p.h)
+_PINCLUDE(gstreamermm-plugins-bad/private/glbasefilter_p.h)
static void Slot_Texture_Operation_gstreamermm_callback(gint param1, gint param2, guint param3, gpointer
stuff)
{
- Gst::GLFilter::SlotTextureOperation* the_slot = static_cast<Gst::GLFilter::SlotTextureOperation*>(stuff);
+ Gst::Bad::GLFilter::SlotTextureOperation* the_slot =
static_cast<Gst::Bad::GLFilter::SlotTextureOperation*>(stuff);
(*the_slot)(param1, param2, param3);
delete the_slot;
}
namespace Gst
{
-
+namespace Bad
+{
void GLFilter::render_to_target(bool resize, GLuint input, GLuint target, const SlotTextureOperation& slot)
{
SlotTextureOperation* slot_copy = new SlotTextureOperation(slot);
gst_gl_filter_render_to_target(gobj(), resize, input, target,
&Slot_Texture_Operation_gstreamermm_callback, slot_copy);
}
+} // namespace Bad
} //namespace Gst
diff --git a/gstreamer/src/glfilter.hg b/gst-plugins-bad/src/glfilter.hg
similarity index 95%
rename from gstreamer/src/glfilter.hg
rename to gst-plugins-bad/src/glfilter.hg
index 76f5d8f..0df6a71 100644
--- a/gstreamer/src/glfilter.hg
+++ b/gst-plugins-bad/src/glfilter.hg
@@ -17,15 +17,20 @@
* Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-_DEFS(gstreamermm,gst)
+_DEFS(gstreamermm-plugins-bad,gst)
#include <gst/gl/gl.h>
-#include <gstreamermm/glbasefilter.h>
+#include <gstreamermm-plugins-bad/glbasefilter.h>
#include <gstreamermm/videoinfo.h>
#include <gstreamermm/buffer.h>
namespace Gst
{
+namespace Bad
+{
+
+_GMMPROC_EXTRA_NAMESPACE(Bad)
+
class GLFilter
: public GLBaseFilter
{
@@ -74,3 +79,4 @@ public:
};
}
+}
diff --git a/gst-plugins-bad/src/gst.defs b/gst-plugins-bad/src/gst.defs
new file mode 100644
index 0000000..e69de29
diff --git a/gstreamer/src/filelist.am b/gstreamer/src/filelist.am
index 7f0feb9..c8cdece 100644
--- a/gstreamer/src/filelist.am
+++ b/gstreamer/src/filelist.am
@@ -163,7 +163,7 @@ files_hg = \
$(plugins_hg)
if ENABLE_GSTREAMERMM_GL
-files_hg += $(gl_files_hg)
+#iles_hg += $(gl_files_hg)
endif
files_ccg = $(files_hg:.hg=.ccg)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]