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 655026 - cogl-pango should not link to systemwide libcogl during make install
cogl-pango should not link to systemwide libcogl during make install
Status: RESOLVED FIXED
Product: cogl
Classification: Platform
Component: cogl-pango
1.7.x
Other Linux
: Normal normal
: ---
Assigned To: Cogl maintainer(s)
Cogl maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2011-07-21 05:43 UTC by Alexandre Rostovtsev
Modified: 2011-07-27 17:24 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch to prevent linking to systemwide libcogl during make install (1.95 KB, patch)
2011-07-21 05:46 UTC, Alexandre Rostovtsev
reviewed Details | Review

Description Alexandre Rostovtsev 2011-07-21 05:43:05 UTC
At the moment, on make install, libcogl-pango will link to the version of libcogl that is already installed systemwide. This leads to interesting problems when the version installed systemwide is incompatible with the version of cogl that is being built.

E.g., when building cogl-1.7.4 (with --enable-cogl-pango and --prefix=/usr) on a system that has cogl-1.7.2 installed in /usr:

$ make
[...]
$ ldd cogl-pango/.libs/libcogl-pango.so | grep cogl
        libcogl.so.2 => /var/tmp/cogl-1.7.4/cogl/.libs/libcogl.so.2 (0x00007eff4bfb2000)
$ make DESTDIR=/var/tmp/cogl-1.7.4/dest install
[...]
$ ldd /var/tmp/cogl-1.7.4/dest/usr/lib64/libcogl-pango.so | grep cogl
        libcogl.so.1 => /usr/lib64/libcogl.so.1 (0x00007f4647747000)
Comment 1 Alexandre Rostovtsev 2011-07-21 05:46:34 UTC
Created attachment 192358 [details] [review]
patch to prevent linking to systemwide libcogl during make install

This problem can be avoided by reordering libcogl_pango_la_LIBADD to ensure that during make installs' relinking phase, libtool looks at the libcogl in the build directory before the systemwide libcogl.

Here is a patch that does so.
Comment 2 Emmanuele Bassi (:ebassi) 2011-07-21 09:07:31 UTC
Review of attachment 192358 [details] [review]:

looks obviously correct.

::: cogl-pango/Makefile.am
@@ +30,3 @@
 libcogl_pango_la_CFLAGS = $(COGL_DEP_CFLAGS) $(COGL_EXTRA_CFLAGS) $(MAINTAINER_CFLAGS)
+libcogl_pango_la_LIBADD = $(top_builddir)/cogl/libcogl.la
+libcogl_pango_la_LIBADD += $(COGL_DEP_LIBS) $(COGL_EXTRA_LDFLAGS)

can we not just drop the += and list the LIBADD value on the same line?
Comment 3 Alexandre Rostovtsev 2011-07-21 16:10:48 UTC
(In reply to comment #2)
> can we not just drop the += and list the LIBADD value on the same line?

If you want to, sure. It's just a question of line length aesthetics.
Comment 4 Robert Bragg 2011-07-27 17:24:13 UTC
thanks for the patch - I've pushed this to master as 565e2cabd89aa