23245647 Deliver gupnp 0.20.14 in Solaris
authorNiveditha Rau <Niveditha.Rau@Oracle.COM>
Sat, 25 Jun 2016 00:38:10 +0000
changeset 6329 f29ce145d6db
parent 6328 c73673299cc7
child 6330 1b6d90edded0
23245647 Deliver gupnp 0.20.14 in Solaris PSARC/2016/387 GUPnP
components/gnome/gupnp/Makefile
components/gnome/gupnp/gupnp.p5m
components/gnome/gupnp/patches/01-largefile-warnings.patch
components/gnome/gupnp/patches/02-python-ver.patch
components/gnome/gupnp/patches/03-uuid-pkgconfig.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/gupnp/Makefile	Sat Jun 25 00:38:10 2016 +0000
@@ -0,0 +1,79 @@
+#
+# 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 =            64_and_32
+# 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=		gupnp
+COMPONENT_VERSION=	0.20.14
+COMPONENT_PROJECT_URL=  https://wiki.gnome.org/Projects/GUPnP
+COMPONENT_ARCHIVE_HASH= \
+	sha256:77ffb940ba77c4a6426d09d41004c75d92652dcbde86c84ac1c847dbd9ad59bd
+COMPONENT_BUGDB=        gnome/libraries
+
+TPNO=			25395
+
+# Tests don't work on Solaris yet
+TEST_TARGET = $(SKIP_TEST)
+
+# Contains a single Python script written for Python 2.x/3.x; prefer 3.4.
+PYTHON=3.4
+PYTHON_VERSIONS=3.4
+
+# Needs gobject-introspection and gssdp, 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
+
+# uuid detection fails due to Solaris bug 15586738.
+CONFIGURE_OPTIONS += ac_cv_search_uuid_to_string=generic
+CONFIGURE_ENV += UUID_CFLAGS="-I/usr/include/uuid"
+CONFIGURE_ENV.32 += UUID_LIBS="-luuid"
+CONFIGURE_ENV.64 += UUID_LIBS="-L/usr/lib/$(MACH64) -luuid"
+
+CONFIGURE_OPTIONS += --disable-static
+# Required for documentation.
+CONFIGURE_OPTIONS += --enable-gtk-doc
+# Required for other components.
+CONFIGURE_OPTIONS += --enable-introspection
+CONFIGURE_OPTIONS += --enable-largefile
+CONFIGURE_OPTIONS += --enable-shared
+CONFIGURE_OPTIONS += --with-pic
+
+REQUIRED_PACKAGES += developer/documentation-tool/gtk-doc
+REQUIRED_PACKAGES += developer/vala
+REQUIRED_PACKAGES += library/desktop/gobject/gobject-introspection
+REQUIRED_PACKAGES += library/glib2
+REQUIRED_PACKAGES += library/desktop/gssdp
+REQUIRED_PACKAGES += library/libsoup
+REQUIRED_PACKAGES += library/libxml2
+REQUIRED_PACKAGES += runtime/python-34
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/gupnp/gupnp.p5m	Sat Jun 25 00:38:10 2016 +0000
@@ -0,0 +1,121 @@
+#
+# 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/gupnp@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
+set name=pkg.summary \
+    value="An elegant, object-oriented framework for creating UPnP devices and control points"
+set name=pkg.description \
+    value="GUPnP is an elegant, object-oriented open source framework for creating UPnP devices and control points, written in C using GObject and libsoup. The GUPnP API is intended to be easy to use, efficient and flexible. It provides the same set of features as libupnp, but shields the developer from most of UPnP's internals."
+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/387
+set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
+file path=usr/bin/gupnp-binding-tool
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-acl.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-context-manager.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-context.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-control-point.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-device-info.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-device-proxy.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-device.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-error.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-resource-factory.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-root-device.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-service-info.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-service-introspection.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-service-proxy.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-service.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-types.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-uuid.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-white-list.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp-xml-doc.h
+file path=usr/include/gupnp-1.0/libgupnp/gupnp.h
+file path=usr/lib/$(MACH64)/girepository-1.0/GUPnP-1.0.typelib
+link path=usr/lib/$(MACH64)/libgupnp-1.0.so target=libgupnp-1.0.so.4.0.0
+link path=usr/lib/$(MACH64)/libgupnp-1.0.so.4 target=libgupnp-1.0.so.4.0.0
+file path=usr/lib/$(MACH64)/libgupnp-1.0.so.4.0.0
+file path=usr/lib/$(MACH64)/pkgconfig/gupnp-1.0.pc
+file path=usr/lib/girepository-1.0/GUPnP-1.0.typelib
+link path=usr/lib/libgupnp-1.0.so target=libgupnp-1.0.so.4.0.0
+link path=usr/lib/libgupnp-1.0.so.4 target=libgupnp-1.0.so.4.0.0
+file path=usr/lib/libgupnp-1.0.so.4.0.0
+file path=usr/lib/pkgconfig/gupnp-1.0.pc
+file path=usr/share/gir-1.0/GUPnP-1.0.gir
+file path=usr/share/gtk-doc/html/gupnp/GUPnPAcl.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPContext.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPContextManager.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPControlPoint.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPDevice.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPDeviceInfo.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPDeviceProxy.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPResourceFactory.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPRootDevice.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPService.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPServiceInfo.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPServiceProxy.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPWhiteList.html
+file path=usr/share/gtk-doc/html/gupnp/GUPnPXMLDoc.html
+file path=usr/share/gtk-doc/html/gupnp/api-context.html
+file path=usr/share/gtk-doc/html/gupnp/api-device-control.html
+file path=usr/share/gtk-doc/html/gupnp/api-device-impl.html
+file path=usr/share/gtk-doc/html/gupnp/api-device-info.html
+file path=usr/share/gtk-doc/html/gupnp/api-tools.html
+file path=usr/share/gtk-doc/html/gupnp/api-utility.html
+file path=usr/share/gtk-doc/html/gupnp/api.html
+file path=usr/share/gtk-doc/html/gupnp/client-tutorial.html
+file path=usr/share/gtk-doc/html/gupnp/glossary.html
+file path=usr/share/gtk-doc/html/gupnp/gupnp-Error-codes.html
+file path=usr/share/gtk-doc/html/gupnp/gupnp-Special-UPnP-types.html
+file path=usr/share/gtk-doc/html/gupnp/gupnp-Utility-functions.html
+file path=usr/share/gtk-doc/html/gupnp/gupnp-binding-tool.html
+file path=usr/share/gtk-doc/html/gupnp/gupnp-gupnp-service-introspection.html
+file path=usr/share/gtk-doc/html/gupnp/gupnp.devhelp2
+file path=usr/share/gtk-doc/html/gupnp/home.png
+file path=usr/share/gtk-doc/html/gupnp/index.html
+file path=usr/share/gtk-doc/html/gupnp/index.sgml
+file path=usr/share/gtk-doc/html/gupnp/ix01.html
+file path=usr/share/gtk-doc/html/gupnp/left-insensitive.png
+file path=usr/share/gtk-doc/html/gupnp/left.png
+file path=usr/share/gtk-doc/html/gupnp/overview.html
+file path=usr/share/gtk-doc/html/gupnp/right-insensitive.png
+file path=usr/share/gtk-doc/html/gupnp/right.png
+file path=usr/share/gtk-doc/html/gupnp/schemas-device.html
+file path=usr/share/gtk-doc/html/gupnp/schemas-service.html
+file path=usr/share/gtk-doc/html/gupnp/schemas.html
+file path=usr/share/gtk-doc/html/gupnp/server-tutorial.html
+file path=usr/share/gtk-doc/html/gupnp/style.css
+file path=usr/share/gtk-doc/html/gupnp/tutorial.html
+file path=usr/share/gtk-doc/html/gupnp/up-insensitive.png
+file path=usr/share/gtk-doc/html/gupnp/up.png
+file path=usr/share/vala/vapi/gupnp-1.0.deps
+file path=usr/share/vala/vapi/gupnp-1.0.vapi
+license COPYING license=LGPLv2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/gupnp/patches/01-largefile-warnings.patch	Sat Jun 25 00:38:10 2016 +0000
@@ -0,0 +1,32 @@
+Ensure config.h is included first for files that depend on
+_FILE_OFFSET_BITS so that no later redefinitions occur which cause compiler
+warnings and potentially incorrect program behaviour.
+
+XXX file upstream bug
+
+--- gupnp-0.20.14/libgupnp/gupnp-service.c	2015-05-10 07:38:52.000000000 -0700
++++ gupnp-0.20.14/libgupnp/gupnp-service.c	2015-07-05 21:02:13.767428372 -0700
+@@ -27,6 +27,10 @@
+  * notification. #GUPnPService implements the #GUPnPServiceInfo interface.
+  */
+ 
++#ifdef HAVE_CONFIG_H
++#   include <config.h>
++#endif
++
+ #include <gobject/gvaluecollector.h>
+ #include <gmodule.h>
+ #include <libsoup/soup-date.h>
+--- gupnp-0.20.14/libgupnp/guul.c	2015-04-06 04:45:43.000000000 -0700
++++ gupnp-0.20.14/libgupnp/guul.c	2015-07-05 21:05:13.595134623 -0700
+@@ -17,6 +17,10 @@
+  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  */
+ 
++#ifdef HAVE_CONFIG_H
++#   include <config.h>
++#endif
++
+ #include <stdlib.h>
+ 
+ #include <guul.h>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/gupnp/patches/02-python-ver.patch	Sat Jun 25 00:38:10 2016 +0000
@@ -0,0 +1,18 @@
+Upstream build process doesn't set an explicit version of Python because script
+works for Python 2.x and 3.x.  But Solaris requires an explicit one, so prefer
+3.4.
+
+configure should detect Python version and allow builder to override
+detection via --with-python or a PYTHON environment variable, and then the
+build process should replace the first line of the script instead.
+
+XXX file upstream bug
+
+--- gupnp-0.20.14/tools/gupnp-binding-tool	2015-03-30 10:49:17.000000000 -0700
++++ gupnp-0.20.14/tools/gupnp-binding-tool	2015-07-05 21:13:08.428030160 -0700
+@@ -1,4 +1,4 @@
+-#! /usr/bin/python
++#! /usr/bin/python3.4
+ 
+ # Copyright (C) 2008 OpenedHand Ltd
+ # Copyright (C) 2008 Intel Corporation
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/gupnp/patches/03-uuid-pkgconfig.patch	Sat Jun 25 00:38:10 2016 +0000
@@ -0,0 +1,29 @@
+Our libuuid doesn't provide a pkg-config file yet (CR 15586738), so add
+necessary flags and remove from pkg-config declarations. 
+
+Not appropriate for upstream.
+
+--- gupnp-0.20.14/gupnp-1.0-uninstalled.pc.in	2015-03-30 10:49:16.000000000 -0700
++++ gupnp-0.20.14/gupnp-1.0-uninstalled.pc.in	2015-07-05 21:55:15.264943555 -0700
+@@ -6,6 +6,6 @@
+ Name: gupnp-1.0
+ Description: GObject-based UPnP library
+ Version: @VERSION@
+-Libs: ${libdir}/libgupnp-1.0.la
+-Cflags: -I${includedir}
+-Requires.private: gssdp-1.0 libxml-2.0 libsoup-2.4 @UUID_LIBS@
++Libs: ${libdir}/libgupnp-1.0.la -luuid
++Cflags: -I${includedir} -I/usr/include/uuid
++Requires.private: gssdp-1.0 libxml-2.0 libsoup-2.4
+--- gupnp-0.20.14/gupnp-1.0.pc.in	2015-03-30 10:49:16.000000000 -0700
++++ gupnp-0.20.14/gupnp-1.0.pc.in	2015-07-05 21:55:46.184924124 -0700
+@@ -6,6 +6,6 @@
+ Name: gupnp-1.0
+ Description: GObject-based UPnP library
+ Version: @VERSION@
+-Libs: -L${libdir} -lgupnp-1.0
+-Cflags: -I${includedir}/gupnp-1.0
+-Requires.private: gssdp-1.0 libxml-2.0 libsoup-2.4 @UUID_LIBS@
++Libs: -L${libdir} -lgupnp-1.0 -luuid
++Cflags: -I${includedir}/gupnp-1.0 -I/usr/include/uuid
++Requires.private: gssdp-1.0 libxml-2.0 libsoup-2.4