Re: Boost updated to 1.58.0 in rawhide and f23

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2015-07-23 at 13:39 -0700, Adam Williamson wrote:
> On Thu, 2015-07-23 at 19:55 +0100, Jonathan Wakely wrote:
> > On 23/07/15 14:27 +0200, David Tardon wrote:
> > > Hi,
> > > 
> > > On Sat, Jul 18, 2015 at 12:46:51PM +0100, Jonathan Wakely wrote:
> > > > Any problems rebuilding either open a bug or feel free to email 
> > > > 
> > > > me or
> > > > ping me on IRC (my freenode nick is 'redi') and I'll be happy 
> > > > to 
> > > > help.
> > > 
> > > This is a work-in-progress list of FTBFS packages:
> > > 
> > > * Build failures:
> > > 
> > > - F23 + Rawhide
> > > 
> > > inkscape
> > 
> > This seems to be a gtkmm or inkscape bug (I have no idea why it 
> > only 
> > shows up
> > when rebuilding with the new Boost).
> > 
> > /usr/include/gtkmm-2.4/gtkmm/box.h includes <glibmm/helperlist.h> 
> > and
> > uses Glib::HelperList unconditionally, but the definition of that
> > class template is guarded by:
> > 
> > #ifndef GLIBMM_DISABLE_DEPRECATED
> > 
> > That macro is defined when building Inkscape, so including
> > <gtkmm/box.h> gives an error.
> 
> HelperList's deprecation is fairly recent:
> 
> https://git.gnome.org/browse/glibmm/commit/?id=08c6cc2ca8dfdab8c1294b
> c9
> 25ea31df0b6ff8ff
> 
> (and obviously predicated on a wrong belief - "nothing uses it 
> anymore"
> - as we're finding out. :>)

Hum, I guess it's not really glibmm's fault. glibmm deprecated it
because only really old gtkmm uses it...like the gtkmm inkscape uses.
inkscape sets GLIBMM_DISABLE_DEPRECATED because it wants to avoid using
deprecated symbols. That's a laudable goal and maybe it was true at
some point, but it's kinda silly when it's using such an ancient
gtkmm...see below: it's only been working up till now because gtkmm 2.4
ignores the DISABLE_DEPRECATED flags a lot of the time, when it knows
it would break otherwise.

The quick fix should be to rebuild inkscape with --disable-strict-build
. A proper 'fix' might be one or both of two things:

1. inkscape configure.ac already hedges its DISABLE_DEPRECATED stuff in
one case it knows about (some particular version of pango); it could
also skip the DISABLE_DEPRECATED if the glibmm version is sufficiently
new (2.45.3 or later). See:

https://github.com/inkscape/inkscape/blob/master/inkscape
-launchpad/configure.ac#L864-L893

2. gtkmm 2.4 already quite often temporarily undefines
GTK_DISABLE_DEPRECATED and GDK_DISABLE_DEPRECATED when it knows the
thing it's about to try and use is deprecated. It could presumably
undefine GLIBMM_DISABLE_DEPRECATED right before it tries to use
HelperList.

I'll file some bugs upstream for this, and I guess check if an inkscape
build with --disable-strict-build works. I suspect it may not - I think
I see another build attempt which actually did fail on something in
boost...
-- 
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | XMPP: adamw AT happyassassin . net
http://www.happyassassin.net

-- 
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux