23245283 Move clutter-gst3 to Userland and update to 3.0.10
authorNiveditha Rau <Niveditha.Rau@Oracle.COM>
Tue, 12 Jul 2016 13:07:31 +0000
changeset 6393 ac4e6528f067
parent 6392 e08951796d20
child 6394 d8fef7edae62
23245283 Move clutter-gst3 to Userland and update to 3.0.10 PSARC/2016/396 GNOME 3 Window Manager Bundle
components/gnome/clutter-gst3/Makefile
components/gnome/clutter-gst3/clutter-gst.p5m
components/gnome/clutter-gst3/depend.mk
components/gnome/clutter-gst3/patches/00-gobject-introspection.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/clutter-gst3/Makefile	Tue Jul 12 13:07:31 2016 +0000
@@ -0,0 +1,115 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
+#
+
+BUILD_BITS =            32_and_64
+# All components using gobject-introspection must be built with gcc as
+# gobject-introspection does not produce correct results when using Studio.
+COMPILER =              gcc
+include ../../../make-rules/shared-macros.mk
+
+COMPONENT_NAME=		clutter-gst
+COMPONENT_VERSION=	3.0.10
+COMPONENT_PROJECT_URL=  http://www.clutter-project.org/
+COMPONENT_ARCHIVE_HASH=	\
+	sha256:2dbdbc3292e92684bbdbf1694c61f6b781f5810e4d79a415dfdee2f7ee42148c
+COMPONENT_BUGDB=        library/clutter
+
+TPNO=			25843
+
+# Requires cogl modules - disable till we get the fixed cogl on build servers
+TEST_TARGET = $(SKIP_TEST)
+
+# Needs gobject-introspection, not available on S11.
+ifeq ($(BUILD_TYPE), evaluation)
+BUILD_32_and_64=
+INSTALL_32_and_64=
+PUBLISH_STAMP=
+endif
+
+include $(WS_MAKE_RULES)/gnome-component.mk
+
+CONFIGURE_OPTIONS += --disable-static
+ifneq ($(MACH), sparc)
+CONFIGURE_OPTIONS += --enable-gl-texture-upload
+endif
+# Required for other components.
+CONFIGURE_OPTIONS += --enable-introspection
+CONFIGURE_OPTIONS += --enable-shared
+CONFIGURE_OPTIONS += --with-pic
+
+# Required due to patches.
+COMPONENT_PREP_ACTION += (cd $(@D); autoreconf -fiv);
+
+# Delete this when build servers are installed with an updated cogl
+COGL_BASE = $(WS_COMPONENTS)/gnome/cogl/build/prototype/$(MACH)
+PKG_CONFIG_PATHS.32 += $(COGL_BASE)/usr/lib/pkgconfig/
+PKG_CONFIG_PATHS.64 += $(COGL_BASE)/usr/lib/$(MACH64)/pkgconfig/
+PKG_CONFIG_PATHS += $(PKG_CONFIG_PATHS.$(BITS))
+
+LD_OPTIONS.32 += -L $(COGL_BASE)/usr/lib
+LD_OPTIONS.64 += -L $(COGL_BASE)/usr/lib/$(MACH64)
+LD_OPTIONS += $(LD_OPTIONS.$(BITS))
+
+CPPFLAGS += -I$(COGL_BASE)/usr/include/cogl
+
+CLUTTER_BASE = $(WS_COMPONENTS)/gnome/clutter/build/prototype/$(MACH)
+PKG_CONFIG_PATHS.32 += $(CLUTTER_BASE)/usr/lib/pkgconfig/
+PKG_CONFIG_PATHS.64 += $(CLUTTER_BASE)/usr/lib/$(MACH64)/pkgconfig/
+PKG_CONFIG_PATHS += $(PKG_CONFIG_PATHS.$(BITS))
+
+LD_OPTIONS.32 += -L $(CLUTTER_BASE)/usr/lib
+LD_OPTIONS.64 += -L $(CLUTTER_BASE)/usr/lib/$(MACH64)
+LD_OPTIONS += $(LD_OPTIONS.$(BITS))
+
+CPPFLAGS += -I$(CLUTTER_BASE)/usr/include/clutter-1.0
+
+COMPONENT_BUILD_ENV  += \
+	XDG_DATA_DIRS="$(COGL_BASE)/usr/share/:$(CLUTTER_BASE)/usr/share/:/usr/share/"
+
+COMPONENT_BUILD_ENV += LD_LIBRARY_PATH_32="$(COGL_BASE)$(USRLIB.$(BITS)):$(CLUTTER_BASE)$(USRLIB.$(BITS)):$(BUILD_DIR_32)/clutter-gst/.libs"
+COMPONENT_BUILD_ENV += LD_LIBRARY_PATH_64="$(COGL_BASE)$(USRLIB.$(BITS)):$(CLUTTER_BASE)$(USRLIB.$(BITS)):$(BUILD_DIR_64)/clutter-gst/.libs"
+
+# Work around pkgdepend bug which doesn't resolve dependencies from
+# the local workspace repo. - 15708323
+DEPENDED += $(WS_TOP)/components/gnome/cogl/build/manifest-$(MACH)-cogl.depend
+DEPENDED += $(WS_TOP)/components/gnome/clutter/build/manifest-$(MACH)-clutter.depend
+
+# Temporary until dependencies are all on build machines
+REQUIRED_PACKAGES += $(shell $(GSED) -n 's/REQUIRED_PACKAGES +=//p' ../cogl/Makefile)
+REQUIRED_PACKAGES += $(shell $(GSED) -n -e '/GSED/d' -e 's/REQUIRED_PACKAGES +=//p' ../clutter/Makefile)
+
+#end Delete
+
+
+REQUIRED_PACKAGES += developer/documentation-tool/gtk-doc
+REQUIRED_PACKAGES += library/desktop/clutter
+REQUIRED_PACKAGES += library/desktop/gdk-pixbuf
+REQUIRED_PACKAGES += library/desktop/gobject/gobject-introspection
+REQUIRED_PACKAGES += library/desktop/gstreamer-1
+REQUIRED_PACKAGES += library/desktop/gstreamer-1/gst-plugins-base
+REQUIRED_PACKAGES += library/glib2
+REQUIRED_PACKAGES += library/graphics/cogl
+REQUIRED_PACKAGES += system/library/math
+REQUIRED_PACKAGES += x11/library/libx11
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/clutter-gst3/clutter-gst.p5m	Tue Jul 12 13:07:31 2016 +0000
@@ -0,0 +1,68 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
+#
+<transform file path=usr.*/man/.+ -> \
+    default mangler.man.stability "pass-through volatile">
+set name=pkg.fmri \
+    value=pkg:/library/desktop/clutter/clutter-gst3@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
+set name=pkg.summary \
+    value="An integration library for using GStreamer with Clutter"
+set name=pkg.description \
+    value="Clutter-Gst is an integration library for using GStreamer with Clutter. It provides a GStreamer sink to upload frames to GL and an actor that implements the ClutterGstPlayer interface using playbin."
+set name=com.oracle.info.description value=$(COMPONENT_NAME)
+set name=com.oracle.info.tpno value=$(TPNO)
+set name=info.classification \
+    value="org.opensolaris.category.2008:Desktop (GNOME)/Libraries"
+set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
+set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
+set name=org.opensolaris.arc-caseid value=PSARC/2016/396
+set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-aspectratio.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-camera-device.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-camera-manager.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-camera.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-content.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-crop.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-enum-types.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-playback.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-player.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-types.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-util.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-version.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst-video-sink.h
+file path=usr/include/clutter-gst-3.0/clutter-gst/clutter-gst.h
+file path=usr/lib/$(MACH64)/girepository-1.0/ClutterGst-3.0.typelib
+file path=usr/lib/$(MACH64)/gstreamer-1.0/libgstclutter-3.0.so
+link path=usr/lib/$(MACH64)/libclutter-gst-3.0.so \
+    target=libclutter-gst-3.0.so.0.10.0
+link path=usr/lib/$(MACH64)/libclutter-gst-3.0.so.0 \
+    target=libclutter-gst-3.0.so.0.10.0
+file path=usr/lib/$(MACH64)/libclutter-gst-3.0.so.0.10.0
+file path=usr/lib/$(MACH64)/pkgconfig/clutter-gst-3.0.pc
+file path=usr/lib/girepository-1.0/ClutterGst-3.0.typelib
+file path=usr/lib/gstreamer-1.0/libgstclutter-3.0.so
+link path=usr/lib/libclutter-gst-3.0.so target=libclutter-gst-3.0.so.0.10.0
+link path=usr/lib/libclutter-gst-3.0.so.0 target=libclutter-gst-3.0.so.0.10.0
+file path=usr/lib/libclutter-gst-3.0.so.0.10.0
+file path=usr/lib/pkgconfig/clutter-gst-3.0.pc
+file path=usr/share/gir-1.0/ClutterGst-3.0.gir
+license COPYING license=LGPLv2.1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/clutter-gst3/depend.mk	Tue Jul 12 13:07:31 2016 +0000
@@ -0,0 +1,1 @@
+gnome/clutter-gst3: gnome/cogl gnome/clutter
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/clutter-gst3/patches/00-gobject-introspection.patch	Tue Jul 12 13:07:31 2016 +0000
@@ -0,0 +1,42 @@
+Ultimately, this should be resolved by using Makefile.introspection.
+
+The patch below a simpler fix that does the minimum necessary to make
+introspection builds work.
+
+XXX file upstream bug
+
+--- clutter-gst-2.0.14/build/autotools/introspection.m4	2014-10-19 04:41:57.000000000 -0700
++++ clutter-gst-2.0.14/build/autotools/introspection.m4	2015-06-02 12:37:14.807600738 -0700
+@@ -49,12 +49,14 @@
+     AC_MSG_RESULT([$found_introspection])
+ 
+     INTROSPECTION_SCANNER=
++    INTROSPECTION_SCANNER_ENV=
+     INTROSPECTION_COMPILER=
+     INTROSPECTION_GENERATE=
+     INTROSPECTION_GIRDIR=
+     INTROSPECTION_TYPELIBDIR=
+     if test "x$found_introspection" = "xyes"; then
+        INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0`
++       INTROSPECTION_SCANNER_ENV='CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" CC="$(CC)"'
+        INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0`
+        INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
+        INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0`
+@@ -64,6 +66,7 @@
+        INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection
+     fi
+     AC_SUBST(INTROSPECTION_SCANNER)
++    AC_SUBST(INTROSPECTION_SCANNER_ENV)
+     AC_SUBST(INTROSPECTION_COMPILER)
+     AC_SUBST(INTROSPECTION_GENERATE)
+     AC_SUBST(INTROSPECTION_GIRDIR)
+--- clutter-gst-2.0.14/clutter-gst/Makefile.am	2015-01-25 07:02:49.000000000 -0800
++++ clutter-gst-2.0.14/clutter-gst/Makefile.am	2015-06-26 13:57:36.932028090 -0700
+@@ -124,6 +124,7 @@
+ ClutterGst-@[email protected]: $(INTROSPECTION_SCANNER) libclutter-gst-@[email protected]
+ 	$(QUIET_GEN) \
+ 		GST_PLUGIN_SYSTEM_PATH_1_0="" GST_PLUGIN_PATH_1_0="" GST_REGISTRY_UPDATE=no DISPLAY="" \
++		$(INTROSPECTION_SCANNER_ENV) \
+ 		$(INTROSPECTION_SCANNER) -v \
+ 		--namespace ClutterGst --nsversion=@CLUTTER_GST_API_VERSION@ \
+ 		$(INCLUDES) \