commit: 000280c41140b7c1b1987a547dd26498a2042697
Author: Brian Evans <grknight <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 26 14:50:58 2016 +0000
Commit: Brian Evans <grknight <AT> gentoo <DOT> org>
CommitDate: Tue Jul 26 14:50:58 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=000280c4
dev-lang/php: Security version bump wrt bug 587246
Also use .xz from upstream wrt bug 589692
Package-Manager: portage-2.3.0
dev-lang/php/Manifest | 4 +-
.../php/{php-7.0.8-r2.ebuild => php-5.5.38.ebuild} | 577 ++++++++++-----------
.../php/{php-7.0.8-r2.ebuild => php-5.6.24.ebuild} | 72 +--
.../php/{php-7.0.8-r2.ebuild => php-7.0.9.ebuild} | 2 +-
4 files changed, 323 insertions(+), 332 deletions(-)
diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest
index 4d3d129..6638262 100644
--- a/dev-lang/php/Manifest
+++ b/dev-lang/php/Manifest
@@ -1,3 +1,5 @@
DIST php-5.5.37.tar.bz2 13699851 SHA256
d2380ebe46caf17f2c4cd055867d00a82e6702dc5f62dc29ce864a5742905d88 SHA512
d2da921f3efd858e1cb8004873e377ca9c5821d5269d5b8e7c9be830b183f4d18f737b14653f65a43c0957bdca994e09a476d77e3a29a11e357abc24618c4c0f
WHIRLPOOL
8db12b1d090bc1bfb3f5b20c661ba05588b8f988484d1887a959f943dd6f1756cb62bac811c809af516e6c3582b64388443546a3b4a17f0527a69fcbafc0452c
+DIST php-5.5.38.tar.xz 11077780 SHA256
cb527c44b48343c8557fe2446464ff1d4695155a95601083e5d1f175df95580f SHA512
c2cdb18b2c9edaeff66591e8f58f8ff488260f537cdf9ce09820c163f20ff5209c0def89343d429932c9506ad4ef3daacf224946dac1c59622501092483f30c6
WHIRLPOOL
4380c1daa39f04f90d1457152e366720b295e96aba6859625c6b375a3785b4e0f30fea590c1ee1edb439c2a405446526c702a003d68ea6c817ab8684068a7581
DIST php-5.6.23.tar.bz2 14178077 SHA256
facd280896d277e6f7084b60839e693d4db68318bfc92085d3dc0251fd3558c7 SHA512
92be3685926f302223465e9673496971f0ee1b05c7b3a09682d4ef93a27b4c17e5c53c36acab15d26f38508f6d65bebe11a6f0f0fc98b27eafe95b02b4d9897d
WHIRLPOOL
71375395742a83ec0f55bd7edf5eeff732e4db24f77f436f519ca81a2ceeb0bac65549ca1ffd34cb7b593771b5f4ccb984900841a20c1620a6121e4fa14ab086
-DIST php-7.0.8.tar.bz2 14105805 SHA256
66dc7ba388490e07b1313fe3a06b1fa822e1310585fe29f4909995f131e27c8d SHA512
a1a119ff95ad3902264dbc267753af0cf82b5dddbfcf09a8fc2bc519e16021cbf4bc7f2b33c4fec46d7be7bed8db315371ee11390a6055adf908a3b28a6a6921
WHIRLPOOL
5907158c1974715cda7abca0dec6736fb265372cd643d2699b91936c964b72334468eef778e485125df8fc7d21064a394c735510e0731321360e7272aa83d41d
+DIST php-5.6.24.tar.xz 12394980 SHA256
ed7c38c6dac539ade62e08118258f4dac0c49beca04d8603bee4e0ea6ca8250b SHA512
1849c58a8c6eeb3efc6b43f874314b146b4a32d886086bc1648fc84e6062148a9373dea9c3713587c3980df70a0e51bf6e5ab5a87b9eff57e54670c5c2ded86b
WHIRLPOOL
4e6466444824640a246e8cd02f7da7bf72ff55c714729f7ed7581be63b2f1d87a0f5bf5dab5e09499fabc61d32162aa35cfb095f7e478f7454aacdec2465a7f5
+DIST php-7.0.9.tar.xz 12240712 SHA256
970c322ba3e472cb0264b8ba9d4d92e87918da5d0cca53c4aba2a70545b8626d SHA512
95bbc912191b0f53a28863c76c017b5f9bf18346041916fed566b9212bb4c46c79bab422b842b1a8eeb173ebfc3df8cf6faf3337a5712f10ef455a31343cc631
WHIRLPOOL
f5d1f27d29e7c1b64bb9c37dfc198473b1a78a18d42f7dba24a619f3461ce85375b6debb5d761aaaa14facc4918c7ee0630a44afe31c9cc06c3a6d62ccd679f6
diff --git a/dev-lang/php/php-7.0.8-r2.ebuild b/dev-lang/php/php-5.5.38.ebuild
similarity index 52%
copy from dev-lang/php/php-7.0.8-r2.ebuild
copy to dev-lang/php/php-5.5.38.ebuild
index 4ed4d74..006daa3 100644
--- a/dev-lang/php/php-7.0.8-r2.ebuild
+++ b/dev-lang/php/php-5.5.38.ebuild
@@ -4,7 +4,7 @@
EAPI=5
-inherit eutils autotools flag-o-matic versionator 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}"
@@ -43,7 +43,7 @@ PHP_RELEASE="php"
[[ ${PV} == ${PV/_rc/} ]] || PHP_RELEASE="php-pre"
PHP_P="${PN}-${PHP_PV}"
-PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.bz2")"
+PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.xz")"
PHP_FPM_CONF_VER="1"
@@ -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 wddx webp
+ 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,19 +126,18 @@ 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 )
)
unicode? ( dev-libs/oniguruma )
+ vpx? ( media-libs/libvpx )
wddx? ( >=dev-libs/libxml2-2.6.8 )
- webp? ( media-libs/libwebp )
xml? ( >=dev-libs/libxml2-2.6.8 )
xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
xmlreader? ( >=dev-libs/libxml2-2.6.8 )
@@ -162,11 +155,9 @@ DEPEND="${DEPEND}
php="=${CATEGORY}/${PF}"
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
REQUIRED_USE="
- cli? ( ^^ ( readline libedit ) )
truetype? ( gd )
- webp? ( gd )
+ vpx? ( gd )
cjk? ( gd )
exif? ( 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}"
@@ -204,14 +198,24 @@ DEPEND="${DEPEND}
>=sys-devel/libtool-1.5.18"
# Allow users to install production version if they want to
-if [[ "${PHP_INI_VERSION}" == "production" ]]; then
- PHP_INI_UPSTREAM="php.ini-production"
-else
- PHP_INI_UPSTREAM="php.ini-development"
-fi
+case "${PHP_INI_VERSION}" in
+ production|development)
+ ;;
+ *)
+ PHP_INI_VERSION="development"
+ ;;
+esac
+
+PHP_INI_UPSTREAM="php.ini-${PHP_INI_VERSION}"
PHP_INI_FILE="php.ini"
+want_apache
+
+pkg_setup() {
+ depend.apache_pkg_setup
+}
+
php_install_ini() {
local phpsapi="${1}"
@@ -219,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}}"
@@ -240,25 +244,29 @@ php_install_ini() {
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
- if use opcache; then
+ 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() {
@@ -268,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" \
@@ -277,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 \
@@ -285,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() {
@@ -314,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 webp; then
- our_conf+=( --with-webp-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.
@@ -499,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
}
@@ -559,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
}
@@ -583,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=""
@@ -598,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
@@ -624,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
@@ -654,27 +662,27 @@ src_install() {
done
# Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#${EPREFIX}}"
- dolib.so "modules/opcache$(get_libname)"
+ if use_if_iuse opcache ; then
+ 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
}
@@ -693,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')"
@@ -732,14 +738,9 @@ src_test() {
pkg_postinst() {
# Output some general info to the user
if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\"
to"
- elog "your apache2 command. OpenRC users can append that string
to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
+ APACHE2_MOD_DEFINE="PHP"
+ APACHE2_MOD_CONF="70_mod_php" # provided by
app-eselect/eselect-php
+ apache-module_pkg_postinst
fi
# Create the symlinks for php
@@ -748,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
@@ -759,50 +760,32 @@ 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
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
+ elog "To build extensions for this version of PHP, you will need to"
+ elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
+ elog
+ 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 "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}"
- # Only mention PHP_INI_VERSION if the user doesn't have it set.
- case "${PHP_INI_VERSION}" in
- production|development)
- ;;
- *)
- elog "This ebuild installed a version of php.ini based on"
- elog "${PHP_INI_UPSTREAM}. 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}"
- elog
- ;;
- esac
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
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
+
+ ewarn
+ ewarn "PHP 5.5 is End of Life"
+ ewarn "This version of PHP 5.5 is likely to be the last and is not due
to receive any further security updates."
+ ewarn "Please migrate to 5.6 or later as soon as possible."
+ ewarn "PHP 5.5 will be masked for removal on the next release."
+ ewarn
}
-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.8-r2.ebuild b/dev-lang/php/php-5.6.24.ebuild
similarity index 94%
copy from dev-lang/php/php-7.0.8-r2.ebuild
copy to dev-lang/php/php-5.6.24.ebuild
index 4ed4d74..81092a6 100644
--- a/dev-lang/php/php-7.0.8-r2.ebuild
+++ b/dev-lang/php/php-5.6.24.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}"
@@ -43,7 +43,7 @@ PHP_RELEASE="php"
[[ ${PV} == ${PV/_rc/} ]] || PHP_RELEASE="php-pre"
PHP_P="${PN}-${PHP_PV}"
-PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.bz2")"
+PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.xz")"
PHP_FPM_CONF_VER="1"
@@ -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 wddx webp
+ 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,15 +140,17 @@ 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 )
)
unicode? ( dev-libs/oniguruma )
+ vpx? ( media-libs/libvpx )
wddx? ( >=dev-libs/libxml2-2.6.8 )
- webp? ( media-libs/libwebp )
xml? ( >=dev-libs/libxml2-2.6.8 )
xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
xmlreader? ( >=dev-libs/libxml2-2.6.8 )
@@ -166,7 +172,7 @@ php="=${CATEGORY}/${PF}"
REQUIRED_USE="
cli? ( ^^ ( readline libedit ) )
truetype? ( gd )
- webp? ( gd )
+ vpx? ( gd )
cjk? ( gd )
exif? ( gd )
@@ -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}"
@@ -250,11 +259,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
@@ -277,6 +284,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 \
@@ -296,16 +311,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() {
@@ -353,6 +358,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")
@@ -370,6 +376,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)
@@ -406,14 +413,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 webp; then
- our_conf+=( --with-webp-dir="${EPREFIX}/usr" )
- fi
# enable gd last, so configure can pick up the previous settings
our_conf+=( $(use_with gd gd) )
@@ -439,7 +445,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"
@@ -459,7 +468,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")
@@ -523,7 +532,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
@@ -604,7 +613,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
@@ -624,9 +633,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.8-r2.ebuild b/dev-lang/php/php-7.0.9.ebuild
similarity index 99%
rename from dev-lang/php/php-7.0.8-r2.ebuild
rename to dev-lang/php/php-7.0.9.ebuild
index 4ed4d74..df705ca 100644
--- a/dev-lang/php/php-7.0.8-r2.ebuild
+++ b/dev-lang/php/php-7.0.9.ebuild
@@ -43,7 +43,7 @@ PHP_RELEASE="php"
[[ ${PV} == ${PV/_rc/} ]] || PHP_RELEASE="php-pre"
PHP_P="${PN}-${PHP_PV}"
-PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.bz2")"
+PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.xz")"
PHP_FPM_CONF_VER="1"