Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 194166 - =dev-php/adodb-5* is php5 only: cacti and mantisbt are broken in unstable
Summary: =dev-php/adodb-5* is php5 only: cacti and mantisbt are broken in unstable
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High major (vote)
Assignee: Peter Volkov (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-09-29 06:59 UTC by Peter Volkov (RETIRED)
Modified: 2007-11-03 19:03 UTC (History)
2 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 Peter Volkov (RETIRED) gentoo-dev 2007-09-29 06:59:57 UTC
dev-php/adodb-4.x works with php4 and php5
dev-php/adodb-5.x works with php5 only

This cause problem with adodb-5.x at it installs it's files into different directory: /usr/share/php5/adodb, while adodb-4.x installs itself into /usr/share/php/adodb. In result at least two applications I maintain (cacti and manitsbt) became broken without bundeled-adoddb USE flag (which is default BTW).

So how do we resolve this situation? I'd moved adodb-5.x into dev-php5/adodb. But before I do that I'd like to hear what other people think about this.
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2007-09-29 08:30:59 UTC
There's no way to move this in a reasonable way, you can move the whole ebuild, not just some versions of it. Frankly, PHP4 is dead.

Comment 2 Jakub Moc (RETIRED) gentoo-dev 2007-09-29 08:40:16 UTC
And BTW, how do those application gets broken? I just don't get it. 

- If they don't work with PHP5, then they have broken php dependency in the first place. 
- Otherwise it completely doesn't matter whether ADOdb installs to /usr/share/php/adodb or /usr/share/php5/adodb - they are both in include_dir by default for PHP5 (and adodb-5* depends on it).
Comment 3 Jakub Moc (RETIRED) gentoo-dev 2007-09-29 11:24:41 UTC
Well, regardless of this bug (still don't understand what's the issue here), I've slotted the ebuild for dev-php[45]/adodb-ext and PHP4 in general. So, what goes:

=dev-php/adodb-4* - slot 4 - /usr/share/php4/adodb - requires PHP4
=dev-php/adodb-5* - slot 5 - /usr/share/php5/adodb - requires PHP5

You can check it out from http://overlays.gentoo.org/svn/proj/php/testing/migration/ and test.
Comment 4 Peter Volkov (RETIRED) gentoo-dev 2007-09-29 11:52:51 UTC
Actually slotting is not required here. The issue here is that upstream considers adodb as separate packages. See their home page.

Packages are broken as they contain full path to /usr/share/php/adodb/adodb.inc.php, but well, you are right, Jakub, I'll try to fix thisat in the first place.
Comment 5 Jakub Moc (RETIRED) gentoo-dev 2007-09-29 12:10:14 UTC
(In reply to comment #4)
Well, we need to slot this anyway it seems (or drop PHP4 :P). 

As for your issue, the includes really should be relative ones, not absolute paths - though PHP sucks here, it's relative to the working dir of the calling (executed) PHP script, not of the file that actually uses the include directive. :/

You might use something like

include realpath(dirname(__FILE__) . "/" . "relative_path");
Comment 6 Jakub Moc (RETIRED) gentoo-dev 2007-10-07 12:44:09 UTC
Scratch the slotting; PHP4 is going to be masked, not worth the PITA. I'll revert/nuke the overlay stuff, we are not doing this. Please fix the ebuilds as needed to not hardcode include paths, php outta here. :)
Comment 7 Markus Ullmann (RETIRED) gentoo-dev 2007-10-29 13:29:46 UTC
as php4 is masked, this is a wontfix
Comment 8 Peter Volkov (RETIRED) gentoo-dev 2007-11-03 17:55:26 UTC
Eh, no. This's still not fixed. cacti and mantisbt still hardcode path to adodb. But I'm going to fix that now...
Comment 9 Peter Volkov (RETIRED) gentoo-dev 2007-11-03 18:52:55 UTC
cacti fixed.
Comment 10 Peter Volkov (RETIRED) gentoo-dev 2007-11-03 19:03:29 UTC
Ah. And mantisbt is not broken as it does not hardcode adodb path. All fixed.