GNOME Bugzilla – Bug 536430
Libs and Cflags paths in gail-uninstalled.pc.in are out of date
Last modified: 2008-07-03 08:48:48 UTC
gail has been incorporated into gtk+. On Solaris we group multiple modules into one installable package and make use of uninstalled.pc files. libgnomecanvas uses the gail-uninstalled.pc.in file. The current gail-uninstalled.pc.in file does not provide right paths to gail headers or libraries. Attached patch fixes. -Libs: ${pc_top_builddir}/${pcfiledir}/gail/libgail.la -Cflags: -I${pc_top_builddir}/${pcfiledir} +Libs: ${pc_top_builddir}/${pcfiledir}/modules/other/gail/libgail.la +Cflags: -I${pc_top_builddir}/${pcfiledir}/modules/other/gail
Created attachment 112056 [details] [review] Correct paths in gail-uninstalled.pc.in file.
Add Li to the CC list.
Reopening this bug because the patch I supplied points to the wrong gail .la file. This had a knock-on effect on modules that used libgnomecanvas (which uses gail). See bug #456513. New patch changes libgail.la to libgail-util/libgailutil.la. Sorry for this error.
Created attachment 113318 [details] [review] Point to correct gail .la file.
So we don't need libgail.la in gail-uninstalled.pc.in?
From my experiments I don't think that we do. Maybe I should wait until tomorrow after I do a full nightly build with the new patch.
If there is no risk if we leave libgail.la in gail-uninstalled.pc.in, I'd prefer just add libgailutil.la. Maybe some modules that we don't know needs to link libgail.la. What's your opinion?
Good point - I will check the nightly build log tomorrow (Wednesday). If there is a problem then I will add libgail.la back.
The nightly build completed without errors last night. $ cd /usr/lib $ ls libgail* libgailutil.so libgailutil.so.18 libgailutil.so.18.0.1 $ ldd libgnomecanvas-2.so | grep gail libgailutil.so.18 => /usr/lib/libgailutil.so.18 So, IMO, there is only one gail library to link to and therefore the new patch is okay.
Just back from vacation. I meant is it possible that someone writes a program which depends on libgail.la and wants to use gail-uninstalled.pc.in? I think maybe we need to leave libgail.la in gail-uninstalled.pc.in.
The gail-uninstalled.pc(.in) file is only used when building against gail *before* gail is installed. When gail is installed then programs use gail.pc. So, I do not think that we need to add libgail.la to gail-uninstalled.pc.in.
Created attachment 113896 [details] [review] patch