]> gitweb.michael.orlitzky.com - mjo-overlay.git/blobdiff - dev-lang/php/php-5.6.4-r1.ebuild
Fix MySQL socket path when USE=mysqli or USE=pdo-mysql.
[mjo-overlay.git] / dev-lang / php / php-5.6.4-r1.ebuild
index 60dcae9c6f06934b4027edee2f9efa3aa04ccd35..d3a34aa13f1f5a093ed73102a8d8cabd61825086 100644 (file)
@@ -75,6 +75,8 @@ IUSE="${IUSE} bcmath berkdb bzip2 calendar cdb cjk
        sybase-ct sysvipc systemd tidy +tokenizer truetype unicode vpx wddx
        +xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib"
 
+# See REQUIRED_USE for an explanation of why we duplicate dependencies
+# for USE=pdo-foo.
 DEPEND="
        >=app-admin/eselect-php-0.7.1-r3[apache2?,fpm?]
        >=dev-libs/libpcre-8.32[unicode]
@@ -111,11 +113,17 @@ DEPEND="
        mssql? ( dev-db/freetds[mssql] )
        libmysqlclient? (
                mysql? ( virtual/mysql )
-               mysqli? ( >=virtual/mysql-4.1 )
+               mysqli? ( virtual/mysql )
        )
        nls? ( sys-devel/gettext )
        oci8-instant-client? ( dev-db/oracle-instantclient-basic )
        odbc? ( >=dev-db/unixODBC-1.8.13 )
+       pdo-dblib? ( dev-db/freetds[mssql] )
+       pdo-oci? ( dev-db/oracle-instantclient-basic )
+       pdo-odbc? ( >=dev-db/unixODBC-1.8.13 )
+       pdo-mysql? ( virtual/mysql )
+       pdo-pgsql? ( dev-db/postgresql )
+       pdo-sqlite? ( >=dev-db/sqlite-3.7.6.3 )
        postgres? ( dev-db/postgresql )
        qdbm? ( dev-db/qdbm )
        readline? ( sys-libs/readline )
@@ -155,6 +163,13 @@ DEPEND="
 
 php="=${CATEGORY}/${PF}"
 
+# All of the pdo-foo USE flags could require USE=foo, but this has an
+# unwanted side effect. USE=mysql, for example, also enables the old
+# deprecated mysql database driver. We would like it to be possible to
+# install pdo-mysql without the deprecated mysql driver, so we don't
+# require USE=mysql with USE=pdo-mysql. This means that we have to
+# reproduce the mysql? (...) dependencies for pdo-mysql in (R)DEPEND
+# above.
 REQUIRED_USE="
        truetype? ( gd )
        vpx? ( gd )
@@ -178,12 +193,12 @@ REQUIRED_USE="
                pdo-mysql
        ) )
 
-       pdo-dblib? ( pdo mssql )
-       pdo-oci? ( pdo oci8-instant-client )
-       pdo-odbc? ( pdo odbc )
-       pdo-mysql? ( pdo mysql )
-       pdo-pgsql? ( pdo postgres )
-       pdo-sqlite? ( pdo sqlite )
+       pdo-dblib? ( pdo )
+       pdo-oci? ( pdo )
+       pdo-odbc? ( pdo )
+       pdo-mysql? ( pdo )
+       pdo-pgsql? ( pdo )
+       pdo-sqlite? ( pdo )
        qdbm? ( !gdbm )
        readline? ( !libedit )
        recode? ( !imap !mysql !mysqli )
@@ -450,7 +465,7 @@ src_configure() {
 
        # IMAP SSL support
        if use imap ; then
-               my_conf+="$(use_with ssl imap-ssl ${EPREFIX}/usr)"
+               my_conf+=" $(use_with ssl imap-ssl ${EPREFIX}/usr)"
        fi
 
        # MySQL support
@@ -462,15 +477,14 @@ src_configure() {
        my_conf+=" $(use_with mysql mysql $mysqllib)"
        my_conf+=" $(use_with mysqli mysqli $mysqlilib)"
 
-       local mysqlsock=" $(use_with mysql mysql-sock ${EPREFIX}/var/run/mysqld/mysqld.sock)"
-       if use mysql ; then
-               my_conf+="${mysqlsock}"
-       elif use mysqli ; then
-               my_conf+="${mysqlsock}"
-       fi
-
        # MySQL PDO support
-       my_conf+="$(use_with pdo-mysql pdo-mysql ${mysqllib})"
+       my_conf+=" $(use_with pdo-mysql pdo-mysql ${mysqllib})"
+
+       # If MySQL is enabled in any way, pass --with-mysql-sock to ./configure.
+       local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
+       my_conf+=" $(use_with mysql mysql-sock $mysqlsock)"
+       my_conf+=" $(use_with mysqli mysql-sock $mysqlsock)"
+       my_conf+=" $(use_with pdo-mysql mysql-sock $mysqlsock)"
 
        # Session support
        if use session ; then