[oe] [meta-oe][PATCH] Revert "glibmm: Upgrade to 2.56.0"

Martin Jansa martin.jansa at gmail.com
Mon Jul 30 18:24:29 UTC 2018


On Mon, Jul 30, 2018 at 07:39:46PM +0200, Oleksandr Kravchuk wrote:
> On 30/07/18 18:23, Martin Jansa wrote:
> > On Mon, Jul 30, 2018 at 06:12:23PM +0200, Oleksandr Kravchuk wrote:
> >> sumo branch of poky contains glib v2.54 which makes compilation of this
> >> package fail due to nonexistent functions in the library used by the
> >> C++ bindings.
> > This explanation doesn't make any sense to me.
> >
> > With sumo branch of poky use sumo branch of meta-oe which still has
> > 2.54.1 version.
> 
> Martin -
> 
> I appreciate fast response, but your feedback is very ambiguous and 
> therefore not helpful: which part of my explanation need to be improved? 
> One needs to know if explanation has to be extended or changed 
> completely. You simply repeated statement from my commit message and 
> presented it as something opposite of what I've said. This is what truly 
> doesn't make any sense.
> 
> Let me try to explain it differently: poky has glib version 2.54 in its 
> 'sumo' branch; corresponding branch (sumo) of meta-openembeded has C++ 
> binding for glib version 2.56, which has C++ function wrappers for 
> functions implemented in glib 2.56, which obviously won't compile, since 
> we have glib and headers for it of version 2.54.

