Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 233468 - dev-libs/xmlrpc-c-1.14.07: ignores $(get_libdir), redux
Summary: dev-libs/xmlrpc-c-1.14.07: ignores $(get_libdir), redux
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Peter Alfredsen (RETIRED)
URL:
Whiteboard:
Keywords:
: 233500 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-07-31 10:22 UTC by Duncan
Modified: 2008-08-06 20:05 UTC (History)
9 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Duncan 2008-07-31 10:22:43 UTC
+++ This bug was initially created as a clone of Bug #233143 +++

I couldn't reopen it thus the clone, but the patch applied to close 233143 is incorrect.

-LIBINST_DIR = $(PREFIX)/lib
+LIBINST_DIR = $(PREFIX)/@libdir@

But PREFIX is apparently /usr, and @libdir@ is (on amd64) /usr/lib64, so what we get is a bunch of stuff in /usr/usr/lib64.  A small excerpt, the first few of many affected lines, from equery f xmlrpc-c:

/usr/usr
/usr/usr/lib64
/usr/usr/lib64/libxmlrpc++.a
/usr/usr/lib64/libxmlrpc++.so -> libxmlrpc++.so.4
/usr/usr/lib64/libxmlrpc++.so.4 -> libxmlrpc++.so.4.14

The patch as originally posted on bug 233143 is correct (as tested here and presumably by others), removing the $PREFIX/ portion as it's already in @libdir@:

-LIBINST_DIR = $(PREFIX)/lib
+LIBINST_DIR = @libdir@

Thanks for the prompt attempted fix, and in advance for this one. =8^)

Duncan
Comment 1 Peter Alfredsen (RETIRED) gentoo-dev 2008-07-31 17:38:03 UTC
The problem is that without the PREFIX, on my ~x86 setup, it's installed into /lib. First I'm gonna do, is do a revbump to reverse the damage I've done with an ebuild that may not be multilib-safe, but will work.

For reference, with PREFIX:
[...]
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server_cgi.so.3
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_util.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_client.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server_pstream++.so.4.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_client++.so.4.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_client++.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc++.so.4.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc_server++.so.4.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc_client.so.3.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc_cpp.so.4.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc++.so.4.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc_client++.so.4.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc_util.so.3.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc_server_cgi.so.3.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc.so.3.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc_server_pstream++.so.4.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc_server.so.3.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/debug/usr/lib/libxmlrpc_packetsocket.so.4.14.debug
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server++.so.4
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_cpp.so.4.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_util.so
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc.so.3.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_packetsocket.so.4
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_client.so.3.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server_pstream++.so.4
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_packetsocket.so.4.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc.so
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_client.so
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc++.so.4
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_packetsocket.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server++.so.4.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server_pstream++.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc++.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server_cgi.so
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_client++.so.4
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_util.so.3
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_client++.so
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_client.so.3
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server.so.3.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server++.so
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_cpp.so.4
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server.so.3
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server_pstream++.so
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_cpp.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server_cgi.so.3.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc++.so
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc.so.3
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_cpp.so
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server_cgi.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server.so
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_util.so.3.14
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_server++.a
/var/tmp/portage/dev-libs/xmlrpc-c-1.14.07/image/usr/lib/libxmlrpc_packetsocket.so
[...]
Comment 2 Peter Alfredsen (RETIRED) gentoo-dev 2008-07-31 17:42:54 UTC
*** Bug 233500 has been marked as a duplicate of this bug. ***
Comment 3 Ryan Hill (RETIRED) gentoo-dev 2008-07-31 21:07:40 UTC
inherit multilib

sed -i -e '/^LIBINST_DIR = / s:$(PREFIX)/lib:/usr/lib64:' Makefile.config.in
Comment 4 Ryan Hill (RETIRED) gentoo-dev 2008-07-31 21:09:19 UTC
er, make that:

sed -i -e '/^LIBINST_DIR = / s:$(PREFIX)/lib:$(get_libdir):' Makefile.config.in

:P
Comment 5 Jonathan Callen (RETIRED) gentoo-dev 2008-08-01 04:49:20 UTC
(In reply to comment #4)
> er, make that:
> 
> sed -i -e '/^LIBINST_DIR = / s:$(PREFIX)/lib:$(get_libdir):' Makefile.config.in
> 
> :P
> 
I think that should really be:

sed -i -e "/^LIBINST_DIR = / s:\$(PREFIX)/lib:\$(PREFIX)/$(get_libdir):" Makefile.config.in

(This actually was going to be my initial version, until I saw that @libdir@ *seemed* to work.)
Comment 6 Ryan Hill (RETIRED) gentoo-dev 2008-08-01 07:17:43 UTC
yes you're right.  i haven't used get_libdir in a bit and for some reason thought it returned /usr/lib{,64}.  does $ need to be escaped in the replacement string?  i thought it was interpreted literally.
Comment 7 Ryan Hill (RETIRED) gentoo-dev 2008-08-01 07:24:53 UTC
and i'm wrong.  ;)  i must be getting rusty.
Comment 8 Peter Alfredsen (RETIRED) gentoo-dev 2008-08-06 20:05:48 UTC
+  06 Aug 2008; Peter Alfredsen <loki_val@gentoo.org>
+  xmlrpc-c-1.14.07-r1.ebuild, xmlrpc-c-1.15.02.ebuild,
+  xmlrpc-c-1.15.03.ebuild:
+  Make >=xmlrpc-c-1.14.07 multilib-strict safe. For real this time. Bug
+  #233468, thanks to en.ABCD@gmail.com. Re-enable cxx useflag for
+  >=xmlrpc-c-1.15.02. Disable running unneeded autotools, bug #233436,
+  thanks to gentoobugsie@gmail.com.
+