Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 153591 - portage should set implicit RDEPEND independent of eclasses
Summary: portage should set implicit RDEPEND independent of eclasses
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Dependencies (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
: 142755 151911 152208 159210 (view as bug list)
Depends on: 154510
Blocks: 147007 153993
  Show dependency tree
 
Reported: 2006-10-31 12:34 UTC by Evil Compile Person
Modified: 2006-12-27 07:56 UTC (History)
6 users (show)

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


Attachments
revert implicit RDEPEND behavior to how it was in portage-2.0.51 (revert_to_2.0.51_rdepend.patch,510 bytes, patch)
2006-11-02 13:51 UTC, Zac Medico
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Evil Compile Person 2006-10-31 12:34:22 UTC
checking for history max command lenght... yes
checking for pkg-config... no
checking for fontconfig... no
configure: WARNING:
-----------------------------------------------------
`fontconfig' was not found on your system.
Although `adesklets' will work anyway system-wide
automatic font detection will not occur:
it is therefore quite possible that only the
default font provided with the package will display.
-----------------------------------------------------
checking for fork... yes
checking for X... no
checking for imlib2-config... /usr/bin/imlib2-config
checking for imlib2 - version >= 1.1.2... ./configure: line 7383: test: 1.009: integer expression expected
yes
checking for imlib2... checking for imlib2 - version >= 1.2.0... ./configure: line 7457: test: 1.009: integer expression expected
yes
checking for imlib2 program linking with ad-hoc flags... no
checking for imlib2 program linking... no
configure: error: Cannot link Imlib2 program.
If you specified you did not want X support this can be caused
by your Imlib2 installment being configured so it needs it
or conversely. In that case reinstall Imlib2 with proper
--enable-x11-support parameter (as from enlightement CVS)
before retrying to configure this package.

!!! Please attach the following file when filing a report to bugs.gentoo.org:
!!! /var/tmp/portage/adesklets-0.6.1/work/adesklets-0.6.1/config.log

!!! ERROR: x11-misc/adesklets-0.6.1 failed.

configure:7534: x86_64-pc-linux-gnu-gcc -o conftest -O2 -pipe -std=c99 -pedantic -Wall   conftest.c  -lImlib2 >&5
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../../x86_64-pc-linux-gnu/bin/ld: warning: libfreetype.so.6, needed by /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../../lib64/libImlib2.so, not found (try using -rpath or -rpath-link)
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../../x86_64-pc-linux-gnu/bin/ld: warning: libX11.so.6, needed by /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../../lib64/libImlib2.so, not found (try using -rpath or -rpath-link)

that leads to this DEP in imlib2:

DEPEND="=media-libs/freetype-2*
        bzip2? ( app-arch/bzip2 )
        zlib? ( sys-libs/zlib )
        gif? ( >=media-libs/giflib-4.1.0 )
        png? ( >=media-libs/libpng-1.2.1 )
        jpeg? ( media-libs/jpeg )
        tiff? ( >=media-libs/tiff-3.5.5 )
        X? ( || ( ( x11-libs/libXext x11-proto/xextproto ) virtual/x11 ) )
        mp3? ( media-libs/libid3tag )"

obviously freetype is RDEPEND, please fix
Comment 1 SpanKY gentoo-dev 2006-10-31 17:12:12 UTC
looks fine to me
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2006-11-01 03:31:38 UTC
Eh, this whole thing is definitely not fine, because the only RDEPEND actually is sys-devel/gettext that comes from enlightenment.eclass. Please, finally stop relying on a non-existant implicit RDEPEND, because as you can see it plain doesn't work.

Comment 3 SpanKY gentoo-dev 2006-11-01 10:26:27 UTC
toss off, i already said in other bugs what needs to be with the RDEPEND situation
Comment 4 Evil Compile Person 2006-11-01 11:33:23 UTC
Dude ... this package is seriously missing an RDEPEND. Breaking binpkgs on purpose is really uncool, so please just add freetype to RDEPEND.
Comment 5 SpanKY gentoo-dev 2006-11-01 12:35:29 UTC
do some reading first
Comment 6 Brian Harring (RETIRED) gentoo-dev 2006-11-01 13:33:56 UTC
(In reply to comment #5)
> do some reading first
kindly reference a bug number first ;)
Comment 7 Jakub Moc (RETIRED) gentoo-dev 2006-11-02 00:13:54 UTC
(In reply to comment #3)

> toss off, i already said in other bugs what needs to be with the RDEPEND
> situation

Getting tired of this. The ebuild is broken, nothing's gonna be done about the RDEPEND situation (whatever you mean by that, portage folks already explained to you multiple times) - so how about fixing the bad dependencies instead of marking bugs that are apparently valid as invalid?
Comment 8 Jakub Moc (RETIRED) gentoo-dev 2006-11-02 00:21:03 UTC
(In reply to comment #6)
> (In reply to comment #5)
> > do some reading first
> kindly reference a bug number first ;)

See Bug 149434 (we document non-existant behaviour in an official howto, oh the fun), Bug 142755 and bunch of others. Apparently fighting windmills is more important than having ebuilds that are not broken.
Comment 9 SpanKY gentoo-dev 2006-11-02 08:39:58 UTC
yawn
Comment 10 Jakub Moc (RETIRED) gentoo-dev 2006-11-02 10:06:10 UTC
(In reply to comment #9)
> yawn

OMG fix the darned ebuild that has completely broken RDEPEND which is missing all the needed libraries. Not even funny any more.

 

Comment 11 SpanKY gentoo-dev 2006-11-02 11:12:08 UTC
i wasnt laughing when the bug was originally posted
Comment 12 Jakub Moc (RETIRED) gentoo-dev 2006-11-02 11:20:24 UTC
May I ask what are you after here? Having fun causing intentional borkage or what exactly? The RDEPEND is completely broken, missing all the libs like freetype, jpeg, png, libpng, tiff, libid3tag etc. etc.) there - so perhaps you could explain how is this bug INVALID?
Comment 13 Christel Dahlskjaer (RETIRED) gentoo-dev 2006-11-02 11:27:36 UTC
According to the conventional rules for implicit RDEPEND handling the ebuild is correct. Now stop being a dick please.
Comment 14 Jakub Moc (RETIRED) gentoo-dev 2006-11-02 11:37:40 UTC
(In reply to comment #13)
> According to the conventional rules for implicit RDEPEND handling the ebuild is
> correct. Now stop being a dick please.

Your conventional rules (whatever you mean) are broken, as everyone can check. Now re-read Bug 149434 Comment #5, or go ask portage folks if you need more explanation how the dependencies work.

I can see we have a wonderful QA, really folks maybe just go dissolve your team as it's apparently not useful. Valid bugs getting closed as INVALID w/ QA consent, calling someone a dick instead of providing some argument, oh this really rocks.
Comment 15 SpanKY gentoo-dev 2006-11-02 11:40:54 UTC
here's a great idea ... let the developers do the developing and the bug wranglers to the bug wrangling
Comment 16 Stephen Bennett (RETIRED) gentoo-dev 2006-11-02 11:42:55 UTC
The current portage behaviour is broken however you look at it. Once that's fixed one way or the other, then we can start changing ebuilds to comply with it. 
Comment 17 Jakub Moc (RETIRED) gentoo-dev 2006-11-02 11:44:58 UTC
OK, if portage is broken, then assign this to portage folks.
Comment 18 Jakub Moc (RETIRED) gentoo-dev 2006-11-02 11:46:09 UTC
Portage folks, you should fix portage. Enjoy. ;)
Comment 19 SpanKY gentoo-dev 2006-11-02 11:51:30 UTC
if you bothered to actually follow portage development you'd know that WE ARE ALREADY WORKING ON IT
Comment 20 Alec Warner (RETIRED) archtester gentoo-dev Security 2006-11-02 11:57:33 UTC
Jakub, there is a patch to fix this and it awaits development approval.  Chill.

As much as broken stuff sucks this bug is rather minor and it can wait.

So please be patient.

Thanks.
Comment 21 Zac Medico gentoo-dev 2006-11-02 13:51:47 UTC
Created attachment 101092 [details, diff]
revert implicit RDEPEND behavior to how it was in portage-2.0.51

If we do this then we have to make sure everybody is prepared for the consequences.  Basically, it restricts implicit RDEPEND to the ebuild level, making it independent of whatever RDEPEND may or may not be defined in the inherited eclasses.  That means that some ebuilds will get implicit RDEPEND that they don't get currently.  Also, some ebuilds will loose some implicit RDEPEND that they current get from eclasses.

In order to make the transition as smooth and consistent as possible, we should do a portage-2.1.1-r2 revbump with the patch and have it stabilized.  At the same time, I'll apply the patch on the master rsync mirror and force regeneration of the entire cache.
Comment 22 Brian Harring (RETIRED) gentoo-dev 2006-11-02 15:00:52 UTC
(In reply to comment #21)
> Created an attachment (id=101092) [edit]
> revert implicit RDEPEND behavior to how it was in portage-2.0.51

RDEPEND in 2.0.51 was 
RDEPEND="${RDEPEND} ${E_RDEPEND}"... so, no it's not like how it was in .51

> If we do this then we have to make sure everybody is prepared for the
> consequences.  Basically, it restricts implicit RDEPEND to the ebuild level,
> making it independent of whatever RDEPEND may or may not be defined in the
> inherited eclasses.  That means that some ebuilds will get implicit RDEPEND
> that they don't get currently.  Also, some ebuilds will loose some implicit
> RDEPEND that they current get from eclasses.

Take this to the dev ml.  I know spankys views on implicit RDEPEND/DEPEND, but fair number of folks were pushing for it to be flat out killed.

If y'all are going to screw with it again (unversioned I might add), please make sure *everyone* will agree to it and it will *not* be screwed with again.
Comment 23 Zac Medico gentoo-dev 2006-11-02 15:32:33 UTC
(In reply to comment #22)
> (In reply to comment #21)
> > Created an attachment (id=101092) [edit]
> > revert implicit RDEPEND behavior to how it was in portage-2.0.51
> 
> RDEPEND in 2.0.51 was 
> RDEPEND="${RDEPEND} ${E_RDEPEND}"... so, no it's not like how it was in .51

AFAIK the patch reverts the behavior to the 2.0.51 level.  The implicit part of RDEPEND comes from ${DEPEND}, and then ${E_RDEPEND} is added to the ebuild's RDEPEND (as with all versions of portage).  Anyway, if that's not correct, we can straighten it all out in the mailing list discussion I guess...
Comment 24 Brian Harring (RETIRED) gentoo-dev 2006-11-02 16:24:18 UTC
(In reply to comment #23)
> Anyway, if that's not correct, we
> can straighten it all out in the mailing list discussion I guess...

Quick check of hte src shows it to be; either way, ml it since it's going to cause issues with folks caches among other things...
Comment 25 SpanKY gentoo-dev 2006-11-02 18:16:59 UTC
i wrote the patch from scratch so i wasnt trying to revert it to a specific version, only to the proper behavior
Comment 26 Brian Harring (RETIRED) gentoo-dev 2006-11-03 00:34:14 UTC
http://article.gmane.org/gmane.linux.gentoo.devel/43937 holds the main details, but the short version is that if going to revert to the old behaviour, all portage versions need to be revbump'd (holding same keywords), old versions yoinked, and touching all eclasses to force transfer of the updated cache entries to the localized cache...
Comment 27 Zac Medico gentoo-dev 2006-11-17 21:02:32 UTC
This has been released in 2.1.1-r2 and 2.1.2_rc2.  Both have a note in the ChangeLog and an ewarn message with a reference to this bug.  I timed the release with regeneration of the metadata on the rsync mirrors for all affected packages.  In all, 2786 cache entries were updated.  For reference, here is the postinst ewarn message:

 * In portage-2.1.1-r2, the implicit RDEPEND behavior has been reverted back to
 * the way it was in <portage-2.0.52. This change restricts implicit RDEPEND to
 * the ebuild level, making it independent of whatever RDEPEND may or may not be
 * defined in the inherited eclasses.  As a result, some ebuilds will get
 * implicit RDEPEND that they did not get previously.  Also, some ebuilds will
 * loose some implicit RDEPEND that they previously got from eclasses.  Users
 * that sync with the rsync mirrors will have their metadata cache automatically
 * updated on the next sync (or the next time that they run
 * `emerge --metadata`).  Users of the gentoo-x86 CVS repository, in order to
 * make the change immediately effective, will have to manually remove the
 * entire contents of /var/cache/edb/dep/ and then run `emerge --regen`.
 * If necessary, please refer to bug #153591 for more information.
Comment 28 Jakub Moc (RETIRED) gentoo-dev 2006-11-18 00:18:16 UTC
*** Bug 142755 has been marked as a duplicate of this bug. ***
Comment 29 Jakub Moc (RETIRED) gentoo-dev 2006-11-18 00:18:41 UTC
*** Bug 151911 has been marked as a duplicate of this bug. ***
Comment 30 Jakub Moc (RETIRED) gentoo-dev 2006-11-29 04:41:53 UTC
*** Bug 152208 has been marked as a duplicate of this bug. ***
Comment 31 Jakub Moc (RETIRED) gentoo-dev 2006-12-27 07:56:32 UTC
*** Bug 159210 has been marked as a duplicate of this bug. ***