23245309 Move gnome-session to Userland and update to 3.18.1.2
authorNiveditha Rau <Niveditha.Rau@Oracle.COM>
Fri, 28 Oct 2016 14:58:08 -0700
changeset 7190 995b487a3de3
parent 7189 ccba3d77aa53
child 7191 001012c619ce
23245309 Move gnome-session to Userland and update to 3.18.1.2 18322887 gnome-session should be built with x11/library/xtrans PSARC/2016/323 GNOME Login and Session Management
components/gnome/gnome-session/Makefile
components/gnome/gnome-session/gnome-session.p5m
components/gnome/gnome-session/patches/01-backtrace.patch
components/gnome/gnome-session/patches/02-gcc4.patch
components/gnome/gnome-session/patches/03-rpmatch.patch
components/meta-packages/incorporation-cache
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/gnome-session/Makefile	Fri Oct 28 14:58:08 2016 -0700
@@ -0,0 +1,83 @@
+#
+# 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
+COMPILER=		gcc
+include ../../../make-rules/shared-macros.mk
+
+COMPONENT_NAME=		gnome-session
+COMPONENT_VERSION=	3.18.1.2
+COMPONENT_PROJECT_URL=	https://wiki.gnome.org/Projects/SessionManagement
+COMPONENT_ARCHIVE_HASH= \
+	sha256:b37d823d57ff2e3057401a426279954699cfe1e44e59a4cbdd941687ff928a45
+COMPONENT_BUGDB=	gnome/session
+COMPONENT_ARCHIVE_URL=  http://ftp.gnome.org/pub/GNOME/sources/$(COMPONENT_NAME)/3.18/$(COMPONENT_ARCHIVE)
+
+TPNO=			27163
+
+TEST_TARGET = $(NO_TESTS)
+
+# Needs updated glib2, not available on S11.
+include $(WS_MAKE_RULES)/no-evaluation.mk
+
+include $(WS_MAKE_RULES)/gnome-component.mk
+
+# Use xdg autostart instead of gconf-based autostart; gconf is obsolete and has
+# been replaced by dconf.
+CONFIGURE_OPTIONS += --disable-gconf
+# Linux-specific.
+CONFIGURE_OPTIONS += --disable-systemd
+CONFIGURE_OPTIONS += --disable-static
+CONFIGURE_OPTIONS += --libexecdir=$(USRLIBDIR)
+# ConsoleKit is deprecated; need to figure out long-term solution with
+# upstream.
+CONFIGURE_OPTIONS += --enable-consolekit
+CONFIGURE_OPTIONS += --enable-docbook-docs
+CONFIGURE_OPTIONS += --enable-ipv6
+CONFIGURE_OPTIONS += --enable-man
+CONFIGURE_OPTIONS += --enable-shared
+CONFIGURE_OPTIONS += --with-pic
+CONFIGURE_OPTIONS += --with-xtrans
+
+# Required due to patches.
+COMPONENT_PREP_ACTION += (cd $(@D); autoreconf -fiv);
+
+# Assumes GNU msgfmt, xgettext, tail, etc. are first in PATH.
+CONFIGURE_ENV += PATH=$(GNUBIN):$(PATH)
+COMPONENT_BUILD_ENV += PATH=$(GNUBIN):$(PATH)
+
+REQUIRED_PACKAGES += library/desktop/gtk3
+REQUIRED_PACKAGES += library/glib2
+REQUIRED_PACKAGES += library/gnome/gnome-desktop
+REQUIRED_PACKAGES += library/json-glib
+REQUIRED_PACKAGES += library/libxslt
+REQUIRED_PACKAGES += library/xdg/consolekit
+REQUIRED_PACKAGES += service/opengl/ogl-select
+REQUIRED_PACKAGES += system/library/libdbus
+REQUIRED_PACKAGES += system/library/libdbus-glib
+REQUIRED_PACKAGES += x11/library/libice
+REQUIRED_PACKAGES += x11/library/libsm
+REQUIRED_PACKAGES += x11/library/libx11
+REQUIRED_PACKAGES += x11/library/libxcomposite
+REQUIRED_PACKAGES += x11/library/mesa
+REQUIRED_PACKAGES += x11/library/xtrans
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/gnome-session/gnome-session.p5m	Fri Oct 28 14:58:08 2016 -0700
@@ -0,0 +1,177 @@
+#
+# 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:/gnome/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
+set name=pkg.summary value="GNOME Session Manager"
+# pkgdepend needs help to follow the runtime generated symlinks to libGL
+set name=pkg.depend.runpath \
+    value=$PKGDEPEND_RUNPATH:usr/lib/mesa:usr/lib/mesa/$(MACH64)
+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)/Sessions"
+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/323
+set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
+file path=usr/bin/gnome-session
+file path=usr/bin/gnome-session-inhibit
+file path=usr/bin/gnome-session-quit
+file path=usr/lib/gnome-session-binary mode=0555
+file path=usr/lib/gnome-session-check-accelerated mode=0555
+file path=usr/lib/gnome-session-check-accelerated-helper mode=0555
+file path=usr/lib/gnome-session-failed mode=0555
+file path=usr/share/GConf/gsettings/gnome-session.convert
+file path=usr/share/doc/gnome-session/dbus/gnome-session.html
+file path=usr/share/glib-2.0/schemas/org.gnome.SessionManager.gschema.xml
+file path=usr/share/gnome-session/hardware-compatibility
+file path=usr/share/gnome-session/session-properties.ui
+file path=usr/share/gnome-session/sessions/gnome-dummy.session
+file path=usr/share/gnome-session/sessions/gnome-wayland.session
+file path=usr/share/gnome-session/sessions/gnome.session
+file path=usr/share/icons/hicolor/16x16/apps/session-properties.png
+file path=usr/share/icons/hicolor/22x22/apps/session-properties.png
+file path=usr/share/icons/hicolor/24x24/apps/session-properties.png
+file path=usr/share/icons/hicolor/32x32/apps/session-properties.png
+file path=usr/share/icons/hicolor/48x48/apps/session-properties.png
+file path=usr/share/icons/hicolor/scalable/apps/session-properties.svg
+file path=usr/share/locale/af/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/am/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/an/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ar/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/as/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ast/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/az/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/be/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/[email protected]/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/bg/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/bn/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/bn_IN/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/br/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/bs/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ca/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/[email protected]/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/crh/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/cs/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/csb/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/cy/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/da/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/de/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/dz/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/el/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/[email protected]/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/en_CA/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/en_GB/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/eo/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/es/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/et/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/eu/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/fa/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/fi/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/fr/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/fur/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/fy/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ga/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/gd/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/gl/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/gu/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ha/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/he/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/hi/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/hr/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/hu/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/hy/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/id/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ig/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/is/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/it/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ja/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ka/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/kk/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/km/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/kn/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ko/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ku/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/lt/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/lv/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/mai/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/mg/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/mi/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/mk/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ml/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/mn/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/mr/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ms/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/nb/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/nds/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ne/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/nl/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/nn/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/nso/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/oc/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/or/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/pa/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/pl/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ps/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/pt/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/pt_BR/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ro/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ru/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/rw/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/si/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/sk/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/sl/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/sq/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/sr/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/[email protected]/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/sv/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ta/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/te/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/tg/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/th/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/tk/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/tr/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/ug/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/uk/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/uz/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/[email protected]/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/vi/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/wa/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/xh/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/yo/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/zh_CN/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/zh_HK/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/zh_TW/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/locale/zu/LC_MESSAGES/gnome-session-3.0.mo
+file path=usr/share/man/man1/gnome-session-inhibit.1
+file path=usr/share/man/man1/gnome-session-quit.1
+file path=usr/share/man/man1/gnome-session.1
+file path=usr/share/wayland-sessions/gnome-wayland.desktop
+file path=usr/share/xsessions/gnome.desktop
+license COPYING license=GPLv2
+depend type=require fmri=service/opengl/ogl-select
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/gnome-session/patches/01-backtrace.patch	Fri Oct 28 14:58:08 2016 -0700
@@ -0,0 +1,20 @@
+Solaris provides backtrace via libc directly, so use AC_SEARCH_LIBS instead
+for a simpler way of finding this function.
+
+Need to file upstream bug; appropriate as-is
+--- gnome-session-3.16.0/configure.ac	2015-03-23 10:27:18.000000000 -0700
++++ gnome-session-3.16.0/configure.ac	2015-07-06 22:30:31.155697361 -0700
[email protected]@ -296,12 +296,7 @@
+ dnl ====================================================================
+ 
+ AC_CHECK_HEADERS(execinfo.h)
+-AC_CHECK_LIB(execinfo, backtrace, [have_backtrace="yes"], [have_backtrace="no"])
+-EXECINFO_LIBS=""
+-if test "x$have_backtrace" = "xyes"; then
+-        EXECINFO_LIBS="-lexecinfo"
+-fi
+-AC_SUBST(EXECINFO_LIBS)
++AC_SEARCH_LIBS([backtrace], [execinfo], [have_backtrace="yes"], [have_backtrace="no"])
+ 
+ dnl ====================================================================
+ dnl Check for X transport interface - allows to disable ICE Transports
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/gnome-session/patches/02-gcc4.patch	Fri Oct 28 14:58:08 2016 -0700
@@ -0,0 +1,16 @@
+Warnings are treated as fatal when building gnome-session, so this causes
+an error when building with gcc as pid_t and int are not the same type.
+
+Need to file upstream bug
+
+--- gnome-session-3.16.0/gnome-session/gsm-dbus-client.c	2014-12-12 07:23:26.000000000 -0800
++++ gnome-session-3.16.0/gnome-session/gsm-dbus-client.c	2015-07-06 22:48:37.709502671 -0700
[email protected]@ -208,7 +208,7 @@
+         retval = TRUE;
+ 
+         g_debug ("uid = %d", uid);
+-        g_debug ("pid = %d", pid);
++        g_debug ("pid = %d", (int) pid);
+ 
+ out:
+         g_clear_pointer (&uid_variant, (GDestroyNotify) g_variant_unref);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnome/gnome-session/patches/03-rpmatch.patch	Fri Oct 28 14:58:08 2016 -0700
@@ -0,0 +1,17 @@
+Linux / FreeBSD have a convenience function to determining whether there
+is a local-specific "positive" value in a variable (rpmatch).  Solaris
+does not have this.
+
+Need to file a Solaris bug?
+
+--- gnome-session-3.16.0/gnome-session/main.c	2015-02-17 11:53:01.000000000 -0800
++++ gnome-session-3.16.0/gnome-session/main.c	2015-07-06 22:49:12.668481062 -0700
[email protected]@ -260,7 +260,7 @@
+ 
+         debug_string = g_getenv ("GNOME_SESSION_DEBUG");
+         if (debug_string != NULL) {
+-                debug = rpmatch (debug_string) == TRUE || atoi (debug_string) == 1;
++                debug = atoi (debug_string) == 1;
+         }
+ 
+         error = NULL;
--- a/components/meta-packages/incorporation-cache	Thu Sep 15 00:04:46 2016 -0700
+++ b/components/meta-packages/incorporation-cache	Fri Oct 28 14:58:08 2016 -0700
@@ -47,7 +47,6 @@
 consolidation/desktop/gnome-incorporation:gnome/config/gconf/[email protected]
 consolidation/desktop/gnome-incorporation:gnome/config/[email protected]
 consolidation/desktop/gnome-incorporation:gnome/file-manager/[email protected]
-consolidation/desktop/gnome-incorporation:gnome/[email protected]
 consolidation/desktop/gnome-incorporation:gnome/speech/[email protected]
 consolidation/desktop/gnome-incorporation:gnome/theme/[email protected]
 consolidation/desktop/gnome-incorporation:gnome/theme/[email protected]