commit gtkmm2 for openSUSE:Factory
Hello community, here is the log from the commit of package gtkmm2 for openSUSE:Factory checked in at 2016-03-29 14:27:02 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gtkmm2 (Old) and /work/SRC/openSUSE:Factory/.gtkmm2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "gtkmm2" Changes: -------- --- /work/SRC/openSUSE:Factory/gtkmm2/gtkmm2.changes 2015-05-16 20:07:15.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.gtkmm2.new/gtkmm2.changes 2016-03-29 14:27:03.000000000 +0200 @@ -1,0 +2,16 @@ +Thu Aug 20 20:45:35 UTC 2015 - zaitor@opensuse.org + +- Export CFLAGS="%{optflags} -std=c++11" and CXXFLAGS="%{optflags} + -std=c++11". Fix build with updated MM stack. +- Replace atkmm-devel, cairomm-devel, glibmm2-devel, + libsigc++2-devel and pangomm-devel for pkgconfig(atkmm-1.6), + pkgconfig(cairomm-1.0), pkgconfig(giomm-2.4), + pkgconfig(pangomm-1.4) and pkgconfig(sigc++-2.0) BuildRequires. + +------------------------------------------------------------------- +Thu Jul 23 14:57:14 UTC 2015 - zaitor@opensuse.org + +- Add gtkmm2-new-glibmm-fixes.patch: Add commits from upstream to + support/fix build with new glibmm. + +------------------------------------------------------------------- New: ---- gtkmm2-new-glibmm-fixes.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gtkmm2.spec ++++++ --- /var/tmp/diff_new_pack.UKvYGf/_old 2016-03-29 14:27:04.000000000 +0200 +++ /var/tmp/diff_new_pack.UKvYGf/_new 2016-03-29 14:27:04.000000000 +0200 @@ -26,14 +26,16 @@ Url: http://www.gtkmm.org/ Source: http://download.gnome.org/sources/gtkmm/2.24/%{_name}-%{version}.tar.xz Source99: baselibs.conf -BuildRequires: atkmm-devel -BuildRequires: cairomm-devel +# PATCH-FIX-UPSTREAM gtkmm2-new-glibmm-fixes.patch zaitor@opensuse.org -- Add commits from upstream to support new glibmm. +Patch0: gtkmm2-new-glibmm-fixes.patch BuildRequires: fdupes BuildRequires: gcc-c++ -BuildRequires: glibmm2-devel >= 2.27.93 -BuildRequires: libsigc++2-devel -BuildRequires: pangomm-devel >= 2.27.1 +BuildRequires: pkgconfig(atkmm-1.6) >= 2.22.2 +BuildRequires: pkgconfig(cairomm-1.0) +BuildRequires: pkgconfig(giomm-2.4) >= 2.27.93 BuildRequires: pkgconfig(gtk+-2.0) >= 2.24.0 +BuildRequires: pkgconfig(pangomm-1.4) >= 2.27.1 +BuildRequires: pkgconfig(sigc++-2.0) BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -73,8 +75,11 @@ %prep %setup -q -n %{_name}-%{version} +%patch0 -p1 %build +export CFLAGS="%{optflags} -std=c++11" +export CXXFLAGS="%{optflags} -std=c++11" %configure \ --disable-static make %{?_smp_mflags} gtkmm_docdir=%{_docdir}/%{name}/docs ++++++ gtkmm2-new-glibmm-fixes.patch ++++++
From 185abd365c2898ad77dbb33a099341fa28e5a496 Mon Sep 17 00:00:00 2001 From: Kjell Ahlstedt
Date: Thu, 2 Jul 2015 19:53:16 +0200 Subject: Add #includes needed with glibmm newer than 2.31.0.
* gdk/src/color.hg:
* gdk/src/pixbufanimationiter.hg:
* gdk/src/pixbufformat.hg:
* gdk/src/rectangle.hg:
* gdk/src/rgbcmap.hg:
* gdk/src/types.hg:
* gtk/src/enums.hg:
* gtk/src/main.hg:
* gtk/src/papersize.hg:
* gtk/src/textattributes.hg:
* gtk/src/treemodel.hg: Add individual includes now that gmmproc does not
add #include
From 9d52f886ffe556f9615f98a280d3a036a9ecf28e Mon Sep 17 00:00:00 2001 From: Kjell Ahlstedt
Date: Sun, 5 Jul 2015 15:41:11 +0200 Subject: More fixes to suit newish glibmm.
* gtk/src/entrycompletion.hg: Add a missing double quote in _WRAP_PROPERTY("text_column, int), to avoid a warning from gmmproc 2.41.0 or newer. * gtk/src/printunixdialog.hg: get_selected_printer(): Ref-counting correction. Fix a .->, typo to make the refreturn option actually be used. Necessary with gmmproc 2.29.13 or newer. Discussed in bug #657751, comment 5. diff --git a/gtk/src/entrycompletion.hg b/gtk/src/entrycompletion.hg index 3a32e4f..70c5cc7 100644 --- a/gtk/src/entrycompletion.hg +++ b/gtk/src/entrycompletion.hg @@ -218,7 +218,7 @@ dnl _WRAP_PROPERTY("model", Glib::RefPtrGtk::TreeModel) _WRAP_PROPERTY("minimum_key_length", int) - _WRAP_PROPERTY("text_column, int) + _WRAP_PROPERTY("text_column", int) _WRAP_PROPERTY("inline_completion", bool) _WRAP_PROPERTY("popup_completion", bool) _WRAP_PROPERTY("popup_set_width", bool) diff --git a/gtk/src/printunixdialog.hg b/gtk/src/printunixdialog.hg index 87de89f..c05e5c3 100644 --- a/gtk/src/printunixdialog.hg +++ b/gtk/src/printunixdialog.hg @@ -71,7 +71,7 @@ public: #m4 _CONVERSION(`GtkPrinter*',`Glib::RefPtr<const Printer>',`Glib::wrap($3)') _WRAP_METHOD(Glib::RefPtr<Printer> get_selected_printer(), gtk_print_unix_dialog_get_selected_printer, refreturn) - _WRAP_METHOD(Glib::RefPtr<const Printer> get_selected_printer() const, gtk_print_unix_dialog_get_selected_printer, refreturn. constversion) + _WRAP_METHOD(Glib::RefPtr<const Printer> get_selected_printer() const, gtk_print_unix_dialog_get_selected_printer, refreturn, constversion) void add_custom_tab(const Widget& child, const Glib::ustring& tab_label); _WRAP_METHOD(void add_custom_tab(const Widget& child, const Widget& tab_label), gtk_print_unix_dialog_add_custom_tab) -- cgit v0.10.2 diff --git a/gtk/src/papersize.hg b/gtk/src/papersize.hg index 2e5700d..41fcb3c 100644 --- a/gtk/src/papersize.hg +++ b/gtk/src/papersize.hg @@ -21,7 +21,7 @@ namespace Gtk { #ifndef DOXYGEN_SHOULD_SKIP_THIS -class PaperSizeTraits; +struct PaperSizeTraits; #endif /** Common paper names, from PWG 5101.1-2002 PWG: Standard for Media Standardized Names -- cgit v0.10.2
From c041c14cb425ad552c8a109f7ac94bc4c161bc18 Mon Sep 17 00:00:00 2001 From: Murray Cumming
Date: Fri, 24 Jul 2015 07:41:01 +0200 Subject: Add list.m4 here in gtkmm instead of in glibmm.
It was removed from glibmm in this commit because nothing that's still supported (really, I'm not supporting this branch that I am committing in) still uses it: https://git.gnome.org/browse/glibmm/commit/?id=b4198dd1945ef4a9787b76c1a68e6... diff --git a/tools/m4/list.m4 b/tools/m4/list.m4 new file mode 100644 index 0000000..954beb1 --- /dev/null +++ b/tools/m4/list.m4 @@ -0,0 +1,232 @@ +_PUSH() + +dnl +dnl These variables affect the generation of the list +dnl +define(GP_LIST_HELPER_NAMESPACE,`define(`__LIST_NAMESPACE__',$1)') +define(GP_LIST_ELEM,`define(`__LISTELEM__',`$*')') +define(GP_LIST_ITER,`define(`__LISTITER__',`$*')') +define(GP_LIST_NOINSERT,`define(`__LISTEO__')') + +dnl +dnl GP_LIST(ListName, ParentCppType, ParentCType, ChildCppType, FieldNameC) +dnl +dnl In the .ccg file, you'll need to implement: +dnl iterator insert(iterator position, element_type& e); +dnl +dnl Fieldname assumed to be children if not specified +define(GP_LIST,` +_PUSH() + +define(`__LISTNAME__',$1) +define(`__LISTPARENT__',$2) +define(`__LISTPARENT_G__',$3) +define(`__LISTTYPE__',$4) +define(`__LISTELEM__',const Element) +define(`__LISTITER__',Glib::List_Iterator< __LISTTYPE__ >) +define(`__LIST_NAMESPACE__',$2_Helpers) +#define(`__LISTFIELD__',ifelse($5,,children,$5)) +define(`__LISTFIELD__',$5) + +_SECTION(SECTION_USR) +') + +dnl +dnl GP_LIST_END() +dnl +dnl Closes a list +define(GP_LIST_END,`dnl +_POP() + +class __LISTNAME__ : public Glib::HelperList< __LISTTYPE__, __LISTELEM__, __LISTITER__ > +{ +public: + __LISTNAME__`'(); + explicit __LISTNAME__`'(__LISTPARENT_G__* gparent); + __LISTNAME__`'(const __LISTNAME__& src); + virtual ~__LISTNAME__`'() {} + + __LISTNAME__& operator=(const __LISTNAME__& src); + + typedef Glib::HelperList< __LISTTYPE__, __LISTELEM__, __LISTITER__ > type_base; + + __LISTPARENT_G__* gparent(); + const __LISTPARENT_G__* gparent() const; + + virtual GList*& glist() const; // front of list + + virtual void erase(iterator start, iterator stop); + virtual iterator erase(iterator); //Implented as custom or by LIST_CONTAINER_REMOVE + virtual void remove(const_reference); //Implented as custom or by LIST_CONTAINER_REMOVE + + /// This is order n. (use at own risk) + reference operator[](size_type l) const; + +ifdef(`__LISTEO__',`dnl +protected: + //Hide these because it's read-only: + iterator insert(iterator position, element_type& e); + + inline void pop_front(); + inline void pop_back(); +,`dnl +public: + iterator insert(iterator position, element_type& e); //custom-implemented. + + template <class InputIterator> + inline void insert(iterator position, InputIterator first, InputIterator last) + { + for(;first != last; ++first) + position = insert(position, *first); + } + + inline void push_front(element_type& e) + { insert(begin(), e); } + inline void push_back(element_type& e) + { insert(end(), e); } +')dnl + +_IMPORT(SECTION_USR) +}; + +_PUSH(SECTION_CC) + +namespace __LIST_NAMESPACE__ +{ + +__LISTNAME__::__LISTNAME__`'() +{} + +__LISTNAME__::__LISTNAME__`'(__LISTPARENT_G__* gparent) +: type_base((GObject*)gparent) +{} + +__LISTNAME__::__LISTNAME__`'(const __LISTNAME__& src) +: + type_base(src) +{} + +__LISTNAME__& __LISTNAME__::operator=(const __LISTNAME__& src) +{ + type_base::operator=(src); + return *this; +} + +ifelse(__LISTFIELD__,CUSTOM,`dnl +',`dnl else +GList*& __LISTNAME__::glist() const +{ + return ((__LISTPARENT_G__*)gparent_)->__LISTFIELD__; +} +')dnl endif + +void __LISTNAME__::erase(iterator start, iterator stop) +{ + type_base::erase(start, stop); +} + +__LISTPARENT_G__* __LISTNAME__::gparent() +{ + return (__LISTPARENT_G__*)type_base::gparent(); +} + +const __LISTPARENT_G__* __LISTNAME__::gparent() const +{ + return (__LISTPARENT_G__*)type_base::gparent(); +} + +__LISTNAME__::reference __LISTNAME__::operator[](size_type l) const +{ + return type_base::operator[](l); +} + +} /* namespace __LIST_NAMESPACE__ */ + +undefine(`__LISTNAME__')dnl +undefine(`__LISTTYPE__')dnl +undefine(`__LISTPARENT__')dnl +undefine(`__LISTELEM__')dnl +undefine(`__LISTFIELD__')dnl +_POP() +') + +dnl +dnl GP_LIST_FIND(access_method) +dnl +dnl Defines find(containertype) and find(Widget&) +dnl access_method is the name of method returning a Widget* +define(GP_LIST_FIND,` + iterator find(const_reference c); + iterator find(Widget&); +_PUSH(SECTION_CC) + +namespace __LIST_NAMESPACE__ +{ + +__LISTNAME__::iterator __LISTNAME__::find(const_reference w) +{ + iterator i = begin(); + while (i != end() && (i->ifelse($1,,,$1()->)gobj() != w.ifelse($1,,,$1()->)gobj())) + ++i; + return i; +} + +__LISTNAME__::iterator __LISTNAME__::find(Widget& w) +{ + iterator i = begin(); + while (i != end() && ((GtkWidget*)i->ifelse($1,,,$1()->)gobj() != w.gobj())) + ++i; + return i; +} + +} /* namespace __LIST_NAMESPACE__ */ + +_POP() +') + +dnl +dnl GP_LIST_CONTAINER_REMOVE(access_method) +dnl +dnl Implements remove(const_reference), erase(iterator) +dnl and defines remove(Widget&) +dnl (assumes that the widget uses gtk+ container methods). +dnl access_method is the name of the method returning a Widget* +define(GP_LIST_CONTAINER_REMOVE,` +virtual void remove(Widget& w); //Implented as custom or by LIST_CONTAINER_REMOVE +_PUSH(SECTION_CC) + +namespace __LIST_NAMESPACE__ +{ + +void __LISTNAME__::remove(const_reference child) +{ + gtk_container_remove(GTK_CONTAINER(gparent_), + (GtkWidget*)(child.ifelse($1,,,$1()->)gobj())); +} + +void __LISTNAME__::remove(Widget& widget) +{ + gtk_container_remove(GTK_CONTAINER(gparent_), (GtkWidget*)(widget.gobj())); +} + +__LISTNAME__::iterator __LISTNAME__::erase(iterator position) +{ + //Check that it is a valid iterator, to a real item: + if ( !position.node_|| (position == end()) ) + return end(); + + //Get an iterator the the next item, to return: + iterator next = position; + next++; + + //Use GTK+ C function to remove it, by providing the GtkWidget*: + gtk_container_remove( GTK_CONTAINER(gparent_), (GtkWidget*)(position->ifelse($1,,,$1()->)gobj()) ); + return next; +} + +} /* namespace __LIST_NAMESPACE__ */ + +_POP() +') + +_POP()dnl -- cgit v0.10.2
From 43ad482936a4afa9935dd85b38c395d3d91ec36a Mon Sep 17 00:00:00 2001 From: Murray Cumming
Date: Fri, 24 Jul 2015 07:52:11 +0200 Subject: Fix the previous commit
diff --git a/tools/m4/filelist.am b/tools/m4/filelist.am index 38c37fb..0394790 100644 --- a/tools/m4/filelist.am +++ b/tools/m4/filelist.am @@ -21,4 +21,5 @@ files_codegen_m4 = \ convert.m4 \ convert_gdk.m4 \ convert_gtk.m4 \ - convert_gtkmm.m4 + convert_gtkmm.m4 \ + list.m4 -- cgit v0.10.2
From 5b8f1294844e3639c6be802dda81fa853511bf30 Mon Sep 17 00:00:00 2001 From: Murray Cumming
Date: Fri, 14 Aug 2015 13:50:40 +0200 Subject: configure.ac: Use C++11 if the compiler supports it.
For instance, use --std=c++11 when using g++. This will let gtkmm-2.24 build against newer glibmm versions. Applications will need to use --std=c++11 too if glibmm is a newer version. Of course, you should be using gtkmm 3 anyway. --- configure.ac | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index eef1169..6a72d74 100644 --- a/configure.ac +++ b/configure.ac @@ -31,7 +31,7 @@ AM_MAINTAINER_MODE AC_ARG_VAR([ACLOCAL_FLAGS], [aclocal flags, e.g. -I <macro dir>]) -MM_PREREQ([0.9.5]) +MM_PREREQ([0.9.8]) MM_INIT_MODULE([gdkmm-2.4]) MM_INIT_MODULE([gtkmm-2.4]) @@ -44,6 +44,8 @@ MM_CONFIG_DOCTOOL_DIR([docs]) AC_SUBST([LIBGTKMM_SO_VERSION], [2:0:1]) AC_PROG_CXX +MM_AX_CXX_COMPILE_STDCXX_11([noext],[optional]) + AC_DISABLE_STATIC AC_LIBTOOL_WIN32_DLL AC_PROG_LIBTOOL -- cgit v0.11.2
From 33f4ecd007b2e4bd3511b36add8734b362c80d40 Mon Sep 17 00:00:00 2001 From: Murray Cumming
Date: Fri, 14 Aug 2015 14:25:57 +0200 Subject: Pixbuf: Avoid deprecations warnings that break --enable-warnings=fatal.
Such as during distcheck.
---
gdk/src/pixbuf.ccg | 5 +++++
gdk/src/pixbuf.hg | 3 +++
2 files changed, 8 insertions(+)
diff --git a/gdk/src/pixbuf.ccg b/gdk/src/pixbuf.ccg
index 946d600..f1a19c4 100644
--- a/gdk/src/pixbuf.ccg
+++ b/gdk/src/pixbuf.ccg
@@ -21,6 +21,11 @@
#include
participants (1)
-
root@hilbert.suse.de