Revision: 121499 https://trac.macports.org/changeset/121499 Author: devans@macports.org Date: 2014-06-27 08:17:26 -0700 (Fri, 27 Jun 2014) Log Message: ----------- GNOME-3/unstable: nemiver, copy from stable and patch for vte 0.37.2 API changes. Modified Paths: -------------- users/devans/GNOME-3/unstable/dports/gnome/nemiver/Portfile Added Paths: ----------- users/devans/GNOME-3/unstable/dports/gnome/nemiver/ users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-consolidate-gerrorsafeptr-definitions.diff users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-src-uicommon-nmv-terminal.cc.diff users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-vte-2.91-api.diff Modified: users/devans/GNOME-3/unstable/dports/gnome/nemiver/Portfile =================================================================== --- users/devans/GNOME-3/stable/dports/gnome/nemiver/Portfile 2014-06-26 22:14:51 UTC (rev 121488) +++ users/devans/GNOME-3/unstable/dports/gnome/nemiver/Portfile 2014-06-27 15:17:26 UTC (rev 121499) @@ -5,6 +5,7 @@ name nemiver version 0.9.5 +revision 1 license GPL-2 set branch [join [lrange [split ${version} .] 0 1] .] description Standalone graphical debugger for GNOME. @@ -55,6 +56,18 @@ patch-dconf-configure.ac.diff \ patch-gconf-configure.ac.diff +# proposed upstream patches to port to vte-2.91 API +# https://bugzilla.gnome.org/show_bug.cgi?id=730243 + +patchfiles-append patch-consolidate-gerrorsafeptr-definitions.diff \ + patch-vte-2.91-api.diff + +# emulation support now removed from vte, xterm behavior hardcoded +# https://bugzilla.gnome.org/show_bug.cgi?id=728900#c5 +# https://git.gnome.org/browse/vte/commit/src/vte.c?id=4e253be9282829f594c8a55... + +patchfiles-append patch-src-uicommon-nmv-terminal.cc.diff + # update m4/intltool.m4 and autoreconf pre-configure { Added: users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-consolidate-gerrorsafeptr-definitions.diff =================================================================== --- users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-consolidate-gerrorsafeptr-definitions.diff (rev 0) +++ users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-consolidate-gerrorsafeptr-definitions.diff 2014-06-27 15:17:26 UTC (rev 121499) @@ -0,0 +1,248 @@ +From 58b36ceaeb6dcdbcee54d5849b282dd10f9b3f24 Mon Sep 17 00:00:00 2001 +From: Debarshi Ray <debarshir@gnome.org> +Date: Fri, 16 May 2014 14:15:04 +0200 +Subject: [PATCH 1/2] 730243 Consolidate GErrorSafePtr definitions + + * src/common/nmv-error.h: New file. + * src/common/nmv-error.cc: Likewise. + * src/common/Makefile.am: Add nmv-error.[h|cc] to the build + system. + * src/common/nmv-ustring.cc: Remove local copy of GErrorSafePtr. + (wstring_to_ustring): Use GErrorSafePtr from nmv-error.h + instead of local copy. + (ustring_to_wstring): Likewise. + * src/confmgr/nmv-gconf-mgr.cc: Remove local copy of + GErrorSafePtr. +--- + src/common/Makefile.am | 6 +++-- + src/common/nmv-error.cc | 51 +++++++++++++++++++++++++++++++++++++++++++ + src/common/nmv-error.h | 52 ++++++++++++++++++++++++++++++++++++++++++++ + src/common/nmv-ustring.cc | 20 +++-------------- + src/confmgr/nmv-gconf-mgr.cc | 11 +--------- + 5 files changed, 111 insertions(+), 29 deletions(-) + create mode 100644 src/common/nmv-error.cc + create mode 100644 src/common/nmv-error.h + +diff --git a/src/common/Makefile.am b/src/common/Makefile.am +index 074c5bd..9ef837a 100644 +--- src/common/Makefile.am ++++ src/common/Makefile.am +@@ -42,7 +42,8 @@ $(h)/nmv-insert-statement.h \ + $(h)/nmv-delete-statement.h \ + $(h)/nmv-proc-utils.h \ + $(h)/nmv-proc-mgr.h \ +-$(h)/nmv-loc.h ++$(h)/nmv-loc.h \ ++$(h)/nmv-error.h + + libnemivercommon_la_SOURCES= $(headers) \ + $(h)/nmv-ustring.cc \ +@@ -71,7 +72,8 @@ $(h)/nmv-sql-statement.cc \ + $(h)/nmv-insert-statement.cc \ + $(h)/nmv-delete-statement.cc \ + $(h)/nmv-proc-utils.cc \ +-$(h)/nmv-proc-mgr.cc ++$(h)/nmv-proc-mgr.cc \ ++$(h)/nmv-error.cc + + publicheaders_DATA=$(headers) + publicheadersdir=$(NEMIVER_INCLUDE_DIR)/common +diff --git a/src/common/nmv-error.cc b/src/common/nmv-error.cc +new file mode 100644 +index 0000000..aa7a2be +--- /dev/null ++++ src/common/nmv-error.cc +@@ -0,0 +1,51 @@ ++/* -*- Mode: C++; indent-tabs-mode:nil; c-basic-offset: 4-*- */ ++ ++/*Copyright (c) 2014 Red Hat, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a copy of this ++ * software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, ++ * sublicense, and/or sell copies of the Software, and to permit ++ * persons to whom the Software is furnished to do so, ++ * subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in all copies ++ * or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", ++ * WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, ++ * INCLUDING BUT NOT LIMITED TO THE ++ * WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE ++ * AND NONINFRINGEMENT. ++ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, ++ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF ++ * CONTRACT, TORT OR OTHERWISE, ++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE ++ * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ++ * ++ */ ++#include "config.h" ++#include "nmv-error.h" ++ ++NEMIVER_BEGIN_NAMESPACE (nemiver) ++NEMIVER_BEGIN_NAMESPACE (common) ++ ++void ++GErrorRef::operator () (GError *a_error) ++{ ++} ++ ++void ++GErrorUnref::operator () (GError *a_error) ++{ ++ if (a_error) { ++ g_error_free (a_error); ++ } ++} ++ ++NEMIVER_END_NAMESPACE (common) ++NEMIVER_END_NAMESPACE (nemiver) ++ +diff --git a/src/common/nmv-error.h b/src/common/nmv-error.h +new file mode 100644 +index 0000000..0230087 +--- /dev/null ++++ src/common/nmv-error.h +@@ -0,0 +1,52 @@ ++/* -*- Mode: C++; indent-tabs-mode:nil; c-basic-offset: 4-*- */ ++ ++/*Copyright (c) 2014 Red Hat, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a copy of this ++ * software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, ++ * sublicense, and/or sell copies of the Software, and to permit ++ * persons to whom the Software is furnished to do so, ++ * subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in all copies ++ * or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", ++ * WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, ++ * INCLUDING BUT NOT LIMITED TO THE ++ * WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE ++ * AND NONINFRINGEMENT. ++ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, ++ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF ++ * CONTRACT, TORT OR OTHERWISE, ++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE ++ * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ++ * ++ */ ++#ifndef __NMV_ERROR_H__ ++#define __NMV_ERROR_H__ ++ ++#include <glib.h> ++#include "nmv-namespace.h" ++#include "nmv-safe-ptr.h" ++ ++namespace nemiver { ++namespace common { ++ ++struct GErrorRef { ++ void operator () (GError *a_error); ++}; ++ ++struct GErrorUnref { ++ void operator () (GError *a_error); ++}; ++ ++typedef SafePtr<GError, GErrorRef, GErrorUnref> GErrorSafePtr; ++ ++}//end namespace common ++}//end namespace nemiver ++#endif // __NMV_ERROR_H__ +diff --git a/src/common/nmv-ustring.cc b/src/common/nmv-ustring.cc +index f5dfe49..076258c 100644 +--- src/common/nmv-ustring.cc ++++ src/common/nmv-ustring.cc +@@ -30,6 +30,7 @@ + #include "config.h" + #include <cstring> + #include <sstream> ++#include "nmv-error.h" + #include "nmv-ustring.h" + #include "nmv-safe-ptr-utils.h" + #include "nmv-log-stream-utils.h" +@@ -479,21 +480,6 @@ WString::assign (super_type::size_type a_n, gunichar a_c) + return *this; + } + +-struct GErrorRef { +- void operator () (GError *) +- { +- } +-}; +- +-struct GErrorUnref { +- void operator () (GError *a_err) +- { +- if (a_err) { +- g_error_free (a_err); +- } +- } +-}; +- + bool + wstring_to_ustring (const WString &a_wstr, + UString &a_ustr) +@@ -504,7 +490,7 @@ wstring_to_ustring (const WString &a_wstr, + utf8_buf.reset (g_ucs4_to_utf8 (a_wstr.c_str (), + a_wstr.size (), &wstr_len, + &utf8_bytes_len, &err)); +- SafePtr<GError, GErrorRef, GErrorUnref> error; ++ GErrorSafePtr error; + error.reset (err); + if (error) { + LOG_ERROR ("got error conversion error: '" << error->message << "'"); +@@ -531,7 +517,7 @@ ustring_to_wstring (const UString &a_ustr, + &utf8_bytes_len, + &wstr_len, + &err)); +- SafePtr<GError, GErrorRef, GErrorUnref> error; ++ GErrorSafePtr error; + error.reset (err); + if (error) { + LOG_ERROR ("got error conversion error: '" << error->message << "'"); +diff --git a/src/confmgr/nmv-gconf-mgr.cc b/src/confmgr/nmv-gconf-mgr.cc +index fd7ff1c..f0f97ad 100644 +--- src/confmgr/nmv-gconf-mgr.cc ++++ src/confmgr/nmv-gconf-mgr.cc +@@ -24,6 +24,7 @@ + */ + #include <gconf/gconf-client.h> + #include "nmv-i-conf-mgr.h" ++#include "common/nmv-error.h" + #include "common/nmv-ustring.h" + #include "common/nmv-exception.h" + #include "common/nmv-safe-ptr-utils.h" +@@ -92,16 +93,6 @@ public: + + //static const char * NEMIVER_KEY_DIR = "/app/nemiver"; + +-struct GErrorRef { +- void operator () (GError *a_error) {if (a_error) {}} +-}; +- +-struct GErrorUnref { +- void operator () (GError *a_error) {if (a_error) {g_error_free (a_error);}} +-}; +- +-typedef SafePtr<GError, GErrorRef, GErrorUnref> GErrorSafePtr; +- + void + client_notify_func (GConfClient *a_client, + const char* a_key, +-- +1.9.0 + Added: users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-src-uicommon-nmv-terminal.cc.diff =================================================================== --- users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-src-uicommon-nmv-terminal.cc.diff (rev 0) +++ users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-src-uicommon-nmv-terminal.cc.diff 2014-06-27 15:17:26 UTC (rev 121499) @@ -0,0 +1,15 @@ +--- src/uicommon/nmv-terminal.cc.orig 2014-06-27 07:54:24.000000000 -0700 ++++ src/uicommon/nmv-terminal.cc 2014-06-27 07:59:47.000000000 -0700 +@@ -143,7 +143,11 @@ + + vte_terminal_set_scroll_on_output (vte, TRUE); + vte_terminal_set_scrollback_lines (vte, 1000); +- vte_terminal_set_emulation (vte, "xterm"); ++ ++// emulation support now removed from vte, xterm behavior hardcoded ++// https://bugzilla.gnome.org/show_bug.cgi?id=728900#c5 ++// https://git.gnome.org/browse/vte/commit/src/vte.c?id=4e253be9282829f594c8a55... ++// vte_terminal_set_emulation (vte, "xterm"); + + widget = Glib::wrap (w); + THROW_IF_FAIL (widget); Added: users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-vte-2.91-api.diff =================================================================== --- users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-vte-2.91-api.diff (rev 0) +++ users/devans/GNOME-3/unstable/dports/gnome/nemiver/files/patch-vte-2.91-api.diff 2014-06-27 15:17:26 UTC (rev 121499) @@ -0,0 +1,85 @@ +From 09dad74181806895a40e749464f84ccc027b4fe6 Mon Sep 17 00:00:00 2001 +From: Debarshi Ray <debarshir@gnome.org> +Date: Fri, 16 May 2014 14:16:43 +0200 +Subject: [PATCH 2/2] 730243 Port to vte-2.91 API + + * configure.ac: Build against vte-2.91. + * src/uicommon/nmv-terminal (init_body): Use + vte_terminal_set_font instead of + vte_terminal_set_font_from_string. + (init_pty): vte_terminal_set_pty expects a VtePty instead of a + fd. Adjust according to that. +--- + configure.ac | 4 ++-- + src/uicommon/nmv-terminal.cc | 14 ++++++++++++-- + 2 files changed, 14 insertions(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 04f5a26..272acd9 100644 +--- configure.ac ++++ configure.ac +@@ -361,7 +361,7 @@ dnl library dependencies for the nemiver common UI module + DEP_UICOMMON=" gtkmm-3.0 >= $LIBGTKMM_VERSION \ + gtk+-3.0 >= $LIBGTK_VERSION \ + gtksourceviewmm-3.0 >= $LIBGTKSOURCEVIEWMM_VERSION \ +- vte-2.90 >= $LIBVTE_VERSION" ++ vte-2.91 >= $LIBVTE_VERSION" + + PKG_CHECK_MODULES(NEMIVERUICOMMON, $DEP_UICOMMON $DEP_COMMON $DEP_MEMORYVIEW) + NEMIVERUICOMMON_CFLAGS="$NEMIVERUICOMMON_CFLAGS $CPPUNIT_CFLAGS" +@@ -384,7 +384,7 @@ AC_SUBST(NEMIVERWORKBENCH_CFLAGS) + + dnl library dependencies for the nemiver debug perspective plugin + DEP_PERSP="gtksourceviewmm-3.0 >= $LIBGTKSOURCEVIEWMM_VERSION \ +- vte-2.90 >= $LIBVTE_VERSION" ++ vte-2.91 >= $LIBVTE_VERSION" + + PKG_CHECK_MODULES(NEMIVERDBGPERSP, $DEP_UICOMMON $DEP_VFS $DEP_PERSP $DEP_MEMORYVIEW $DEP_DYNAMICLAYOUT) + NEMIVERDBGPERSP_LIBS="$NEMIVERDBGPERSP_LIBS $CPPUNIT_LIBS" +diff --git a/src/uicommon/nmv-terminal.cc b/src/uicommon/nmv-terminal.cc +index 717c094..e7432c1 100644 +--- src/uicommon/nmv-terminal.cc ++++ src/uicommon/nmv-terminal.cc +@@ -48,11 +48,13 @@ + #include <gtkmm/menu.h> + #include <gtkmm/builder.h> + #include <gtkmm/uimanager.h> ++#include <pangomm/fontdescription.h> + #include <vte/vte.h> + #include <glib/gi18n.h> + #include "common/nmv-exception.h" + #include "common/nmv-log-stream-utils.h" + #include "common/nmv-env.h" ++#include "common/nmv-error.h" + #include "nmv-ui-utils.h" + + NEMIVER_BEGIN_NAMESPACE(nemiver) +@@ -136,7 +138,8 @@ struct Terminal::Priv { + THROW_IF_FAIL (vte); + + // Mandatory for vte 0.14 +- vte_terminal_set_font_from_string (vte, "monospace"); ++ Pango::FontDescription font_desc ("monospace"); ++ vte_terminal_set_font (vte, font_desc.gobj()); + + vte_terminal_set_scroll_on_output (vte, TRUE); + vte_terminal_set_scrollback_lines (vte, 1000); +@@ -266,7 +269,14 @@ struct Terminal::Priv { + THROW_IF_FAIL (slave_pty); + THROW_IF_FAIL (master_pty); + +- vte_terminal_set_pty (vte, master_pty); ++ GError *err = 0; ++ VtePty *pty = vte_pty_new_foreign_sync (master_pty, 0, &err); ++ GErrorSafePtr error (error); ++ THROW_IF_FAIL2 (!error, error->message); ++ ++ vte_terminal_set_pty (vte, pty); ++ g_object_unref (pty); ++ + return true; + } + };//end Terminal::Priv +-- +1.9.0 +