Summary: | mail-client/roundcube shouldn't depend on =dev-lang/php-5.2*[apache2] | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Marcin Mirosław <bug> |
Component: | Current packages | Assignee: | Gentoo Web Application Packages Maintainers <web-apps> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | mgorny |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Marcin Mirosław
2010-09-28 08:53:23 UTC
None of the issues pointed by you seem to exist in the ebuild. I think it's mostly portage being unable to show more than a single (first) way around and/or the result of mixing complex dependencies of this ebuild. Please paste the 'package information' part of 'emerge --info php' output. # emerge --info php [...] ================================================================= Package Settings ================================================================= dev-lang/php-5.3.3-r1 was built with the following: USE="bcmath bzip2 cgi cli crypt ctype curl exif fileinfo filter gd hash iconv imap ipv6 json mysql mysqli nls pdo phar pic posix postgres readline session simplexml snmp sockets spell sqlite ssl suhosin threads tokenizer unicode xml xmlreader xmlrpc xmlwriter zip zlib -adabas -apache2 -berkdb -birdstep -calendar -cdb -cjk -concurrentmodphp -curlwrappers -db2 -dbmaker -debug -doc -embed -empress -empress-bcs -enchant -esoob -firebird -flatfile -fpm -frontbase -ftp -gd-external -gdbm -gmp -inifile -interbase -intl -iodbc -kerberos -kolab -ldap -ldap-sasl -libedit -mssql -mysqlnd -oci8 -oci8-instant-client -odbc -pcntl -qdbm -recode -sapdb -sharedext -sharedmem -soap -solid -sqlite3 -sybase-ct -sysvipc -tidy -truetype -wddx -xpm -xsl" the php 5.2 vs. 5.3 issue is due to some use flag being on (always) in php 5.3 and hence not being present in IUSE anymore. Portage tries to satisfy the request USE flag in the dependencies on roundcube and can only find php 5.2. Removing the 2/3 flags that trigger this behavior allows to build with php5.3. Ok, that would explain one thing but doesn't explain why it complains about apache2 flag if cgi is already set (unless for some weird reason the flag wouldn't be set within 5.2). Marcin, could you then paste as well: $ emerge -pv '<php-5.3' Here you are: emerge -pv '<php-5.3' These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild UD] dev-lang/php-5.2.14 [5.3.3-r1] USE="bcmath bzip2 cgi cli crypt ctype curl exif filter force-cgi-redirect%* gd hash iconv imap ipv6 json mysql mysqli ncurses%* nls pcre%* pdo pic posix postgres readline reflection%* session simplexml snmp sockets spell spl%* sqlite ssl suhosin threads tokenizer unicode xml xmlreader xmlrpc xmlwriter zip zlib -adabas -apache2 -berkdb -birdstep -calendar -cdb -cjk -concurrentmodphp -curlwrappers -db2 -dbase% -dbmaker -debug -discard-path% -doc -embed -empress -empress-bcs -esoob -fdftk% -firebird -flatfile -frontbase -ftp -gd-external -gdbm -gmp -inifile -interbase -iodbc -kerberos -kolab -ldap -ldap-sasl -libedit -mcve% -mhash% -msql% -mssql -oci8 -oci8-instant-client -odbc -pcntl -qdbm -recode -sapdb -sharedext -sharedmem -soap -solid -sybase-ct -sysvipc -tidy -truetype -wddx -xpm -xsl -yaz% (-enchant%) (-fileinfo%*) (-fpm%) (-intl%) (-mysqlnd%) (-phar%*) (-sqlite3%)" 8,875 kB Total: 1 package (1 downgrade), Size of downloads: 8,875 kB (In reply to comment #0) > a) Roundcube shouldn't force php to compile apache module, php can be run also > as cgi or cgid ;) > b) roundcube shouldn't force php-5.2, it can run with php>5.2.1 > (http://roundcube.net/about ), so it can be run on php-5.3. > c) at least roundcube can run on apache or lighttpd so it shouldn't force to > install apache (url the same as above) > > Reproducible: Always > > Steps to Reproduce: > 1. emerge -av1 roundcube > > These are the packages that would be merged, in order: > > Calculating dependencies... done! > > emerge: there are no ebuilds built with USE flags to satisfy > "=dev-lang/php-5.2*[apache2]". > !!! One of the following packages is required to complete your request: > - dev-lang/php-5.2.14 (Change USE: +apache2) > (dependency required by "virtual/httpd-php-5.2" [ebuild]) > (dependency required by "mail-client/roundcube-0.4" [ebuild]) > (dependency required by "roundcube" [argument]) I also ran into this issue when installing php-5.3.3 and roundcube-0.4 on a stable machine. You need to install the latest testing version of virtual/httpd-php (5.3) if you want to run the latest testing version of roundcube and php. Therefore, you'd have to add virtual/httpd-php to your keywords file. I don't agree with you. Imho, if i have installed php (which is newer than minimal - 5.2.1) ebuild should check if php has needed flag, respecting that php 5.3 has some funcionality enabled "automagically". Keywording virtual/httpd-php doesn't solves problem with USE flag [apache2], roundcube still wants this flag to be set, without any reason. USE="-apache2 sqlite" emerge -pv roundcube These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild NS ] dev-db/sqlite-2.8.16-r4 [3.7.2] USE="nls -doc -tcl " 0 kB [ebuild R ] dev-lang/php-5.3.3-r1 USE="bcmath berkdb bzip2 cl i crypt ctype curl exif fileinfo filter ftp gd gdbm gmp hash iconv ipv6 json nls pdo phar posix postgres readline session simplexml sockets spell sqlite* ssl threads tokenizer unicode xml xmlreader xmlrpc xmlwriter xsl zip zlib -adabas -apache2* -birdstep -calenda r -cdb -cgi -cjk -concurrentmodphp -curlwrappers -db2 -dbmaker -de bug -doc -embed -empress -empress-bcs -enchant -esoob -firebird -f latfile -fpm -frontbase -gd-external -imap -inifile -interbase -in tl -iodbc -kerberos -kolab -ldap -ldap-sasl -libedit -mssql -mysql -mysqli -mysqlnd -oci8 -oci8-instant-client -odbc -pcntl -pic -qd bm -recode -sapdb -sharedext -sharedmem -snmp -soap -solid -sqlite 3 -suhosin -sybase-ct -sysvipc -tidy -truetype -wddx -xpm" 0 kB [ebuild N ] app-admin/webapp-config-1.50.16-r3 102 kB [ebuild N ] virtual/httpd-php-5.3 0 kB [ebuild N ] virtual/httpd-cgi-0 0 kB [ebuild N ] dev-php/PEAR-PEAR-1.9.1-r1 287 kB [ebuild N ] mail-client/roundcube-0.4 USE="spell ssl vhosts - ldap -mysql -postgres" 2,110 kB Total: 7 packages (5 new, 1 in new slot, 1 reinstall), Size of dow nloads: 2,497 kB !!! Multiple package instances within a single package slot have b een pulled !!! into the dependency graph, resulting in a slot conflict: dev-lang/php:5 (dev-lang/php-5.3.3-r1, installed) pulled in by =dev-lang/php-5.3*[apache2] required by (virtual/httpd-php-5.3 , ebuild scheduled for merge) (dev-lang/php-5.3.3-r1, ebuild scheduled for merge) pulled in by dev-lang/php[sqlite] required by (mail-client/roundcube-0.4, e build scheduled for merge) It might be possible to solve this slot collision by applying all of the following changes: - dev-lang/php-5.3.3-r1 (Change USE: +apache2) Ok, (In reply to comment #7) > I don't agree with you. Imho, if i have installed php (which is newer than > minimal - 5.2.1) ebuild should check if php has needed flag, respecting that > php 5.3 has some funcionality enabled "automagically". > Keywording virtual/httpd-php doesn't solves problem with USE flag [apache2], > roundcube still wants this flag to be set, without any reason. Ok, I see. I'll try to reproduce this on my machine. (In reply to comment #7) > I don't agree with you. Imho, if i have installed php (which is newer than > minimal - 5.2.1) ebuild should check if php has needed flag, respecting that > php 5.3 has some funcionality enabled "automagically". > Keywording virtual/httpd-php doesn't solves problem with USE flag [apache2], > roundcube still wants this flag to be set, without any reason. On another glance, you are probably hitting this problem since you don't have any of the USE flags apache2, cgi, or fpm enabled for php which is needed for virtual/httpd-php-5.3 that is a dependency of roundcube. Since you don't specify any of the USE flags portage takes the first one in the list which is apache2 creating your problem. Therefore, you should either use the cgi or fpm USE flags if you don't want apache2 installed. Trying running something like: USE="-apache2 cgi sqlite" emerge -pv roundcube Also, note that you'll have to have a web server installed prior to installing roundcube or else portage will default to installing apache since it is first in the list for virtual/httpd-cgi that roundcube depends on. You are absolutely right. Last output from emerge was from diffrent host, with diffrent USE flag. All the problems with php-5.3, virtuals and mixing stable with ~ gives very strange effects which leaded me to wrong sequitur. |