Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 16878 - xmms-1.2.7-r15 emerging problem with ebuild from portage-2.0.47-r8
Summary: xmms-1.2.7-r15 emerging problem with ebuild from portage-2.0.47-r8
Status: RESOLVED DUPLICATE of bug 16599
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: All Linux
: High major
Assignee: Nicholas Jones (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-03-05 04:34 UTC by Leonid Kabanov
Modified: 2011-10-30 22:18 UTC (History)
1 user (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 Leonid Kabanov 2003-03-05 04:34:52 UTC
When try to compile xmms using portage-2.0.47-r8 I got xmms plugins placed in
/usr/lib instead of /usr/lib/xmms/<type of plugin>/ . After some research it was
found that ebuild passes param libdir to make (on install stage) thus overriding
correct value from Makefiles.

How to reproduce this bug:
ebuild /usr/portage/media-sound/xmms/xmms-1.2.7-r15.ebuild compile
mv /usr/bin/make /usr/bin/make-old
echo '#!/bin/sh
echo arguments:
env
echo args:
echo $*
exec /usr/bin/make-old "$@"' > /usr/bin/make
chmod +x /usr/bin/make
ebuild /usr/portage/media-sound/xmms/xmms-1.2.7-r15.ebuild install

This error may affect other packages as well
Comment 1 Anton Voloshin 2003-03-05 05:16:21 UTC
with portage-2.0.46-r12 everything works Ok,
so probably this portage bug was introduced later.
Comment 2 SpanKY gentoo-dev 2003-03-05 05:22:34 UTC
yes, it was introduced later ...
Comment 3 SpanKY gentoo-dev 2003-03-05 21:42:26 UTC
the question is, do we want to say the install script is broken or the ebuild.sh ? :/
Comment 4 Leonid Kabanov 2003-03-06 00:17:02 UTC
I think ebuild.sh is broken. We cannot force all developers to use vars like libdir in some "right" way. Developers may use these vars as they want. autoconf is not the univesal standard :)
Comment 5 SpanKY gentoo-dev 2003-03-06 01:05:13 UTC
many packages will append their path specific information to libdir ...
usually when you pass a variable to make you expect to be setting the base of the
path, not the whole thing ...

when i give make 'prefix=${D}/usr', i dont expect all the files to be in ${D}/usr ...
i expect it to use ${D}/usr as the base of the tree

but thats me ;)
Comment 6 Leonid Kabanov 2003-03-06 01:52:22 UTC
Some developers don't use autoconf so meaning of such variables is undefined for these packages. Setting libdir, incdir and so on is package dependent and must be placed in .ebuild files.
libdir should be set by `configure' script, there should be no need in specifying it once again on install.

make has a feature: if variable has been set in environment (or as argument to make), Makefile settings by default does not override this value.
E.g. in xmms, there is line like libdir = $(plugindir)/$(OUTPUT_PLUGIN_DIR) in plugin directory's Makefile.
But since libdir has already been set on make invocation, this directive is ignored.
Of course, it is possible to explicitly override old value using 'override libdir=...', but I guess we should not force developers to do that.
Comment 7 Brad Laue (RETIRED) gentoo-dev 2003-03-08 02:58:05 UTC
This bug is the same issue as 16803 - -r19 of the XMMS ebuild corrects this issue.

Can this revision be marked stable?
Comment 8 SpanKY gentoo-dev 2003-03-09 00:17:20 UTC
*** This bug has been marked as a duplicate of 16599 ***