Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 94112 - ImageMagick reports false dependency on perl
Summary: ImageMagick reports false dependency on perl
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: PPC OS X
: High normal
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-26 12:58 UTC by Dan Check
Modified: 2006-07-08 09:46 UTC (History)
4 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 Dan Check 2005-05-26 12:58:03 UTC
All imagemagick ebuilds that inherit perl-module seem to refuse to compile on
systems that have a perl version < 5.8.2.  This happens even with USE="-perl",
which removes (as far as I can tell) any actual dependency on perl and perl-module.

Are conditional inherits allowed?  If so, the solution would look like (after
the IUSE):

if use perl ; then
inherit perl-module
fi

Some discussion over here: #31544

Reproducible: Always
Steps to Reproduce:
1. Remove perl or run a version prior to 5.8.2 (like OS X 10.3)
2. USE="-*" emerge imagemagick

Actual Results:  
complains about the need for perl >= 5.8.2; refuses to install.
Comment 1 Dan Check 2005-05-26 12:59:59 UTC
Sorry... should have been clearer: the block stems from the fact that even
inheriting perl-module requires a perl version >= 5.8.2, regardless of whether
or not you actually invoke any of the functions therein.

More dicussion here:

http://bugs.gentoo.org/show_bug.cgi?id=31544
Comment 2 Carsten Lohrke (RETIRED) gentoo-dev 2005-05-26 13:29:58 UTC
Conditional inheritance is not allowed, since it breaks portage caching.
Comment 3 Michael Cummings (RETIRED) gentoo-dev 2005-05-30 07:35:51 UTC
Really not seeing the problem here since we don't support <5.8.2 anyway, and 
even that support's on its way out. 
Comment 4 Dan Check 2005-05-31 07:29:02 UTC
Sorry -- the problem (reflected in the new summary) is that imagemagick always
reports a dependency on perl, even when one isn't required.  

USE="-perl" emerge imagemagick

shouldn't require perl at all, AFAIK, but because it inherits the perl module
eclass unconditionally, it falsely reports a perl dependency.

This is a bug that will hold true for any package that (a) provides an optional
perl module through a "perl" use flag; (b) uses the perl module eclass; and (c)
doesn't otherwise require perl.  I don't know if any other such packages exist.

The 5.8.1 vs. 5.8.2 stuff was just to indicate that the problem isn't just
academic; there's at least one arch where the false dependency will prevent
portage from attempting to build the package, even though the package compiles
cleanly.
Comment 5 Michael Cummings (RETIRED) gentoo-dev 2005-05-31 08:54:20 UTC
Still on a tangent that doesn't matter - imagemagick will need at least 5.8.2 
to build its perl deps (not negating the validity of the claim about the use of 
eclass thereby needing perl, though perl is a gentoo system dep, ie to be a 
valid gentoo system, ported arch or not, you need perl). 
 
don't think i'm making any sense, let me try again...i see the validity of the 
report, and in another bug i am questioning the recent merging of perlmagick 
back into imagemagick all together since it seems to be broken in newer 
imagemagick installs, but on the flip, perl is a system requirement for gentoo 
afaik, regardless of whether you are a ported arch or a traditional linux 
install of gentoo. as such, i can tell you that the ported arch's need to be 
able to support the same minimal versions of perl that gentoo supports. on top 
of all of that - imagemagick in its latest incarnation (whether the ebuild 
reflects this or not) requires perl 5.8.2 to be able to support perl plugins. 
Comment 6 Dan Check 2005-05-31 09:43:38 UTC
Thanks for the repsonse.  I think this bug report for imagemagick is still
valid, though, because you can choose to compile imagemagick without perl
plugins, but, if you do, portage still falsely claims that you need perl (v
5.8.2) installed on your system in order to compile imagemagick.

The crux of this bug report is really that it's possible to compile imagemagick
using the existing ebuilds on boxen without perl 5.8.2 as long as the -perl flag
is used and the perl modules eclass is not inherited.

The question about what is and isn't a valid Gentoo system is way beyond my
level of competence... I think there's a broader conversation here about perl
version support and gentoo on os x that the os x devs can choose to have or not
have with the perl devs, given that Tiger is probably going to run 5.8.2 for its
entire lifecycle.

At a minimum, though, package dependencies should be accurate, which means that
imagemagick's perl dep should be truly conditional.

The solution may be to break apart imagemagick and perlmagick, but that's going
to leave this problem in any other ebuilds that optionally build perl modules
using the perl modules eclass.
Comment 7 SpanKY gentoo-dev 2005-11-04 22:47:40 UTC
bug in perl-module.eclass

there's no way to inherit it optionally and/or say you want to use it based upon
USE=perl
Comment 8 Dan Check 2005-11-16 09:21:42 UTC
If this is a bug in the perl module eclass, does that mean that this bug should
be reassigned to perl@gentoo.org?  Should I file a new bug with them and mark
this as a duplicate of that bug?
Comment 9 Fabian Groffen gentoo-dev 2005-11-16 09:41:51 UTC
This bug looks like it's already assigned to the perl herd to me...
Comment 10 Michael Cummings (RETIRED) gentoo-dev 2005-11-21 10:09:11 UTC
(In reply to comment #7)
> bug in perl-module.eclass
> 

How so? We won't support less than 5.8.2 (and are fast not supporting less than
what's in the tree, which at present only goes as low as 5.8.6). And before you
ask, yes, there are differences in the point release that make it difficult to
support older perls.
Comment 11 SpanKY gentoo-dev 2005-11-21 10:14:27 UTC
i dont see how perl version is related in any way to this bug report

you skipped the rest of my comment #7 which explains what the bug is
Comment 12 Michael Cummings (RETIRED) gentoo-dev 2006-07-08 09:46:56 UTC
fixed in the eclass. Somewhat counterintuitive, but fresh coffee cleared the brain while going through outstanding bug reports.