GNOME Bugzilla – Bug 655026
cogl-pango should not link to systemwide libcogl during make install
Last modified: 2011-07-27 17:24:13 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)
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.
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?
(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.
thanks for the patch - I've pushed this to master as 565e2cabd89aa