commit: b81b8c799fe2c28d7a3211ed1af2f87f3bd033c3
Author: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 4 01:10:08 2016 +0000
Commit: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Fri Mar 4 03:19:00 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b81b8c79
dev-lang/php: add new versions of the three supported series.
This adds php-5.5.33, php-5.6.19, and php-7.0.4 -- all bugfix/security
releases. The DESCRIPTION of the new ebuilds was shortened to respect
the 80-character limit. Support for LibreSSL was also added to the 5.6
and 7.0 series in the process.
Gentoo-Bug: 575922
Package-Manager: portage-2.2.26
dev-lang/php/Manifest | 4 +-
.../php/{php-7.0.3.ebuild => php-5.5.33.ebuild} | 516 ++++++++++-----------
.../php/{php-7.0.3.ebuild => php-5.6.19.ebuild} | 75 +--
.../php/{php-7.0.3.ebuild => php-7.0.4.ebuild} | 11 +-
4 files changed, 305 insertions(+), 301 deletions(-)
diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest
index 855517e..85f52a2 100644
--- a/dev-lang/php/Manifest
+++ b/dev-lang/php/Manifest
@@ -2,8 +2,10 @@ DIST php-5.4.45.tar.bz2 12703324 SHA256
4e0d28b1554c95cfaea6fa2b64aac85433f158ce
DIST php-5.5.30.tar.bz2 13699702 SHA256
e7332a713cecdd1cb44a1b1336739885c9789f633f0f51236b25e48ab03c3b29 SHA512
9458126f579ace9e2aebdfa7ad7f8d097f1fd502f443d8fd66263ba3c542d579ca9c705e227725fae57e452649a3be7cb717a0330d339b93d3c6c94fa80dbc1f
WHIRLPOOL
2aa6c61a48a231d81f6c746f94e42589d87b93d0526f02d6d15f731cbbca4aecdee84b443f7ec1891f2a524939c542ac6f94e15db90a23a8b19523463025d395
DIST php-5.5.31.tar.bz2 13659002 SHA256
fb4a382b9a9dceb749b7ef047d8251320bc8d371c843714e5b4f4b70d61ba277 SHA512
b5b44092636bf26898441cfda4007480dcd0d58b72cd5c53d74ad2926fe54bf7e5db995c8ff598f72f1783ecd02aafad6be7d3bbd35dc83300621c7c37d37eca
WHIRLPOOL
4d6a4cce634d30454280b08c30e25fdc6c2d2f37a823123372a4b1bc2b0cc5cdb4e10ccdc73e78cfbf243f83184861c8f79fae023fcf291ee102151a28236052
DIST php-5.5.32.tar.bz2 13685561 SHA256
b0f2c108db8e05db9f6366aaba9a754fd0ee31f3f86ee889561b608dfd6e92ee SHA512
1603864e7a98378bb5a7c1592d81029fd7dfe5d2fa88152a9e29484c3c98cd6126a79741657eea3e3295ed1bdeed47527d33981c9ea0df891f137ee8126cce2b
WHIRLPOOL
b7b86eec6b03720238bbe698289c6b1aecf920645f166d617fd26166aba8e19a474ff15d482f8f84fd48befc6b6be6c388797bb3f269f5609e71e10be9844759
+DIST php-5.5.33.tar.bz2 13686486 SHA256
c490b1ed4df596b48eb68f630d89ca512945e2650840e7dace1119cc7e600aa9 SHA512
a0ac57adcc4b0caec153265a8d1ded8d4d0f71b44f08158feb0add9c8fdd36826767882e85dd03399cf146800eddcb6b6cc1b21051d4fc4371e3f61b1169132b
WHIRLPOOL
373c61677adb89506cc4621d1c7a0732f6454a8679a797807631f2286188bb990dfcaf34b4108edf7b1819424100fa0d7060f0f792a65dc5f1c130cfa00e6b45
DIST php-5.6.14.tar.bz2 14073920 SHA256
36f295f11641c1839a5df00e693f685fd134c65e8a1d46e8ee0abae8662b2eb0 SHA512
af0c7fa5c7be15839b1189b2544ff725b935228030087c206f83727e7885750030b10bf2bfbd27adea6f18af90d4ecd3ced9defec88c5f98f7ed26b4e4c57981
WHIRLPOOL
8e31fc3dbeb22fa2a59112d2dcbe28f8102c8d5a14fd716d17f909399c06d27a10ea32d43ebd1a12cea78d9fd949ae7c7882628ae0c3abd7354d165107fa0c9d
DIST php-5.6.17.tar.bz2 14072840 SHA256
77b45f56a1e63e75bb22b42cfb8b438ec4083c59ce774b4d7c1685544b7add3b SHA512
706fd31324c98717d44b4db4440a5eaffe24ad34b346ba95418b33ee072b3ddde5d7429d318f69554b4bfcd7dcc0e9e4b07142b539196e9f0ab7707485ad9dbb
WHIRLPOOL
02b7ea265b41e9db94a0087bd5baefdd45f3954df12298f1c50340bee5de1f5ea21ec5e1e039741db5cdd19ffd51518775bc17eff5ad8ad138c71fcaacf80af1
DIST php-5.6.18.tar.bz2 14094993 SHA256
c3cd4a29a9562309d36e2b128407d6eaa5c7dde590d2b1a464457383e517f4ed SHA512
1f0820d829923404ceae287129afa9c7d7d9c83d6fbf148a65a6ac49224f4cb84e743443c4fadb69d959229123ab7e99816aab40f694d808e64b05bb7238f89e
WHIRLPOOL
f4863256dfe3497276ca07b6f01eb5ec046f377e462b5d7d1d11b1e92e99f087b4c55719dace4d5aca1b30794ddd37c9d81b30deb6a913b7c0eeff67ebd74c13
-DIST php-7.0.3.tar.bz2 14011153 SHA256
826823d754f09c779222a99becf9c53a4dc719dba2d777aca7807c6ca68e6fc6 SHA512
3a7aa542f53a38499eb126c3d489bed057a5a9b8e4a8fb45a55b1080fc573646615699bd94b03c882e58554b23ac5d6e3aaf54d0b502b9d110e91e69339bd7a0
WHIRLPOOL
93952672c05b5b85766f425f8b6cf290dab820e87d01945d145c52b37c9f33f995df40a9ddc00f1660a036cb07000e42c16d9587e9b4137b55bc5f95d3a3190b
+DIST php-5.6.19.tar.bz2 14100438 SHA256
2a24a3f84971680ac0a4c71050067de4f76ee235aa4a041fae21bfa69975c168 SHA512
c8c2b3bdfc1a8abe834612c33123b4f103e841c230b53934fb7bafe11af7f1175f02ca54c92f33e8e603485e6283897bebb51acc55d1213b7433024684215c14
WHIRLPOOL
f026e8779c531f887b1e292e5f1d6eafd0e3ae46f83ae8efb830ad8e0f91d86e5b002dda9e6a02987db6230557ff773d8c52dd2db423d792aed1aca292e5b92b
+DIST php-7.0.4.tar.bz2 14027088 SHA256
a246c503709c189ba8e1e22ed2cb22abc27da43a997ff1b3318e181baf529dcc SHA512
9d1dc761cdd9103a91299e01117c1790550e3b94e7694dcc2555d83e5abe3d2170acd6226e8501c5f2a77b5c374b1c9f5ea009999d476818c2682a54def86b96
WHIRLPOOL
08b6b023854af693d85a6e48b3ec83f10ede0c07ac6d18b1b3b2a4d8208dcc7ba55900985be812c3325703bc291d8a842d7754c1b7754e2c52c72e7488d6d8df
DIST php-patchset-5.4-r2.tar.bz2 5824 SHA256
4a47f4d31f50a244f85349486cdb3474cf315562e097ed4c116c2b9b5730ecef SHA512
3c2523458a627373da7acb93fb2cd621f50b19fe2ba1d30beb62eeaaa39045262b917cfd0b631046fec9c8027cfa99bd0426a079ab45eb172b21d25d6e085dde
WHIRLPOOL
fe4f015e2f0dc66cc23ef16fb5bb33117952593ae0770d4bcd37ecc1c431cbcc7874189d265696305c60b4e395e7ce902667e38203db46867304868271affdea
diff --git a/dev-lang/php/php-7.0.3.ebuild b/dev-lang/php/php-5.5.33.ebuild
similarity index 55%
copy from dev-lang/php/php-7.0.3.ebuild
copy to dev-lang/php/php-5.5.33.ebuild
index f6014cd..6c0c143 100644
--- a/dev-lang/php/php-7.0.3.ebuild
+++ b/dev-lang/php/php-5.5.33.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}"
@@ -49,14 +49,14 @@ PHP_FPM_CONF_VER="1"
SRC_URI="${PHP_SRC_URI}"
-DESCRIPTION="The PHP language runtime engine: CLI, CGI, FPM/FastCGI, Apache2
and embed SAPIs"
+DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="http://php.net/"
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,29 +68,19 @@ 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 mhash
- mysql mysqli nls
+ 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:= )
@@ -118,12 +108,17 @@ DEPEND="${DEPEND}
ldap? ( >=net-nds/openldap-1.2.11 )
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 )
@@ -131,10 +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? ( dev-libs/openssl:0 )
+ 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 )
)
@@ -158,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 )
@@ -177,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}"
@@ -225,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}}"
@@ -248,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() {
@@ -274,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" \
@@ -283,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 \
@@ -291,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() {
@@ -320,183 +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 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.
@@ -504,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
}
@@ -564,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
}
@@ -588,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=""
@@ -603,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
@@ -629,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
@@ -660,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
}
@@ -697,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')"
@@ -737,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
@@ -747,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
@@ -758,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.3.ebuild b/dev-lang/php/php-5.6.19.ebuild
similarity index 93%
copy from dev-lang/php/php-7.0.3.ebuild
copy to dev-lang/php/php-5.6.19.ebuild
index f6014cd..0fb581b 100644
--- a/dev-lang/php/php-7.0.3.ebuild
+++ b/dev-lang/php/php-5.6.19.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}"
@@ -49,14 +49,14 @@ PHP_FPM_CONF_VER="1"
SRC_URI="${PHP_SRC_URI}"
-DESCRIPTION="The PHP language runtime engine: CLI, CGI, FPM/FastCGI, Apache2
and embed SAPIs"
+DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="http://php.net/"
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,12 +67,12 @@ 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 mhash
- mysql mysqli nls
+ intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl
+ 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="
@@ -118,6 +118,11 @@ DEPEND="${DEPEND}
ldap? ( >=net-nds/openldap-1.2.11 )
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 )
@@ -131,10 +136,15 @@ DEPEND="${DEPEND}
soap? ( >=dev-libs/libxml2-2.6.8 )
spell? ( >=app-text/aspell-0.50 )
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? ( dev-libs/openssl:0 )
+ ssl? (
+ !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 )
)
@@ -177,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}"
@@ -256,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
@@ -283,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 \
@@ -302,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() {
@@ -359,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")
@@ -376,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)
@@ -412,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) )
@@ -445,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"
@@ -465,6 +478,7 @@ src_configure() {
# PDO support
if use pdo ; then
our_conf+=(
+ $(use_with mssql pdo-dblib)
$(use_with mysql pdo-mysql "${mysqllib}")
$(use_with postgres pdo-pgsql)
$(use_with sqlite pdo-sqlite "${EPREFIX}/usr")
@@ -528,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
@@ -609,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
@@ -629,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.3.ebuild b/dev-lang/php/php-7.0.4.ebuild
similarity index 99%
rename from dev-lang/php/php-7.0.3.ebuild
rename to dev-lang/php/php-7.0.4.ebuild
index f6014cd..6092aca 100644
--- a/dev-lang/php/php-7.0.3.ebuild
+++ b/dev-lang/php/php-7.0.4.ebuild
@@ -49,7 +49,7 @@ PHP_FPM_CONF_VER="1"
SRC_URI="${PHP_SRC_URI}"
-DESCRIPTION="The PHP language runtime engine: CLI, CGI, FPM/FastCGI, Apache2
and embed SAPIs"
+DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="http://php.net/"
LICENSE="PHP-3"
@@ -67,8 +67,8 @@ 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 mhash
- mysql mysqli nls
+ intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl
+ mhash mysql 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
@@ -131,7 +131,10 @@ DEPEND="${DEPEND}
soap? ( >=dev-libs/libxml2-2.6.8 )
spell? ( >=app-text/aspell-0.50 )
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? ( dev-libs/openssl:0 )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0 )
+ libressl? ( dev-libs/libressl )
+ )
tidy? ( app-text/htmltidy )
truetype? (
=media-libs/freetype-2*