commit: 48d953fc98d7d35e55cee779860407fa57b3cd9b Author: Michael Orlitzky <mjo <AT> gentoo <DOT> org> AuthorDate: Wed May 4 12:26:50 2016 +0000 Commit: Michael Orlitzky <mjo <AT> gentoo <DOT> org> CommitDate: Wed May 4 14:22:15 2016 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48d953fc
dev-lang/php: version bump all three series with security fixes. Gentoo-Bug: 581834 Package-Manager: portage-2.2.26 dev-lang/php/Manifest | 4 +- .../php/{php-7.0.5.ebuild => php-5.5.35.ebuild} | 519 ++++++++++----------- .../php/{php-7.0.5.ebuild => php-5.6.21.ebuild} | 66 +-- .../php/{php-7.0.5.ebuild => php-7.0.6.ebuild} | 0 4 files changed, 290 insertions(+), 299 deletions(-) diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest index b257d58..fb54636 100644 --- a/dev-lang/php/Manifest +++ b/dev-lang/php/Manifest @@ -1,7 +1,9 @@ DIST php-5.4.45.tar.bz2 12703324 SHA256 4e0d28b1554c95cfaea6fa2b64aac85433f158ce72bb571bcd5574f98f4c6582 SHA512 ba22207da70e5e8ddf9a1f41bbeb54ef4917630006c3412db8f858782baaa3ff49d7e5ca59bed76c37fc11dc518c475b81f33f0f32c533c8f00be338e0b0d9c5 WHIRLPOOL b34e465dd193e9c1f5dedd7c6f279bb10471e31120f2a84246927f160adb1e54ea56563c719e59ed0654e2fd0805cebcc00198d6f6153791edef52fd0f2288a7 DIST php-5.5.33.tar.bz2 13686486 SHA256 c490b1ed4df596b48eb68f630d89ca512945e2650840e7dace1119cc7e600aa9 SHA512 a0ac57adcc4b0caec153265a8d1ded8d4d0f71b44f08158feb0add9c8fdd36826767882e85dd03399cf146800eddcb6b6cc1b21051d4fc4371e3f61b1169132b WHIRLPOOL 373c61677adb89506cc4621d1c7a0732f6454a8679a797807631f2286188bb990dfcaf34b4108edf7b1819424100fa0d7060f0f792a65dc5f1c130cfa00e6b45 DIST php-5.5.34.tar.bz2 13686681 SHA256 af88884416a92619de842ad0fd23f7f7e8140efb0b9194f98a38a78781e5851c SHA512 c4269f79f5acaac64e9d2e20feef4bbd5aa7a84e69445dee64bf068197d611aa8ceb3697ae6461d8c96068be7839f22eeaff61f201f6e7a8749d284eaa68c0f8 WHIRLPOOL f4771f614176242a9a3e27185c98822493ca1b1982b5b11b3ee53d952534c69a73e0625b589723cc153da0978b27a8e55c7f9056b81b7a282dc385d22f4fdf02 +DIST php-5.5.35.tar.bz2 13690152 SHA256 2d648dd648e820fd64693ce72f9bf07064d147220e594e39fb9f6310238258d7 SHA512 cfa62f83cd79b678c55ffdb1325906962bb7dae23fdbe963d57c3b24d13223229448f4c45727df1ab042bbd2db85804051c66993c28c68c0c873481cfe7e6834 WHIRLPOOL e7b765b6d99e7f9c0e18cae64577d0e7e7eb136debf565f49ab02a962046437064f810d1a407546e2f83d69cfb3104244424ae5a34bc83c3778aaff95984a9f7 DIST php-5.6.19.tar.bz2 14100438 SHA256 2a24a3f84971680ac0a4c71050067de4f76ee235aa4a041fae21bfa69975c168 SHA512 c8c2b3bdfc1a8abe834612c33123b4f103e841c230b53934fb7bafe11af7f1175f02ca54c92f33e8e603485e6283897bebb51acc55d1213b7433024684215c14 WHIRLPOOL f026e8779c531f887b1e292e5f1d6eafd0e3ae46f83ae8efb830ad8e0f91d86e5b002dda9e6a02987db6230557ff773d8c52dd2db423d792aed1aca292e5b92b DIST php-5.6.20.tar.bz2 14162188 SHA256 5ac7bf7caec7a79b18cf458e786fd1609ad2da771224b80bc15cc6f01b22bf1f SHA512 9e26f2564ee7329ab50d4d8d27f029c4f88317ea761888138e60d13a3cf51e49676ded406a3ec18433be2ec5d2a49c904eaa9f32d473b99d11550025e026a61c WHIRLPOOL 679c8ee4b3ddf18d94598982969fd12d053493fbe70d4b9f8d3eda4ed9ab0bb6f83d912bb7f8ebd99264beea992cce7c1083d257576551fadf537b5655d23d57 -DIST php-7.0.5.tar.bz2 14086522 SHA256 2c09af7fe64537ea795f098b9b542ead407ef83f7cdc65b3787115ccbbb51de9 SHA512 13d6dcd339211b22761586f2804c7470634e00b36e5e0b7bcf5188c017f950cbf49a2d4dd41047a7d44c70ed9474097a7290fc84ee3c26532e2ad8a2cbe706d7 WHIRLPOOL 368db472c91b3d6b2f76adb1df3feb2feeeb7d7396711c9c91b4515caf0e89612b7e58bff0d807b5d32af1b4f9aeacc20a93246a8644af11e52b3dcb0dbd20e2 +DIST php-5.6.21.tar.bz2 14165919 SHA256 b4ed7ab574b689fd6d6494fde954826c06efc85c505e017b8d776c7c7f479590 SHA512 028d62434e7932b4a07fa7d404b8ad938f0ca7968ae2b23386038f77482984d2b6145523e11f37b9e72621c8bf40f08e38a6db1d209493770ac99e13e2fac0d0 WHIRLPOOL e5e606f0a3df1af12c9c0148a29336de0d00a8d7cedbb42727a3e1b6a700e0dcda63c7086e59f175ec060cbf910c2b12815ae3c08bb73d43a84b4f3aaa5d2ed6 +DIST php-7.0.6.tar.bz2 14102594 SHA256 14ddf192a9965c858c1e742a61456be2f34a4db87556172c0d76f08de96329b7 SHA512 7f44cc5df3b9bb4394ac39069fdc2993086dd8e159e97275bf5fa4dd399d416e9ea1b057cdf855bae1c0f9c2129af1914495d9d2512ce90a7dd3ce4206aa9286 WHIRLPOOL dfb19b2bee5ea79fc08039544c350e58b329f439fb21b0b75d3b83ae151f449678614fad76829b5d86b885423fe6e1b21622f58aa598c6450732f164ae596b1b DIST php-patchset-5.4-r2.tar.bz2 5824 SHA256 4a47f4d31f50a244f85349486cdb3474cf315562e097ed4c116c2b9b5730ecef SHA512 3c2523458a627373da7acb93fb2cd621f50b19fe2ba1d30beb62eeaaa39045262b917cfd0b631046fec9c8027cfa99bd0426a079ab45eb172b21d25d6e085dde WHIRLPOOL fe4f015e2f0dc66cc23ef16fb5bb33117952593ae0770d4bcd37ecc1c431cbcc7874189d265696305c60b4e395e7ce902667e38203db46867304868271affdea diff --git a/dev-lang/php/php-7.0.5.ebuild b/dev-lang/php/php-5.5.35.ebuild similarity index 55% copy from dev-lang/php/php-7.0.5.ebuild copy to dev-lang/php/php-5.5.35.ebuild index 92b6507..6c0c143 100644 --- a/dev-lang/php/php-7.0.5.ebuild +++ b/dev-lang/php/php-5.5.35.ebuild @@ -4,7 +4,7 @@ EAPI=5 -inherit eutils autotools flag-o-matic versionator depend.apache apache-module libtool systemd +inherit eutils autotools flag-o-matic versionator depend.apache apache-module db-use libtool systemd KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" @@ -12,7 +12,7 @@ function php_get_uri () { case "${1}" in "php-pre") - echo "http://downloads.php.net/ab/${2}" + echo "http://downloads.php.net/dsp/${2}" ;; "php") echo "http://www.php.net/distributions/${2}" @@ -56,7 +56,7 @@ LICENSE="PHP-3" S="${WORKDIR}/${PHP_P}" # We can build the following SAPIs in the given order -SAPIS="embed cli cgi fpm apache2 phpdbg" +SAPIS="embed cli cgi fpm apache2" # SAPIs and SAPI-specific USE flags (cli SAPI is default on): IUSE="${IUSE} @@ -67,30 +67,20 @@ IUSE="${IUSE} bcmath berkdb bzip2 calendar cdb cjk crypt +ctype curl debug enchant exif frontbase +fileinfo +filter firebird flatfile ftp gd gdbm gmp +hash +iconv imap inifile - intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl - mhash mssql mysql mysqli nls + intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit mhash + mssql mysql libmysqlclient mysqli nls oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm readline recode selinux +session sharedmem +simplexml snmp soap sockets spell sqlite ssl - sysvipc systemd tidy +tokenizer truetype unicode vpx wddx + sybase-ct sysvipc systemd tidy +tokenizer truetype unicode vpx wddx +xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib" DEPEND=" - >=app-eselect/eselect-php-0.9.1[apache2?,fpm?] + >=app-eselect/eselect-php-0.7.1-r3[apache2?,fpm?] >=dev-libs/libpcre-8.32[unicode] apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=] - <www-servers/apache-2.4[threads=] ) )" - -# The supported (that is, autodetected) versions of BDB are listed in -# the ./configure script. Other versions *work*, but we need to stick to -# the ones that can be detected to avoid a repeat of bug #564824. -DEPEND="${DEPEND} - berkdb? ( || ( sys-libs/db:5.3 - sys-libs/db:5.1 - sys-libs/db:4.8 - sys-libs/db:4.7 - sys-libs/db:4.6 - sys-libs/db:4.5 ) ) + <www-servers/apache-2.4[threads=] ) ) + berkdb? ( =sys-libs/db-4* ) bzip2? ( app-arch/bzip2 ) cdb? ( || ( dev-db/cdb dev-db/tinycdb ) ) cjk? ( !gd? ( @@ -109,7 +99,7 @@ DEPEND="${DEPEND} firebird? ( dev-db/firebird ) gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib ) gdbm? ( >=sys-libs/gdbm-1.8.0 ) - gmp? ( dev-libs/gmp:0 ) + gmp? ( >=dev-libs/gmp-4.1.2 ) iconv? ( virtual/libiconv ) imap? ( virtual/imap-c-client[ssl=] ) intl? ( dev-libs/icu:= ) @@ -119,12 +109,16 @@ DEPEND="${DEPEND} ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 ) libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) ) mssql? ( dev-db/freetds[mssql] ) + libmysqlclient? ( + mysql? ( virtual/mysql ) + mysqli? ( >=virtual/mysql-4.1 ) + ) nls? ( sys-devel/gettext ) oci8-instant-client? ( dev-db/oracle-instantclient-basic ) odbc? ( >=dev-db/unixODBC-1.8.13 ) - postgres? ( dev-db/postgresql:* ) + postgres? ( dev-db/postgresql ) qdbm? ( dev-db/qdbm ) - readline? ( sys-libs/readline:0 ) + readline? ( sys-libs/readline ) recode? ( app-text/recode ) sharedmem? ( dev-libs/mm ) simplexml? ( >=dev-libs/libxml2-2.6.8 ) @@ -132,13 +126,12 @@ DEPEND="${DEPEND} soap? ( >=dev-libs/libxml2-2.6.8 ) spell? ( >=app-text/aspell-0.50 ) sqlite? ( >=dev-db/sqlite-3.7.6.3 ) - ssl? ( - !libressl? ( dev-libs/openssl:0 ) - libressl? ( dev-libs/libressl ) - ) + ssl? ( >=dev-libs/openssl-0.9.7 ) + sybase-ct? ( dev-db/freetds ) tidy? ( app-text/htmltidy ) truetype? ( =media-libs/freetype-2* + >=media-libs/t1lib-5.0.0 !gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib ) ) @@ -162,9 +155,7 @@ DEPEND="${DEPEND} php="=${CATEGORY}/${PF}" -# Without USE=readline or libedit, the interactive "php -a" CLI will hang. REQUIRED_USE=" - cli? ( ^^ ( readline libedit ) ) truetype? ( gd ) vpx? ( gd ) cjk? ( gd ) @@ -181,15 +172,18 @@ REQUIRED_USE=" ldap-sasl? ( ldap ) mhash? ( hash ) phar? ( hash ) + libmysqlclient? ( || ( + mysql + mysqli + pdo + ) ) qdbm? ( !gdbm ) readline? ( !libedit ) - recode? ( !imap !mysqli ) + recode? ( !imap !mysql !mysqli ) sharedmem? ( !threads ) - mysql? ( || ( mysqli pdo ) ) - - || ( cli cgi fpm apache2 embed phpdbg )" + !cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )" RDEPEND="${DEPEND}" @@ -229,16 +223,16 @@ php_install_ini() { php_set_ini_dir "${phpsapi}" local phpinisrc="${PHP_INI_UPSTREAM}-${phpsapi}" - cp "${PHP_INI_UPSTREAM}" "${phpinisrc}" || die + cp "${PHP_INI_UPSTREAM}" "${phpinisrc}" # default to /tmp for save_path, bug #282768 - sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die + sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" # Set the extension dir - sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" -i "${phpinisrc}" || die + sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" -i "${phpinisrc}" # Set the include path to point to where we want to find PEAR packages - sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die + sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" dodir "${PHP_INI_DIR#${EPREFIX}}" insinto "${PHP_INI_DIR#${EPREFIX}}" @@ -252,23 +246,27 @@ php_install_ini() { if use_if_iuse opcache; then elog "Adding opcache to $PHP_EXT_INI_DIR" - echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \ - "${D}/${PHP_EXT_INI_DIR}"/opcache.ini - dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \ - "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini" + echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> "${D}/${PHP_EXT_INI_DIR}"/opcache.ini + dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini" fi # SAPI-specific handling + if [[ "${sapi}" == "fpm" ]] ; then - einfo "Installing FPM config files php-fpm.conf and www.conf" + [[ -z ${PHP_FPM_CONF_VER} ]] && PHP_FPM_CONF_VER=0 + einfo "Installing FPM CGI config file php-fpm.conf" insinto "${PHP_INI_DIR#${EPREFIX}}" - doins sapi/fpm/php-fpm.conf - insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d" - doins sapi/fpm/www.conf + newins "${FILESDIR}/php-fpm-r${PHP_FPM_CONF_VER}.conf" php-fpm.conf + + # Remove bogus /etc/php-fpm.conf.default (bug 359906) + [[ -f "${ED}/etc/php-fpm.conf.default" ]] && rm "${ED}/etc/php-fpm.conf.default" fi + # Install PHP ini files into /usr/share/php + dodoc php.ini-development dodoc php.ini-production + } php_set_ini_dir() { @@ -278,6 +276,14 @@ php_set_ini_dir() { } src_prepare() { + # USE=sharedmem (session/mod_mm to be exact) tries to mmap() this path + # ([empty session.save_path]/session_mm_[sapi][gid].sem) + # there is no easy way to circumvent that, all php calls during + # install use -n, so no php.ini file will be used. + # As such, this is the easiest way to get around + addpredict /session_mm_cli250.sem + addpredict /session_mm_cli0.sem + # Change PHP branding # Get the alpha/beta/rc version sed -re "s|^(PHP_EXTRA_VERSION=\").*(\")|\1-pl${PR/r/}-gentoo\2|g" \ @@ -287,6 +293,13 @@ src_prepare() { sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \ -i configure.in || die "Failed to fix server platform name" + # Prevent PHP from activating the Apache config, + # as we will do that ourselves + sed -i \ + -e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \ + -e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \ + configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4 + # Patch PHP to support heimdal instead of mit-krb5 if has_version "app-crypt/heimdal" ; then sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \ @@ -295,27 +308,17 @@ src_prepare() { || die "Failed to fix heimdal crypt library reference" fi - # Add user patches #357637 + #Add user patches #357637 epatch_user - # Force rebuilding aclocal.m4 - rm -f aclocal.m4 || die + #force rebuilding aclocal.m4 + rm aclocal.m4 eautoreconf if [[ ${CHOST} == *-darwin* ]] ; then # http://bugs.php.net/bug.php?id=48795, bug #343481 sed -i -e '/BUILD_CGI="\\$(CC)/s/CC/CXX/' configure || die fi - - # In php-7.x, the FPM pool configuration files have been split off - # of the main config. By default the pool config files go in - # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the - # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later - # we'll install the pool configuration file "www.conf" there. - php_set_ini_dir fpm - sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \ - sapi/fpm/php-fpm.conf.in \ - || die 'failed to move the include directory in php-fpm.conf' } src_configure() { @@ -324,184 +327,196 @@ src_configure() { PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}" - # The php-fpm config file wants localstatedir to be ${EPREFIX}/var - # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002. - local our_conf=( + # This is a global variable and should be in caps. It isn't because the + # phpconfutils eclass relies on exactly this name... + # for --with-libdir see bug #327025 + my_conf=" --prefix="${PHP_DESTDIR}" - --mandir="${PHP_DESTDIR}/man" - --infodir="${PHP_DESTDIR}/info" - --libdir="${PHP_DESTDIR}/lib" - --with-libdir="$(get_libdir)" - --localstatedir="${EPREFIX}/var" + --mandir="${PHP_DESTDIR}"/man + --infodir="${PHP_DESTDIR}"/info + --libdir="${PHP_DESTDIR}"/lib + --with-libdir=$(get_libdir) --without-pear - $(use_enable threads maintainer-zts) - ) - - our_conf+=( - $(use_enable bcmath bcmath) - $(use_with bzip2 bz2 "${EPREFIX}/usr") - $(use_enable calendar calendar) - $(use_enable ctype ctype) - $(use_with curl curl "${EPREFIX}/usr") - $(use_enable xml dom) - $(use_with enchant enchant "${EPREFIX}/usr") - $(use_enable exif exif) - $(use_enable fileinfo fileinfo) - $(use_enable filter filter) - $(use_enable ftp ftp) - $(use_with nls gettext "${EPREFIX}/usr") - $(use_with gmp gmp "${EPREFIX}/usr") - $(use_enable hash hash) - $(use_with mhash mhash "${EPREFIX}/usr") - $(use_with iconv iconv \ - $(use elibc_glibc || use elibc_musl || echo "${EPREFIX}/usr")) - $(use_enable intl intl) - $(use_enable ipv6 ipv6) - $(use_enable json json) - $(use_with kerberos kerberos "${EPREFIX}/usr") - $(use_enable xml libxml) - $(use_with xml libxml-dir "${EPREFIX}/usr") - $(use_enable unicode mbstring) - $(use_with crypt mcrypt "${EPREFIX}/usr") - $(use_with unicode onig "${EPREFIX}/usr") - $(use_with ssl openssl "${EPREFIX}/usr") - $(use_with ssl openssl-dir "${EPREFIX}/usr") - $(use_enable pcntl pcntl) - $(use_enable phar phar) - $(use_enable pdo pdo) - $(use_enable opcache opcache) - $(use_with postgres pgsql "${EPREFIX}/usr") - $(use_enable posix posix) - $(use_with spell pspell "${EPREFIX}/usr") - $(use_with recode recode "${EPREFIX}/usr") - $(use_enable simplexml simplexml) - $(use_enable sharedmem shmop) - $(use_with snmp snmp "${EPREFIX}/usr") - $(use_enable soap soap) - $(use_enable sockets sockets) - $(use_with sqlite sqlite3 "${EPREFIX}/usr") - $(use_enable sysvipc sysvmsg) - $(use_enable sysvipc sysvsem) - $(use_enable sysvipc sysvshm) - $(use_with systemd fpm-systemd) - $(use_with tidy tidy "${EPREFIX}/usr") - $(use_enable tokenizer tokenizer) - $(use_enable wddx wddx) - $(use_enable xml xml) - $(use_enable xmlreader xmlreader) - $(use_enable xmlwriter xmlwriter) - $(use_with xmlrpc xmlrpc) - $(use_with xslt xsl "${EPREFIX}/usr") - $(use_enable zip zip) - $(use_with zlib zlib "${EPREFIX}/usr") - $(use_enable debug debug) - ) + $(use_enable threads maintainer-zts)" + + # extension USE flag shared + my_conf+=" + $(use_enable bcmath bcmath ) + $(use_with bzip2 bz2 "${EPREFIX}"/usr) + $(use_enable calendar calendar ) + $(use_enable ctype ctype ) + $(use_with curl curl "${EPREFIX}"/usr) + $(use_enable xml dom ) + $(use_with enchant enchant "${EPREFIX}"/usr) + $(use_enable exif exif ) + $(use_enable fileinfo fileinfo ) + $(use_enable filter filter ) + $(use_enable ftp ftp ) + $(use_with nls gettext "${EPREFIX}"/usr) + $(use_with gmp gmp "${EPREFIX}"/usr) + $(use_enable hash hash ) + $(use_with mhash mhash "${EPREFIX}"/usr) + $(use_with iconv iconv $(use elibc_glibc || use elibc_musl || echo "${EPREFIX}"/usr)) + $(use_enable intl intl ) + $(use_enable ipv6 ipv6 ) + $(use_enable json json ) + $(use_with kerberos kerberos "${EPREFIX}"/usr) + $(use_enable xml libxml ) + $(use_with xml libxml-dir "${EPREFIX}"/usr) + $(use_enable unicode mbstring ) + $(use_with crypt mcrypt "${EPREFIX}"/usr) + $(use_with mssql mssql "${EPREFIX}"/usr) + $(use_with unicode onig "${EPREFIX}"/usr) + $(use_with ssl openssl "${EPREFIX}"/usr) + $(use_with ssl openssl-dir "${EPREFIX}"/usr) + $(use_enable pcntl pcntl ) + $(use_enable phar phar ) + $(use_enable pdo pdo ) + $(use_enable opcache opcache ) + $(use_with postgres pgsql "${EPREFIX}"/usr) + $(use_enable posix posix ) + $(use_with spell pspell "${EPREFIX}"/usr) + $(use_with recode recode "${EPREFIX}"/usr) + $(use_enable simplexml simplexml ) + $(use_enable sharedmem shmop ) + $(use_with snmp snmp "${EPREFIX}"/usr) + $(use_enable soap soap ) + $(use_enable sockets sockets ) + $(use_with sqlite sqlite3 "${EPREFIX}"/usr) + $(use_with sybase-ct sybase-ct "${EPREFIX}"/usr) + $(use_enable sysvipc sysvmsg ) + $(use_enable sysvipc sysvsem ) + $(use_enable sysvipc sysvshm ) + $(use_with systemd fpm-systemd) + $(use_with tidy tidy "${EPREFIX}"/usr) + $(use_enable tokenizer tokenizer ) + $(use_enable wddx wddx ) + $(use_enable xml xml ) + $(use_enable xmlreader xmlreader ) + $(use_enable xmlwriter xmlwriter ) + $(use_with xmlrpc xmlrpc) + $(use_with xslt xsl "${EPREFIX}"/usr) + $(use_enable zip zip ) + $(use_with zlib zlib "${EPREFIX}"/usr) + $(use_enable debug debug )" # DBA support if use cdb || use berkdb || use flatfile || use gdbm || use inifile \ || use qdbm ; then - our_conf+=( "--enable-dba${shared}" ) + my_conf="${my_conf} --enable-dba${shared}" fi # DBA drivers support - our_conf+=( - $(use_with cdb cdb) - $(use_with berkdb db4 "${EPREFIX}/usr") - $(use_enable flatfile flatfile) - $(use_with gdbm gdbm "${EPREFIX}/usr") - $(use_enable inifile inifile) - $(use_with qdbm qdbm "${EPREFIX}/usr") - ) + my_conf+=" + $(use_with cdb cdb) + $(use_with berkdb db4 ${EPREFIX}/usr) + $(use_enable flatfile flatfile ) + $(use_with gdbm gdbm ${EPREFIX}/usr) + $(use_enable inifile inifile ) + $(use_with qdbm qdbm ${EPREFIX}/usr)" # Support for the GD graphics library - our_conf+=( - $(use_with truetype freetype-dir "${EPREFIX}/usr") - $(use_enable cjk gd-jis-conv) - $(use_with gd jpeg-dir "${EPREFIX}/usr") - $(use_with gd png-dir "${EPREFIX}/usr") - $(use_with xpm xpm-dir "${EPREFIX}/usr") - ) - if use vpx; then - our_conf+=( --with-vpx-dir="${EPREFIX}/usr" ) - fi + my_conf+=" + $(use_with truetype freetype-dir ${EPREFIX}/usr) + $(use_with truetype t1lib ${EPREFIX}/usr) + $(use_enable cjk gd-jis-conv ) + $(use_with gd jpeg-dir ${EPREFIX}/usr) + $(use_with gd png-dir ${EPREFIX}/usr) + $(use_with xpm xpm-dir ${EPREFIX}/usr) + $(use_with vpx vpx-dir ${EPREFIX}/usr)" # enable gd last, so configure can pick up the previous settings - our_conf+=( $(use_with gd gd) ) + my_conf+=" + $(use_with gd gd)" # IMAP support if use imap ; then - our_conf+=( - $(use_with imap imap "${EPREFIX}/usr") - $(use_with ssl imap-ssl "${EPREFIX}/usr") - ) + my_conf+=" + $(use_with imap imap ${EPREFIX}/usr) + $(use_with ssl imap-ssl ${EPREFIX}/usr)" fi # Interbase/firebird support - our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") ) + + if use firebird ; then + my_conf+=" + $(use_with firebird interbase ${EPREFIX}/usr)" + fi # LDAP support if use ldap ; then - our_conf+=( - $(use_with ldap ldap "${EPREFIX}/usr") - $(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr") - ) + my_conf+=" + $(use_with ldap ldap ${EPREFIX}/usr) + $(use_with ldap-sasl ldap-sasl ${EPREFIX}/usr)" fi # MySQL support local mysqllib="mysqlnd" local mysqlilib="mysqlnd" + use libmysqlclient && mysqllib="${EPREFIX}/usr" + use libmysqlclient && mysqlilib="${EPREFIX}/usr/bin/mysql_config" - our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") ) + my_conf+=" $(use_with mysql mysql $mysqllib)" + my_conf+=" $(use_with mysqli mysqli $mysqlilib)" - local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock" - if use mysql || use mysqli ; then - our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") ) + 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 # ODBC support - our_conf+=( - $(use_with odbc unixODBC "${EPREFIX}/usr") - $(use_with iodbc iodbc "${EPREFIX}/usr") - ) + if use odbc ; then + my_conf+=" + $(use_with odbc unixODBC ${EPREFIX}/usr)" + fi + + if use iodbc ; then + my_conf+=" + $(use_with iodbc iodbc ${EPREFIX}/usr)" + fi # Oracle support - our_conf+=( $(use_with oci8-instant-client oci8) ) + if use oci8-instant-client ; then + my_conf+=" + $(use_with oci8-instant-client oci8)" + fi # PDO support if use pdo ; then - our_conf+=( - $(use_with mssql pdo-dblib "${EPREFIX}/usr") - $(use_with mysql pdo-mysql "${mysqllib}") - $(use_with postgres pdo-pgsql) - $(use_with sqlite pdo-sqlite "${EPREFIX}/usr") - $(use_with firebird pdo-firebird "${EPREFIX}/usr") - $(use_with odbc pdo-odbc "unixODBC,${EPREFIX}/usr") - $(use_with oci8-instant-client pdo-oci) - ) + my_conf+=" + $(use_with mssql pdo-dblib ) + $(use_with mysql pdo-mysql ${mysqllib}) + $(use_with postgres pdo-pgsql ) + $(use_with sqlite pdo-sqlite ${EPREFIX}/usr) + $(use_with odbc pdo-odbc unixODBC,${EPREFIX}/usr)" + if use oci8-instant-client ; then + my_conf+=" + $(use_with oci8-instant-client pdo-oci)" + fi fi # readline/libedit support - our_conf+=( - $(use_with readline readline "${EPREFIX}/usr") - $(use_with libedit libedit "${EPREFIX}/usr") - ) + my_conf+=" + $(use_with readline readline ${EPREFIX}/usr) + $(use_with libedit libedit ${EPREFIX}/usr)" # Session support if use session ; then - our_conf+=( $(use_with sharedmem mm "${EPREFIX}/usr") ) + my_conf+=" + $(use_with sharedmem mm ${EPREFIX}/usr)" else - our_conf+=( $(use_enable session session) ) + my_conf+=" + $(use_enable session session )" fi # Use pic for shared modules such as apache2's mod_php - our_conf+=( --with-pic ) + my_conf="${my_conf} --with-pic" # we use the system copy of pcre # --with-pcre-regex affects ext/pcre # --with-pcre-dir affects ext/filter and ext/zip - our_conf+=( - --with-pcre-regex="${EPREFIX}/usr" - --with-pcre-dir="${EPREFIX}/usr" - ) + my_conf="${my_conf} --with-pcre-regex=${EPREFIX}/usr --with-pcre-dir=${EPREFIX}/usr" # Catch CFLAGS problems # Fixes bug #14067. @@ -509,56 +524,43 @@ src_configure() { replace-cpu-flags "k6*" "i586" # Support user-passed configuration parameters - our_conf+=( ${EXTRA_ECONF:-} ) + my_conf="${my_conf} ${EXTRA_ECONF:-}" # Support the Apache2 extras, they must be set globally for all # SAPIs to work correctly, especially for external PHP extensions - mkdir -p "${WORKDIR}/sapis-build" || die + mkdir -p "${WORKDIR}/sapis-build" for one_sapi in $SAPIS ; do use "${one_sapi}" || continue php_set_ini_dir "${one_sapi}" - # The BUILD_DIR variable is used to determine where to output - # the files that autotools creates. This was all originally - # based on the autotools-utils eclass. - BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}" - cp -r "${S}" "${BUILD_DIR}" || die - cd "${BUILD_DIR}" || die + cp -r "${S}" "${WORKDIR}/sapis-build/${one_sapi}" + cd "${WORKDIR}/sapis-build/${one_sapi}" - local sapi_conf=( - --with-config-file-path="${PHP_INI_DIR}" - --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}" - ) + sapi_conf="${my_conf} --with-config-file-path=${PHP_INI_DIR} + --with-config-file-scan-dir=${PHP_EXT_INI_DIR_ACTIVE}" for sapi in $SAPIS ; do case "$sapi" in - cli|cgi|embed|fpm|phpdbg) + cli|cgi|embed|fpm) if [[ "${one_sapi}" == "${sapi}" ]] ; then - sapi_conf+=( "--enable-${sapi}" ) + sapi_conf="${sapi_conf} --enable-${sapi}" else - sapi_conf+=( "--disable-${sapi}" ) + sapi_conf="${sapi_conf} --disable-${sapi}" fi ;; apache2) if [[ "${one_sapi}" == "${sapi}" ]] ; then - sapi_conf+=( --with-apxs2="${EPREFIX}/usr/sbin/apxs" ) + sapi_conf="${sapi_conf} --with-apxs2=${EPREFIX}/usr/sbin/apxs" else - sapi_conf+=( --without-apxs2 ) + sapi_conf="${sapi_conf} --without-apxs2" fi ;; esac done - # Construct the $myeconfargs array by concatenating $our_conf - # (the common args) and $sapi_conf (the SAPI-specific args). - local myeconfargs=( "${our_conf[@]}" ) - myeconfargs+=( "${sapi_conf[@]}" ) - - pushd "${BUILD_DIR}" > /dev/null || die - econf "${myeconfargs[@]}" - popd > /dev/null || die + econf ${sapi_conf} done } @@ -569,9 +571,8 @@ src_compile() { for sapi in ${SAPIS} ; do if use "${sapi}"; then - cd "${WORKDIR}/sapis-build/$sapi" || \ - die "Failed to change dir to ${WORKDIR}/sapis-build/$1" - emake + cd "${WORKDIR}/sapis-build/$sapi" || "Failed to change dir to ${WORKDIR}/sapis-build/$1" + emake || die "emake failed" fi done } @@ -593,14 +594,15 @@ src_install() { dodir "${PHP_DESTDIR#${EPREFIX}}/bin" # Install php environment (without any sapis) - cd "${WORKDIR}/sapis-build/$first_sapi" || die + cd "${WORKDIR}/sapis-build/$first_sapi" emake INSTALL_ROOT="${D}" \ - install-build install-headers install-programs + install-build install-headers install-programs \ + || die "emake install failed" local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)" # Create the directory where we'll put version-specific php scripts - keepdir "/usr/share/php${PHP_MV}" + keepdir /usr/share/php${PHP_MV} local sapi="", file="" local sapi_list="" @@ -608,14 +610,13 @@ src_install() { for sapi in ${SAPIS}; do if use "${sapi}" ; then einfo "Installing SAPI: ${sapi}" - cd "${WORKDIR}/sapis-build/${sapi}" || die + cd "${WORKDIR}/sapis-build/${sapi}" if [[ "${sapi}" == "apache2" ]] ; then # We're specifically not using emake install-sapi as libtool # may cause unnecessary relink failures (see bug #351266) insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/" - newins ".libs/libphp${PHP_MV}$(get_libname)" \ - "libphp${PHP_MV}$(get_libname)" + newins ".libs/libphp5$(get_libname)" "libphp${PHP_MV}$(get_libname)" keepdir "/usr/$(get_libdir)/apache2/modules" else # needed each time, php_install_ini would reset it @@ -634,18 +635,15 @@ src_install() { embed) source="libs/libphp${PHP_MV}$(get_libname)" ;; - phpdbg) - source="sapi/phpdbg/phpdbg" - ;; *) die "unhandled sapi in src_install" ;; esac if [[ "${source}" == *"$(get_libname)" ]]; then - dolib.so "${source}" + dolib.so "${source}" || die "Unable to install ${sapi} sapi" else - dobin "${source}" + dobin "${source}" || die "Unable to install ${sapi} sapi" local name="$(basename ${source})" dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}" fi @@ -665,25 +663,26 @@ src_install() { # Installing opcache module if use_if_iuse opcache ; then - dolib.so "modules/opcache$(get_libname)" + dolib.so "modules/opcache$(get_libname)" || die "Unable to install opcache module" fi # Install env.d files - newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}" - sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die - sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die + newenvd "${FILESDIR}/20php5-envd" \ + "20php${SLOT}" + sed -e "s|/lib/|/$(get_libdir)/|g" -i \ + "${ED}/etc/env.d/20php${SLOT}" + sed -e "s|php5|php${SLOT}|g" -i \ + "${ED}/etc/env.d/20php${SLOT}" # set php-config variable correctly (bug #278439) sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \ - "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die + "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" if use fpm ; then if use systemd; then - systemd_newunit "${FILESDIR}/php-fpm_at.service" \ - "php-fpm@${SLOT}.service" + systemd_newunit "${FILESDIR}/php-fpm_at.service" "php-fpm@${SLOT}.service" else - systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \ - "php-fpm@${SLOT}.service" + systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" "php-fpm@${SLOT}.service" fi fi } @@ -702,13 +701,11 @@ src_test() { export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis/cgi/php-cgi" fi - REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \ - "session.save_path=${T}" \ - "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \ - "session.save_path=${T}" + REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d "session.save_path=${T}" \ + "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d "session.save_path=${T}" for name in ${EXPECTED_TEST_FAILURES}; do - mv "${name}.out" "${name}.out.orig" 2>/dev/null || die + mv "${name}.out" "${name}.out.orig" 2>/dev/null done local failed="$(find -name '*.out')" @@ -742,7 +739,7 @@ pkg_postinst() { # Output some general info to the user if use apache2 ; then APACHE2_MOD_DEFINE="PHP" - APACHE2_MOD_CONF="70_mod_php" # Provided by app-eselect/eselect-php + APACHE2_MOD_CONF="70_mod_php" # provided by app-eselect/eselect-php apache-module_pkg_postinst fi @@ -752,7 +749,7 @@ pkg_postinst() { if use $m ; then local ci=$(eselect php show $m) if [[ -z $ci ]]; then - eselect php set $m php${SLOT} || die + eselect php set $m php${SLOT} einfo "Switched ${m} to use php:${SLOT}" einfo elif [[ $ci != "php${SLOT}" ]] ; then @@ -763,39 +760,25 @@ pkg_postinst() { fi done - # Remove dead symlinks for SAPIs that were just disabled. For - # example, if the user has the cgi SAPI enabled, then he has an - # eselect-php symlink for it. If he later reinstalls PHP with - # USE="-cgi", that symlink will break. This call to eselect is - # supposed to remove that dead link per bug 572436. - eselect php cleanup || die - - elog "Make sure that PHP_TARGETS in ${EPREFIX}/etc/make.conf includes" - elog "php${SLOT/./-} in order to compile extensions for the ${SLOT} ABI." + elog "Make sure that PHP_TARGETS in ${EPREFIX}/etc/make.conf includes php${SLOT/./-} in order" + elog "to compile extensions for the ${SLOT} ABI" elog - elog "This ebuild installed a version of php.ini based on" - elog "php.ini-${PHP_INI_VERSION}. You can choose which version of" - elog "php.ini to install by default by setting PHP_INI_VERSION" - elog "to either 'production' or 'development' in your make.conf." - elog "Both versions of php.ini can be found with the PHP docs in" - elog "${EPREFIX}/usr/share/doc/${PF}" + if ! use readline && use cli ; then + ewarn "Note that in order to use php interactivly, you need to enable" + ewarn "the readline USE flag or php -a will hang" + fi elog - elog "For more details on how version slotting works, please see" - elog "the wiki:" + elog "This ebuild installed a version of php.ini based on php.ini-${PHP_INI_VERSION} version." + elog "You can chose which version of php.ini to install by default by setting PHP_INI_VERSION to either" + elog "'production' or 'development' in ${EPREFIX}/etc/make.conf" + elog "Both versions of php.ini can be found in ${EPREFIX}/usr/share/doc/${PF}" + elog - elog " https://wiki.gentoo.org/wiki/PHP" + elog "For more details on how minor version slotting works (PHP_TARGETS) please read the upgrade guide:" + elog "https://www.gentoo.org/proj/en/php/php-upgrading.xml" elog } -pkg_postrm() { - # This serves two purposes. First, if we have just removed the last - # installed version of PHP, then this will remove any dead symlinks - # belonging to eselect-php. Second, if a user upgrades slots from - # (say) 5.6 to 7.0 and depcleans the old slot, then this will update - # his existing symlinks to point to the new 7.0 installation. The - # latter is bug 432962. - # - # Note: the eselect-php package may not be installed at this point, - # so we can't die() if this command fails. +pkg_prerm() { eselect php cleanup } diff --git a/dev-lang/php/php-7.0.5.ebuild b/dev-lang/php/php-5.6.21.ebuild similarity index 94% copy from dev-lang/php/php-7.0.5.ebuild copy to dev-lang/php/php-5.6.21.ebuild index 92b6507..0fb581b 100644 --- a/dev-lang/php/php-7.0.5.ebuild +++ b/dev-lang/php/php-5.6.21.ebuild @@ -12,7 +12,7 @@ function php_get_uri () { case "${1}" in "php-pre") - echo "http://downloads.php.net/ab/${2}" + echo "http://downloads.php.net/dsp/${2}" ;; "php") echo "http://www.php.net/distributions/${2}" @@ -56,7 +56,7 @@ LICENSE="PHP-3" S="${WORKDIR}/${PHP_P}" # We can build the following SAPIs in the given order -SAPIS="embed cli cgi fpm apache2 phpdbg" +SAPIS="embed cli cgi fpm apache2" # SAPIs and SAPI-specific USE flags (cli SAPI is default on): IUSE="${IUSE} @@ -68,11 +68,11 @@ IUSE="${IUSE} bcmath berkdb bzip2 calendar cdb cjk enchant exif frontbase +fileinfo +filter firebird flatfile ftp gd gdbm gmp +hash +iconv imap inifile intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl - mhash mssql mysql mysqli nls + mhash mssql mysql libmysqlclient mysqli nls oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm readline recode selinux +session sharedmem +simplexml snmp soap sockets spell sqlite ssl - sysvipc systemd tidy +tokenizer truetype unicode vpx wddx + sybase-ct sysvipc systemd tidy +tokenizer truetype unicode vpx wddx +xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib" DEPEND=" @@ -119,6 +119,10 @@ DEPEND="${DEPEND} ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 ) libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) ) mssql? ( dev-db/freetds[mssql] ) + libmysqlclient? ( + mysql? ( virtual/mysql ) + mysqli? ( >=virtual/mysql-4.1 ) + ) nls? ( sys-devel/gettext ) oci8-instant-client? ( dev-db/oracle-instantclient-basic ) odbc? ( >=dev-db/unixODBC-1.8.13 ) @@ -136,9 +140,11 @@ DEPEND="${DEPEND} !libressl? ( dev-libs/openssl:0 ) libressl? ( dev-libs/libressl ) ) + sybase-ct? ( dev-db/freetds ) tidy? ( app-text/htmltidy ) truetype? ( =media-libs/freetype-2* + >=media-libs/t1lib-5.0.0 !gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib ) ) @@ -181,15 +187,18 @@ REQUIRED_USE=" ldap-sasl? ( ldap ) mhash? ( hash ) phar? ( hash ) + libmysqlclient? ( || ( + mysql + mysqli + pdo + ) ) qdbm? ( !gdbm ) readline? ( !libedit ) - recode? ( !imap !mysqli ) + recode? ( !imap !mysql !mysqli ) sharedmem? ( !threads ) - mysql? ( || ( mysqli pdo ) ) - - || ( cli cgi fpm apache2 embed phpdbg )" + !cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )" RDEPEND="${DEPEND}" @@ -260,11 +269,9 @@ php_install_ini() { # SAPI-specific handling if [[ "${sapi}" == "fpm" ]] ; then - einfo "Installing FPM config files php-fpm.conf and www.conf" + einfo "Installing FPM config file php-fpm.conf" insinto "${PHP_INI_DIR#${EPREFIX}}" doins sapi/fpm/php-fpm.conf - insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d" - doins sapi/fpm/www.conf fi dodoc php.ini-development @@ -287,6 +294,14 @@ src_prepare() { sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \ -i configure.in || die "Failed to fix server platform name" + # Prevent PHP from activating the Apache config, + # as we will do that ourselves + sed -i \ + -e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \ + -e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \ + configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4 \ + || die + # Patch PHP to support heimdal instead of mit-krb5 if has_version "app-crypt/heimdal" ; then sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \ @@ -306,16 +321,6 @@ src_prepare() { # http://bugs.php.net/bug.php?id=48795, bug #343481 sed -i -e '/BUILD_CGI="\\$(CC)/s/CC/CXX/' configure || die fi - - # In php-7.x, the FPM pool configuration files have been split off - # of the main config. By default the pool config files go in - # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the - # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later - # we'll install the pool configuration file "www.conf" there. - php_set_ini_dir fpm - sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \ - sapi/fpm/php-fpm.conf.in \ - || die 'failed to move the include directory in php-fpm.conf' } src_configure() { @@ -363,6 +368,7 @@ src_configure() { $(use_with xml libxml-dir "${EPREFIX}/usr") $(use_enable unicode mbstring) $(use_with crypt mcrypt "${EPREFIX}/usr") + $(use_with mssql mssql "${EPREFIX}/usr") $(use_with unicode onig "${EPREFIX}/usr") $(use_with ssl openssl "${EPREFIX}/usr") $(use_with ssl openssl-dir "${EPREFIX}/usr") @@ -380,6 +386,7 @@ src_configure() { $(use_enable soap soap) $(use_enable sockets sockets) $(use_with sqlite sqlite3 "${EPREFIX}/usr") + $(use_with sybase-ct sybase-ct "${EPREFIX}/usr") $(use_enable sysvipc sysvmsg) $(use_enable sysvipc sysvsem) $(use_enable sysvipc sysvshm) @@ -416,14 +423,13 @@ src_configure() { # Support for the GD graphics library our_conf+=( $(use_with truetype freetype-dir "${EPREFIX}/usr") + $(use_with truetype t1lib "${EPREFIX}/usr") $(use_enable cjk gd-jis-conv) $(use_with gd jpeg-dir "${EPREFIX}/usr") $(use_with gd png-dir "${EPREFIX}/usr") $(use_with xpm xpm-dir "${EPREFIX}/usr") + $(use_with vpx vpx-dir "${EPREFIX}/usr") ) - if use vpx; then - our_conf+=( --with-vpx-dir="${EPREFIX}/usr" ) - fi # enable gd last, so configure can pick up the previous settings our_conf+=( $(use_with gd gd) ) @@ -449,7 +455,10 @@ src_configure() { # MySQL support local mysqllib="mysqlnd" local mysqlilib="mysqlnd" + use libmysqlclient && mysqllib="${EPREFIX}/usr" + use libmysqlclient && mysqlilib="${EPREFIX}/usr/bin/mysql_config" + our_conf+=( $(use_with mysql mysql "${mysqllib}") ) our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") ) local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock" @@ -469,7 +478,7 @@ src_configure() { # PDO support if use pdo ; then our_conf+=( - $(use_with mssql pdo-dblib "${EPREFIX}/usr") + $(use_with mssql pdo-dblib) $(use_with mysql pdo-mysql "${mysqllib}") $(use_with postgres pdo-pgsql) $(use_with sqlite pdo-sqlite "${EPREFIX}/usr") @@ -533,7 +542,7 @@ src_configure() { for sapi in $SAPIS ; do case "$sapi" in - cli|cgi|embed|fpm|phpdbg) + cli|cgi|embed|fpm) if [[ "${one_sapi}" == "${sapi}" ]] ; then sapi_conf+=( "--enable-${sapi}" ) else @@ -614,7 +623,7 @@ src_install() { # We're specifically not using emake install-sapi as libtool # may cause unnecessary relink failures (see bug #351266) insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/" - newins ".libs/libphp${PHP_MV}$(get_libname)" \ + newins ".libs/libphp5$(get_libname)" \ "libphp${PHP_MV}$(get_libname)" keepdir "/usr/$(get_libdir)/apache2/modules" else @@ -634,9 +643,6 @@ src_install() { embed) source="libs/libphp${PHP_MV}$(get_libname)" ;; - phpdbg) - source="sapi/phpdbg/phpdbg" - ;; *) die "unhandled sapi in src_install" ;; diff --git a/dev-lang/php/php-7.0.5.ebuild b/dev-lang/php/php-7.0.6.ebuild similarity index 100% rename from dev-lang/php/php-7.0.5.ebuild rename to dev-lang/php/php-7.0.6.ebuild