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 667382 - libgda build fails in some vala-related way
libgda build fails in some vala-related way
Status: RESOLVED FIXED
Product: libgda
Classification: Other
Component: general
5.0.x
Other Linux
: Normal normal
: ---
Assigned To: malerba
gnome-db Maintainers
Depends on: 667825
Blocks:
 
 
Reported: 2012-01-05 21:10 UTC by Murray Cumming
Modified: 2012-02-02 11:28 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
libgda_vala_output.txt (53.28 KB, text/plain)
2012-01-05 21:10 UTC, Murray Cumming
Details

Description Murray Cumming 2012-01-05 21:10:36 UTC
Created attachment 204709 [details]
libgda_vala_output.txt

I don't know what's happening in the attached build output, but something about either vala or gobject-introspection is failing badly, at least with recent glib. I have vala 0.15 (the latest), though I first tried it with vala 0.14, with the same results.

This is breaking the libgda build.
Comment 1 Daniel Espinosa 2012-01-06 00:28:57 UTC
What version of glib, GIR files installed do you have?

Just the following output is usefull:

* CRITICAL **: vala_gir_parser_add_symbol_to_container: assertion `sym != NULL' failed
Gda-5.0.gir:19.53-19.53: error: The type name `GLib.RecMutex' could not be found
      <type name="GLib.RecMutex" c:type="GRecMutex"/>
                                                    ^
Generation failed: 1 error(s), 0 warning(s)

The other messages are warnings not related.

If you don't have GLib-2.0.gir installed you'll get that messages or RecMutex has gone from gir file. Could you open you installed files to see if that symbol is defined?
Comment 2 Murray Cumming 2012-01-06 18:55:58 UTC
> What version of glib,

I have glib from git master. I have also built gobject-introspection from master. 

> GIR files installed do you have?

> If you don't have GLib-2.0.gir 

I do, in <prefix>/share/gir-1.0/GLib-2.0.gir

> installed you'll get that messages or RecMutex
> has gone from gir file.

It seems to be mentioned there:

 <record name="RecMutex" c:type="GRecMutex" version="2.32">
      <doc xml:whitespace="preserve">The GRecMutex struct is an opaque data structure to represent a
recursive mutex. It is similar to a #GMutex with the difference
that it is possible to lock a GRecMutex multiple times in the same
thread without deadlock. When doing so, care has to be taken to
unlock the recursive mutex as often as it has been locked.

I also have the (Ubuntu Oneiric) system's version of this file in /usr/share/gir-1.0/GLib-2.0.gir and that does not seem to have the same <record> section.
But I hope that is not being used anyway. Note that I am using jhbuild.


I notice also that libgda/Gda-5.0.gir is modififed by the libgda build. I don't think it is wise to have a generated file in git.
Comment 3 Daniel Espinosa 2012-01-11 22:14:31 UTC
I'll try to reproduce the problem. I have to install GLIB from master and/or gobjectintrospection from master, because I have 2.30 on my Ubuntu 11.10 box, with gir1.2-glib-2.0 version 1.30.
Comment 4 Daniel Espinosa 2012-01-12 21:56:39 UTC
I can see that GRecMutex has been added since up coming 2.32 but Vala glib-2.0.vapi hasn't been included jet.

I've added Bug 667825 to include class RecMutex to glib-2.0.vapi in Vala bindings.
Comment 5 Murray Cumming 2012-01-26 19:51:56 UTC
Bug #668765 might be related.
Comment 6 Murray Cumming 2012-02-02 11:28:19 UTC
The build works for me now.