After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 786153 - Problems compiling against devhelp 3.25.1+
Problems compiling against devhelp 3.25.1+
Status: RESOLVED INVALID
Product: devhelp
Classification: Applications
Component: General
git master
Other Linux
: Normal major
: ---
Assigned To: devhelp-maint
devhelp-maint
Depends on:
Blocks:
 
 
Reported: 2017-08-11 13:03 UTC by Jeremy Bicha
Modified: 2017-08-22 18:34 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Jeremy Bicha 2017-08-11 13:03:23 UTC
devhelp 3.25.1 has this in its NEWS:
API:
- There has been some API breaks documented in the reference manual, but both
  Anjuta and gnome-builder should still compile and work fine.

I have test-built devhelp 3.25.2 on Ubuntu 17.10 Alpha and I see that yes, a bunch of symbols were removed but the soname wasn't bumped. I then tried compiling anjuta 3.22.0 and gnome-builder 3.24.2 (the current stable releases). But both projects are unable to build their devhelp plugins:

anjuta:
checking if devhelp plugin is disabled... no
checking for PLUGIN_DEVHELP... no

gnome-builder:
checking for DEVHELP... no

Packaging and build logs are at
https://launchpad.net/~jbicha/+archive/ubuntu/temp20170808/+packages
Comment 1 Sébastien Wilmet 2017-08-11 14:22:10 UTC
The pkg-config file hasn't changed normally. In my jhbuild session:

$ pkg-config --modversion libdevhelp-3.0
3.25.2

In the configure.ac of Anjuta, it checks with PKG_CHECK_MODULES "libdevhelp-3.0 >= $LIBDEVHELP_REQUIRED", so it should work.

When I've modified the Devhelp API, I've always checked with git grep that Anjuta and gnome-builder don't use those symbols.
Comment 2 Sébastien Wilmet 2017-08-11 14:23:56 UTC
The Libtool version will be updated for the stable version, it must not be updated for each unstable version.
Comment 3 Jeremy Bicha 2017-08-11 14:31:50 UTC
Hi, I don't know what's not working. All I know is that it's not working.

We're at API Freeze now for GNOME 3.26 so I would expect the soname to have been bumped by this week.

gnome-builder 3.25.90 refuses to build for me because it looks like devhelp support is mandatory.

--------
Determining dependency 'libdevhelp-3.0' with pkg-config executable '/usr/bin/pkg-config'

Meson encountered an error in file plugins/devhelp/meson.build, line 28, column 0:
Could not generate cargs for libdevhelp-3.0:
--------
Comment 4 Sébastien Wilmet 2017-08-11 14:49:55 UTC
I don't know, I suppose that the gnome-builder developers are still able to compile the Devhelp plugin.
Comment 5 Jeremy Bicha 2017-08-11 20:55:37 UTC
What info do you need from me?
Comment 6 Sébastien Wilmet 2017-08-12 09:42:02 UTC
More info, I don't know what's wrong in Devhelp.

Note that GNOME 3.25.90 is not yet officially released. Once it is released, we'll know if Michael Catanzaro was able to build gnome-builder 3.25.90 against Devhelp 3.25.2.
Comment 7 Sébastien Wilmet 2017-08-12 10:04:29 UTC
With jhbuild I have this when building Anjuta, at the end of configure:

Building devhelp plugin: ...............................YES

Then the build fails with unrelated linker errors:
multiple definition of `g_cclosure_marshal_VOID__BOXED'
multiple definition of `g_cclosure_marshal_VOID__OBJECT'
etc.

I didn't try to build gnome-builder, there are more dependencies. But gnome-builder is a very active project, so I think that if there was a build problem with the latest Devhelp, they would have contacted us.
Comment 8 Sébastien Wilmet 2017-08-13 16:11:03 UTC
Did you package Devhelp 3.25.1 on Ubuntu? Dit it work fine? Or are you updating from 3.24?
Comment 9 Sébastien Wilmet 2017-08-15 10:30:16 UTC
From https://download.gnome.org/apps/3.25/3.25.90/NEWS :

 - devhelp (3.25.1 => 3.25.2)
 - gnome-builder (3.25.5 => 3.25.90)
Comment 10 Jeremy Bicha 2017-08-17 21:09:45 UTC
I have the same problem with 3.25.1.

Maybe the issue is only seen on Debian/Ubuntu and maybe nobody has bothered building devhelp 3.25 on those platforms yet…
Comment 11 Jeremy Bicha 2017-08-20 22:45:43 UTC
I bisected this back to
https://git.gnome.org/browse/devhelp/commit/?id=fae7da19512

The generated .pc includes these lines:

> Requires:  gio-2.0 >= 2.38  gtk+-3.0 >= 3.22  webkit2gtk-4.0 >= 2.6
> Requires.private:  gsettings-desktop-schemas

My problem was that I added gsettings-desktop-schemas-dev to Build-Depends but I did not add it to libdevhelp-dev's Depends.

Thanks for your patience.

(In reply to Sébastien Wilmet from comment #2)
> The Libtool version will be updated for the stable version, it must not be
> updated for each unstable version.

From now on, could you please bump this at GNOME API/ABI Freeze (the .90) release?

3.25.91 is due tomorrow so now is a good time for 3.26. 
Comment 12 Jeremy Bicha 2017-08-20 22:48:05 UTC
To be more specific about why I am asking for the soname bump at this time. Ubuntu's Release Schedule and policies basically requires us to push GNOME stuff into Ubuntu at the .90 milestone if they are going to be in the next Ubuntu release.
Comment 13 Sébastien Wilmet 2017-08-22 18:34:20 UTC
Devhelp 3.25.91 released.