The pkg-config file is missing Requires for glib-2.0 and dbus-glib-1 telepathy-glib-devel-0.7.5-1.fc9 make[2]: Entering directory `/builddir/build/BUILD/gnome-phone-manager-0.50/telepathy' gcc -DHAVE_CONFIG_H -I. -I.. -I/usr/include/telepathy-1.0 -DGNOMELOCALEDIR=\""/usr/share/locale"\" -DDATA_DIR="\"/usr/share/gnome-phone-manager\"" -DVERSION="\"0.50\"" -DPACKAGE="\"gnome-phone-manager\"" -I./../libgsm -I./../libgsm -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT connection.o -MD -MP -MF .deps/connection.Tpo -c -o connection.o connection.c gcc -DHAVE_CONFIG_H -I. -I.. -I/usr/include/telepathy-1.0 -DGNOMELOCALEDIR=\""/usr/share/locale"\" -DDATA_DIR="\"/usr/share/gnome-phone-manager\"" -DVERSION="\"0.50\"" -DPACKAGE="\"gnome-phone-manager\"" -I./../libgsm -I./../libgsm -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT connection-manager.o -MD -MP -MF .deps/connection-manager.Tpo -c -o connection-manager.o connection-manager.c gcc -DHAVE_CONFIG_H -I. -I.. -I/usr/include/telepathy-1.0 -DGNOMELOCALEDIR=\""/usr/share/locale"\" -DDATA_DIR="\"/usr/share/gnome-phone-manager\"" -DVERSION="\"0.50\"" -DPACKAGE="\"gnome-phone-manager\"" -I./../libgsm -I./../libgsm -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT debug.o -MD -MP -MF .deps/debug.Tpo -c -o debug.o debug.c gcc -DHAVE_CONFIG_H -I. -I.. -I/usr/include/telepathy-1.0 -DGNOMELOCALEDIR=\""/usr/share/locale"\" -DDATA_DIR="\"/usr/share/gnome-phone-manager\"" -DVERSION="\"0.50\"" -DPACKAGE="\"gnome-phone-manager\"" -I./../libgsm -I./../libgsm -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT im-channel.o -MD -MP -MF .deps/im-channel.Tpo -c -o im-channel.o im-channel.c In file included from im-channel.c:26: /usr/include/telepathy-1.0/telepathy-glib/channel-iface.h:25:25: error: glib-object.h: No such file or directory In file included from im-channel.c:26: /usr/include/telepathy-1.0/telepathy-glib/channel-iface.h:48: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'typedef' /usr/include/telepathy-1.0/telepathy-glib/channel-iface.h:59: error: expected ')' before '*' token /usr/include/telepathy-1.0/telepathy-glib/channel-iface.h:68: error: expected specifier-qualifier-list before 'GTypeInterface' /usr/include/telepathy-1.0/telepathy-glib/channel-iface.h:71: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'tp_channel_iface_get_type' In file included from /usr/include/telepathy-1.0/telepathy-glib/dbus.h:25, from im-channel.c:27: /usr/include/telepathy-1.0/telepathy-glib/proxy.h:25:28: error: dbus/dbus-glib.h: No such file or directory In file included from /usr/include/telepathy-1.0/telepathy-glib/dbus.h:25, from im-channel.c:27:
the devel package already had a requires on dbus-glib-devel, but I added the missing requires on glib2-devel in 0.7.5-2.
Still a problem in telepathy-glib-devel-0.7.5-2.fc9.i386 See: http://koji.fedoraproject.org/koji/taskinfo?taskID=525148 It's not the package missing a requires, it's the pkg-config file not listing its dependencies.
Created attachment 298793 [details] telepathy-glib-broken-pkgconfig.patch Requires.private are for requirements that aren't exposed in the headers. Glib and dbus-glib are clearly used in the telepathy-glib-devel headers, so they shouldn't be listed in the private section.
Created attachment 298794 [details] bug-436773.patch Seems I'm not allowed to commit. Please send the other patch upstream as well.
Bastien, thanks for the patch. I kicked off a build (0.7.5-4) that should fix this. Leaving this open for now, since freedesktop.org's bugzilla seems to be down right now, and I don't want to forget to forward this upstream.
Reassigning to pkg-config, as per upstream
This is probably a duplicate of #426106.
Changing version to '9' as part of upcoming Fedora 9 GA. More information and reason for this action is here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
Your patch reverts a change we were asked to make by the pkg-config maintainer (Tollef Fog Heen, Mithrandir in the IRC transcript linked below). The point of Requires.private is to cut down on unnecessary library cross-linking by removing unnecessary LDFLAGS in dependent projects. https://bugs.freedesktop.org/show_bug.cgi?id=15199 has background for this, including a log snippet from #telepathy in which Mithrandir asks us to use Requires.private, and some other interesting links. It appears that at the time I concluded that the problem was that Fedora's pkg-config includes an early, unreviewed patch for https://bugs.freedesktop.org/show_bug.cgi?id=4738 which breaks the functionality we rely on. Perhaps this patch could be updated?
(In reply to comment #7) > This is probably a duplicate of #426106. I think so, too.
*** This bug has been marked as a duplicate of bug 426106 ***