This isn't true, meta-openembedded sumo has 2.54.1 version not 2.56 as
you said. Also the subject of your e-mail doesn't have [sumo] in it, so
even if you were right, then it would look like you're trying to get it
reverted in master branch (where it doesn't make any sense) not in sumo
branch.

> If my English is still too poor for you, I propose you checking out sumo 
> branches of poky and open-embedded and trying to build 'glibmm' package.

If you git skills aren't good enough to see what's in sumo branch, then
you can see it here: 
http://git.openembedded.org/meta-openembedded/tree/meta-oe/recipes-core/glib-2.0?h=sumo

Not even in sumo-next branch:
http://git.openembedded.org/meta-openembedded/tree/meta-oe/recipes-core/glib-2.0?h=sumo-next

> SPOILER: result is going to be the following:

Only for people who are mixing incompatible branches..

> 
> | ../../../glibmm-2.56.0/gio/giomm/application.cc: In member function 
> 'void Gio::Application::set_option_context_parameter_string(const 
> Glib::ustring&)':
> | ../../../glibmm-2.56.0/gio/giomm/application.cc:1169:3: error: 
> 'g_application_set_option_context_parameter_string' was not declared in 
> this scope
> |    g_application_set_option_context_parameter_string(gobj(), 
> parameter_string.empty() ? nullptr : parameter_string.c_str());
> |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> | ../../../glibmm-2.56.0/gio/giomm/application.cc:1169:3: note: 
> suggested alternative: 'set_option_context_parameter_string'
> |    g_application_set_option_context_parameter_string(gobj(), 
> parameter_string.empty() ? nullptr : parameter_string.c_str());
> |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> |    set_option_context_parameter_string
> | ../../../glibmm-2.56.0/gio/giomm/application.cc: In member function 
> 'void Gio::Application::set_option_context_summary(const Glib::ustring&)':
> | ../../../glibmm-2.56.0/gio/giomm/application.cc:1174:3: error: 
> 'g_application_set_option_context_summary' was not declared in this scope
> |    g_application_set_option_context_summary(gobj(), summary.empty() ? 
> nullptr : summary.c_str());
> |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> | ../../../glibmm-2.56.0/gio/giomm/application.cc:1174:3: note: 
> suggested alternative: 'set_option_context_summary'
> |    g_application_set_option_context_summary(gobj(), summary.empty() ? 
> nullptr : summary.c_str());
> |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> |    set_option_context_summary
> | ../../../glibmm-2.56.0/gio/giomm/application.cc: In member function 
> 'void Gio::Application::set_option_context_description(const 
> Glib::ustring&)':
> | ../../../glibmm-2.56.0/gio/giomm/application.cc:1179:3: error: 
> 'g_application_set_option_context_description' was not declared in this 
> scope
> |    g_application_set_option_context_description(gobj(), 
> description.empty() ? nullptr : description.c_str());
> |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> | ../../../glibmm-2.56.0/gio/giomm/application.cc:1179:3: note: 
> suggested alternative: 'set_option_context_description'
> |    g_application_set_option_context_description(gobj(), 
> description.empty() ? nullptr : description.c_str());
> |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> |    set_option_context_description
> 
> 
> Let us check the first function 
> (https://developer.gnome.org/gio/stable/GApplication.html#g-application-set-option-context-parameter-string) 
> and find out that it was introduced in 2.56.
> 
> >
> >> This reverts commit acfba081bbe49fd9dccbf12be6535d5342c6d747.
> >> ---
> >>   .../0001-Glib-Threads-Private-Fix-gobj.patch  | 40 +++++++++++++++++++
> >>   .../{glibmm_2.56.0.bb => glibmm_2.54.1.bb}    |  5 ++-
> >>   2 files changed, 43 insertions(+), 2 deletions(-)
> >>   create mode 100644 meta-oe/recipes-core/glib-2.0/glibmm/0001-Glib-Threads-Private-Fix-gobj.patch
> >>   rename meta-oe/recipes-core/glib-2.0/{glibmm_2.56.0.bb => glibmm_2.54.1.bb} (86%)
> >>
> >> diff --git a/meta-oe/recipes-core/glib-2.0/glibmm/0001-Glib-Threads-Private-Fix-gobj.patch b/meta-oe/recipes-core/glib-2.0/glibmm/0001-Glib-Threads-Private-Fix-gobj.patch
> >> new file mode 100644
> >> index 000000000..7899022f1
> >> --- /dev/null
> >> +++ b/meta-oe/recipes-core/glib-2.0/glibmm/0001-Glib-Threads-Private-Fix-gobj.patch
> >> @@ -0,0 +1,40 @@
> >> +From 838fe84c2ddcc9af51c34f751defbf3dd0ba8a06 Mon Sep 17 00:00:00 2001
> >> +From: Kjell Ahlstedt <kjellahlstedt at gmail.com>
> >> +Date: Wed, 20 Dec 2017 20:00:32 +0100
> >> +Subject: [PATCH] Glib::Threads::Private: Fix gobj()
> >> +
> >> +Bug 791711
> >> +
> >> +Signed-off-by: Khem Raj <raj.khem at gmail.com>
> >> +---
> >> +Upstream-Status: Backport [https://github.com/GNOME/glibmm/commit/37d57ae9572b7d74aa385a30313eceae7f2d3fce]
> >> + glib/glibmm/threads.h | 2 +-
> >> + glib/src/threads.hg   | 2 +-
> >> + 2 files changed, 2 insertions(+), 2 deletions(-)
> >> +
> >> +diff --git a/glib/glibmm/threads.h b/glib/glibmm/threads.h
> >> +index f7e2b82a..2c0cbe8c 100644
> >> +--- a/glib/glibmm/threads.h
> >> ++++ b/glib/glibmm/threads.h
> >> +@@ -657,7 +657,7 @@ public:
> >> +    */
> >> +   inline void replace(T* data);
> >> +
> >> +-  GPrivate* gobj() { return gobject_; }
> >> ++  GPrivate* gobj() { return &gobject_; }
> >> +
> >> + private:
> >> +   GPrivate gobject_;
> >> +diff --git a/glib/src/threads.hg b/glib/src/threads.hg
> >> +index 86d7a17b..c82a6130 100644
> >> +--- a/glib/src/threads.hg
> >> ++++ b/glib/src/threads.hg
> >> +@@ -628,7 +628,7 @@ public:
> >> +    */
> >> +   inline void replace(T* data);
> >> +
> >> +-  GPrivate* gobj() { return gobject_; }
> >> ++  GPrivate* gobj() { return &gobject_; }
> >> +
> >> + private:
> >> +   GPrivate gobject_;
> >> diff --git a/meta-oe/recipes-core/glib-2.0/glibmm_2.56.0.bb b/meta-oe/recipes-core/glib-2.0/glibmm_2.54.1.bb
> >> similarity index 86%
> >> rename from meta-oe/recipes-core/glib-2.0/glibmm_2.56.0.bb
> >> rename to meta-oe/recipes-core/glib-2.0/glibmm_2.54.1.bb
> >> index 2f048d2f6..4706432ab 100644
> >> --- a/meta-oe/recipes-core/glib-2.0/glibmm_2.56.0.bb
> >> +++ b/meta-oe/recipes-core/glib-2.0/glibmm_2.54.1.bb
> >> @@ -13,9 +13,10 @@ SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
> >>   SRC_URI = " \
> >>       ftp://ftp.gnome.org/pub/GNOME/sources/glibmm/${SHRT_VER}/glibmm-${PV}.tar.xz \
> >>       file://remove-examples.patch \
> >> +    file://0001-Glib-Threads-Private-Fix-gobj.patch \
> >>   "
> >> -SRC_URI[md5sum] = "5aa7a60084fe3e01d746c96f4a115302"
> >> -SRC_URI[sha256sum] = "6e74fcba0d245451c58fc8a196e9d103789bc510e1eee1a9b1e816c5209e79a9"
> >> +SRC_URI[md5sum] = "dee5ebe309f5976c3dacfcf5c43a062b"
> >> +SRC_URI[sha256sum] = "7cc28c732b04d70ed34f0c923543129083cfb90580ea4a2b4be5b38802bf6a4a"
> >>   
> >>   do_install_append() {
> >>       install -d ${D}${datadir}/glibmm-2.4
> >> -- 
> >> 2.17.1
> >>
> >> -- 
> >> _______________________________________________
> >> Openembedded-devel mailing list
> >> Openembedded-devel at lists.openembedded.org
> >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> 

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20180730/18a47d88/attachment-0002.sig>


More information about the Openembedded-devel mailing list