diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 20:18:26 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 20:18:26 +0100 |
commit | 6c30cc2d5bd48ddbdbe8d75544899cd5dbfcaba4 (patch) | |
tree | 6ef7f6e1d48141a5da904d788b906da5bba4b697 /dev-lang/php | |
parent | 62f82c107c3904ac6917ece47301d2999c7dd90e (diff) |
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-lang/php')
-rw-r--r-- | dev-lang/php/Manifest | 20 | ||||
-rw-r--r-- | dev-lang/php/php-5.6.35-r1.ebuild | 10 | ||||
-rw-r--r-- | dev-lang/php/php-5.6.36.ebuild | 10 | ||||
-rw-r--r-- | dev-lang/php/php-7.0.29.ebuild | 10 | ||||
-rw-r--r-- | dev-lang/php/php-7.0.30.ebuild | 10 | ||||
-rw-r--r-- | dev-lang/php/php-7.1.16.ebuild | 10 | ||||
-rw-r--r-- | dev-lang/php/php-7.1.18.ebuild | 10 | ||||
-rw-r--r-- | dev-lang/php/php-7.1.19.ebuild | 10 | ||||
-rw-r--r-- | dev-lang/php/php-7.2.7.ebuild | 10 | ||||
-rw-r--r-- | dev-lang/php/php-7.3.0_alpha1.ebuild | 10 | ||||
-rw-r--r-- | dev-lang/php/php-7.3.0_alpha3.ebuild | 743 |
11 files changed, 799 insertions, 54 deletions
diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest index 2606d2517b2f..e90bd2ee0634 100644 --- a/dev-lang/php/Manifest +++ b/dev-lang/php/Manifest @@ -15,13 +15,15 @@ DIST php-7.1.18.tar.xz 12213396 BLAKE2B f851c6eb261b8b532e84e73e6f173deb6ac00cd5 DIST php-7.1.19.tar.xz 12215112 BLAKE2B 13f39fa258b5257e00b300d9488dc53caac8b005a01c4db98a05681334ab0dfade713116581da3f150dc20f4428fb249e00d705696d12b1daa13fc16fdaeedb9 SHA512 af966ef8d4172bbdac84bebbf6bf5cfd04376564307e925d3eecd1ba8f23b84dbb55f653d21adad120605d015ea4d15898e0a9154c85f4fc974b6ef695f6c566 DIST php-7.2.7.tar.xz 12115168 BLAKE2B 787621d6bfcfa2f8f7176e3fab5b1f521f82169d5d8367664404eda4503e477a16233c6b155170e8a0c76c1d67674bc9bb0922ea65c3694977df0c6c2aba6a04 SHA512 fe9d632f190e62d97848035584f387987856348c6ca288a8bdf85bc2c48de73c20e774776a1a8928a470a6108121c993c032529836a8ffe6bcfe45724d432829 DIST php-7.3.0alpha1.tar.xz 11746836 BLAKE2B 14feb7a31652d2f4cf3d34f0f0450fbcc597d026177b60455887657213acd6d5a8a11f96df30e9d18f51a95409bb944ba287aaee0b84ef1b66ffd61aeb8821d5 SHA512 5fedb7716bd194bd9692de9d2ac88b4bac876b74e463a43ae5bc5fd4f63bbf85d02c9d2f1f1e952c45b7867ccb2bd80b99dc77c9f2051967b9efe9fdcc5862ae -EBUILD php-5.6.35-r1.ebuild 22749 BLAKE2B 5f7c9b7f459781568948a34f73e9153e252bb42c37a3ab028a7f8cfdcfc430c28cbb615d4a193330bdbb373385002b453437754e18be2c9042bafe6bed141a22 SHA512 45538caa8ac17ec46110f55c4a22f3e23e2277da49a48f9bef1b6f44a99bc3db57ae148562dcbe0f689b088e3fef22c01a6462eac27661f104876e853ef6bced -EBUILD php-5.6.36.ebuild 22797 BLAKE2B ed16c850486f309c4ebc83fa1345f787452cbb2aee4716db5af6fc484c396f379cb475afab8e53279e522ec83a3edaa703549cb9054cd10d46373bf5c1956d48 SHA512 86ddca5f0a4806e5e1635eb1825c946d43426e1465a8902c9bd6c25c156abc856bb617e6232264cbacc16eac67a581229c1c82c329d645379e6115155aa2e559 -EBUILD php-7.0.29.ebuild 22007 BLAKE2B 402536b872143cbe5157ef0cd5afd93ae18d98bd6c097a6f0c55795fa6c039a77fd183186e85e502f6ee7b51f3dfdf42d66418bceb8e981e1025379533f1505a SHA512 94398ad107dfbfd5daad2cc1afd43d4f5225431e7c8c772dcf9c91477da21394a528fcf2c4919a1e684628826f7a08987c1ad7806d3f5aa90d1193fbff7ee8bb -EBUILD php-7.0.30.ebuild 22008 BLAKE2B c6c9459d316e0a002de1eab337ecb010a543eb1a9dbeaf30bcbaa57368cf4197792243e1939e357a80b01f21fc3b81331ba11203305559d4a88dc71e9473c339 SHA512 ce14aae5dbe741df62d593bcc0f562d77bdfcf01058328d50985dd107201f5f812229722978b44bc912a35251b7991e8ac9e46383a2e33bf1b98bf4229e1a511 -EBUILD php-7.1.16.ebuild 21895 BLAKE2B 63ee40d49bad190791b2c07fcf3e4a08fd3aa5b53a02120e1e4b998614ca867f80c4418f5ef23fc318c8b598fcd91e09d4bf0b9c3536209aca53df42ea895ada SHA512 0c32c7570e67dbdf397da50940f34d94788843a9ea82e1bef265e3ed6a60a366f9f1a45f2b2f842dc9382977a0d301a52c0d136873b56c8e60649221cd338df2 -EBUILD php-7.1.18.ebuild 21851 BLAKE2B 6cbdae0dc872c9613249343aab00ce0dca50ca433091dd16479a06ca7a935adfaa9cc590fab3e1175a80679c4a165f73c454720bdd129d25db3d5e0e5a9a099a SHA512 67231960f12f75c2711d47b35b89d91275edfba7f443e4b94491c2a54c82c4a525ed45cdde10ed45bae9be26640a1e8117634598ffe2d6c2a5c50c43adb7583d -EBUILD php-7.1.19.ebuild 21705 BLAKE2B 030c85144ac9f22ff31cdad2b30946b7b05dae10908ceda32f6a9eccc9cb3ead02f830571d05f819dbdaabf09c8f22b659f19180859ab5b893af1d12585161ee SHA512 6154f220def10f403293025448d2703cdd3b4d9fcb7f4ddad94a91ec0844746221da01f44acf26da7f60ef4aa06c3bb5517a957be440c6c60e0c278707e06306 -EBUILD php-7.2.7.ebuild 22236 BLAKE2B a211a96418b58a56d2eac6b586b681b28da34877a0c8011cbdd70caa82bf7c0b73d9dc5942ee1e7504e4271495e86cb8f72fef8a1238078c54f690b30d16b1d1 SHA512 73d1e7e7459cbea57dc45f5101f49756c9165dd5af809099314a876afec25b6d48d98e4b8186cdf48b67526a920f84172a4fbb8e9a479fc6c99fcb551a836d2a -EBUILD php-7.3.0_alpha1.ebuild 22327 BLAKE2B 4b6c25fdf510e9cae4bedba67e1af0ab47215ac632184a5738536dda58951e41c250182cf6f1a915765ce7489af9a75ebd70b141e76fdda0791efb191a5bb4a4 SHA512 b73c9c88dd0fe430da6be45c51c61334fe470b5846fc85f27e04c606f3c4d7bde9038b7ff7b4872c3842d848fc1ed1cf0b794e72a6c2f14515559f00b2e9fdef +DIST php-7.3.0alpha3.tar.xz 11890052 BLAKE2B 4e069bb3c68e4fd26bac319fe840ad683d42f5a7a3f16b907f1814290be77c018670fd342032b6514f1b76eb924da7a614d79ce9c4708837bdc9cd214d4614fc SHA512 7d867db75ac1d5648c0f52c58a6d955329967f7a9399d5fa7b403868ba1a3d72cebe1c4e97ccd79baefae61a6fb1ff2363a6894bd712e81074c7e743e9bc2f1e +EBUILD php-5.6.35-r1.ebuild 22774 BLAKE2B a12399c51c1d3fe4516d5ad713955c8a26f83c3ccb3711e2c2f74344bc9e4204b629a2730ab02d82f16f1cf2a798621b9d0e7b3f3da7ab82948ee5584c76f0e6 SHA512 75a2888cf640551ab0391dfa1ae554943b8bbf81bb34b7ed6f3a66e68774e3c3484d11c5562cea856e3a37220ba297515c5e864f67aeb4d230786bade7195aa1 +EBUILD php-5.6.36.ebuild 22822 BLAKE2B 2bfb820bf178f6d1ded793c0a035b6154237bd59e5fb6733b02be77d975e11c0b6cd12f293ccc59ac2e0c92e0a32539e5494a6b7f08b61c3e61dc59806664285 SHA512 a0c314a61a2b7c8c848e91d86eb94da7e7f8cdaa0220bb0f031a3dc627fac6348cea1af4b4a0593b76df26e379d8419e7644fdcd1b586babef297529f3568407 +EBUILD php-7.0.29.ebuild 22032 BLAKE2B e27ecd2e0429f2115b9245961bcc63470a8edfb3611de68a76eff0fb32837599580a146fe9d556da8176208e333c372ab81a979ff8e2f2fb02e5af2cd9e89eb7 SHA512 83b800cf9c9de8de6060c9fe0ab5d4c2e8d1aabbc541ce1e78c31eb031ad67206b0eb94d03213f2c8d9e51e9af3a199459bc7ea0f5a717a2bcb33601403b1df5 +EBUILD php-7.0.30.ebuild 22033 BLAKE2B e55a92a39ffca9625cc408d188b8d32463201247b6437ea1a95baa33bd17f7a201716ba9a8a68b41a5c6e131ca443dc629b486bdce0f51aa006392897da423ae SHA512 d7bf3082aea9fa2afdb387e3c0412fd9c1c7c9594f10c4cfa8ddc53a4c31e31a07abd35a306388aadc94c9e282e0e55503ef3b9118c4c97f9b0557c0c1655a82 +EBUILD php-7.1.16.ebuild 21920 BLAKE2B 4082a39d5f3b202f183699463007c0b56291c2c59a9b773fcf4ff7ec1e3ae51770b7bbc0880826df9954ca8bce9ee5e31c5c01b29b5b2d2b9ef748ea1a8f41b4 SHA512 4903c460fa81319842683a420315ce958bbd3d232f474769ff7531a2541d43bba8a258f50fa63c30814180f2aff9e627626de055a10446ad935ca0eeaf6939dc +EBUILD php-7.1.18.ebuild 21876 BLAKE2B f046afb95e9d0bd43d90c09b16a016a049608729913eebb3849a3801955eb0de88c450d4a068179fe275abf005d6ba7a0e97f1163992e049ffbfa47256a5bbc7 SHA512 f32768b81785ce618b411edfcaada57c10c38cf1437b1fa7079f3f97552cb31ea05dd9bebbaf1a056b81976c52bf264801b47a0c990ecd14e9034acc15d8f75c +EBUILD php-7.1.19.ebuild 21730 BLAKE2B d7e183b903dbea7f3b88d1d80bf9cd3cc04104ad1133fe6266cdb09db754f572cbfe291f2971bc3e946ea76a11cacacec0a05ebc4b8a1fbd005c274c65f5de64 SHA512 46902cfc5603b90ab72eef3dd4fdb615b2e9f7daa79accb1121406773249a702e90a721b2e6528ed48bc9c3d9d2e575112f7cc04d13dc48c41692c9c278cb55d +EBUILD php-7.2.7.ebuild 22261 BLAKE2B 700b42b3636fc35c89ab1f0762304986892a245881a2c66a708651801bddb6fd19eacefa7590c50177fb7f36f4f352ed46b9220c3f27e0304fb022d7eceedb80 SHA512 5505b157d3db37e8679ef65d7c237c867b73fc79a73ca39d646d676b6e410687deaab1b6ac762587480e927dd23d323dcd7d760906c7de100f85be78ca190e9b +EBUILD php-7.3.0_alpha1.ebuild 22352 BLAKE2B 07b282cdc9c18dc43fe3aea930fc5276b478081592c01d0bf88188eb1d4a97258193d2b67782d2b4c6c680aea6e8faa4e9ebf4259a5d023ccb93d9b5493f319c SHA512 dc9fb07497018f08d1cf2a7df05c9b7a375c27ba3e8e3bd2d24fdc993aa10082b2f440563519c9e4f6ad685a662ed51a29559a061cbc0f238eac32f9d8fb0fc1 +EBUILD php-7.3.0_alpha3.ebuild 22351 BLAKE2B 133630e06fa9c8c838db04506afd3f687761039e72b3e297f52382f0d55a3728f75bc30dd27d38f72880647c052407c268557d1ce5b1a91ca5390e86bb6b9857 SHA512 1de5e51be4c911b5d250c594219263eb7c154b07a61519ac509727bce019e21a2b9e61ce70aec5321a7169781cf2d656a56811de6b076430a981d0cec8fbe36b MISC metadata.xml 2577 BLAKE2B 9b15d6073181a5f5ff7b00ef8b68d24c7ea8763171ae84895ebc4a6925f589d2a02e4e29116c2741b3502b35d32aa58e7ed909e144c0e694f8cce5b4d26ecd3b SHA512 14e6daa693325b8a27157cff22d0b0cae9d89e4dada775f39188f7f36546b78a8b19efedb2f7b6f64ee1375bf29d3af32a8f7d6e7bf0d04cf2a7241abd154afa diff --git a/dev-lang/php/php-5.6.35-r1.ebuild b/dev-lang/php/php-5.6.35-r1.ebuild index 56d281890cd8..152ebfe276c1 100644 --- a/dev-lang/php/php-5.6.35-r1.ebuild +++ b/dev-lang/php/php-5.6.35-r1.ebuild @@ -147,11 +147,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - vpx? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + vpx? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-5.6.36.ebuild b/dev-lang/php/php-5.6.36.ebuild index 5b743906a993..fe5b563b7ea5 100644 --- a/dev-lang/php/php-5.6.36.ebuild +++ b/dev-lang/php/php-5.6.36.ebuild @@ -147,11 +147,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - vpx? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + vpx? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.0.29.ebuild b/dev-lang/php/php-7.0.29.ebuild index a57432146374..08da09b6482b 100644 --- a/dev-lang/php/php-7.0.29.ebuild +++ b/dev-lang/php/php-7.0.29.ebuild @@ -141,11 +141,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.0.30.ebuild b/dev-lang/php/php-7.0.30.ebuild index cfcbd02ee740..9e0175a2b439 100644 --- a/dev-lang/php/php-7.0.30.ebuild +++ b/dev-lang/php/php-7.0.30.ebuild @@ -141,11 +141,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.1.16.ebuild b/dev-lang/php/php-7.1.16.ebuild index 0adf8fe59a01..da637b55abbd 100644 --- a/dev-lang/php/php-7.1.16.ebuild +++ b/dev-lang/php/php-7.1.16.ebuild @@ -123,11 +123,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.1.18.ebuild b/dev-lang/php/php-7.1.18.ebuild index f53642ef9653..b7d2c829465a 100644 --- a/dev-lang/php/php-7.1.18.ebuild +++ b/dev-lang/php/php-7.1.18.ebuild @@ -123,11 +123,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.1.19.ebuild b/dev-lang/php/php-7.1.19.ebuild index 1432a2ae457c..d649e1715b3a 100644 --- a/dev-lang/php/php-7.1.19.ebuild +++ b/dev-lang/php/php-7.1.19.ebuild @@ -123,11 +123,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.2.7.ebuild b/dev-lang/php/php-7.2.7.ebuild index ecf193ae0d19..4bc61dfc550f 100644 --- a/dev-lang/php/php-7.2.7.ebuild +++ b/dev-lang/php/php-7.2.7.ebuild @@ -127,11 +127,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.3.0_alpha1.ebuild b/dev-lang/php/php-7.3.0_alpha1.ebuild index 27d2d493ca14..ba87c83f797e 100644 --- a/dev-lang/php/php-7.3.0_alpha1.ebuild +++ b/dev-lang/php/php-7.3.0_alpha1.ebuild @@ -130,11 +130,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.3.0_alpha3.ebuild b/dev-lang/php/php-7.3.0_alpha3.ebuild new file mode 100644 index 000000000000..ecc2efff30e7 --- /dev/null +++ b/dev-lang/php/php-7.3.0_alpha3.ebuild @@ -0,0 +1,743 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit flag-o-matic versionator systemd + +MY_PV=${PV/_/} +DESCRIPTION="The PHP language runtime engine" +HOMEPAGE="https://secure.php.net/" +SRC_URI="https://downloads.php.net/~cmb/${PN}-${MY_PV}.tar.xz" + +LICENSE="PHP-3.01 + BSD + Zend-2.0 + bcmath? ( LGPL-2.1+ ) + fpm? ( BSD-2 ) + gd? ( gd ) + unicode? ( BSD-2 LGPL-2.1 )" + +SLOT="$(get_version_component_range 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" + +S="${WORKDIR}/${PN}-${MY_PV}" + +# We can build the following SAPIs in the given order +SAPIS="embed cli cgi fpm apache2 phpdbg" + +# SAPIs and SAPI-specific USE flags (cli SAPI is default on): +IUSE="${IUSE} + ${SAPIS/cli/+cli} + threads" + +IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk + coverage +ctype curl debug + enchant exif +fileinfo +filter firebird + flatfile ftp gd gdbm gmp +hash +iconv imap inifile + intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl lmdb + mhash mssql mysql mysqli nls + oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm + readline recode selinux +session session-mm sharedmem + +simplexml snmp soap sockets sodium spell sqlite ssl + sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode wddx webp + +xml xmlreader xmlwriter xmlrpc xpm xslt zip zip-encryption zlib" + +# 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. +COMMON_DEPEND=" + >=app-eselect/eselect-php-0.9.1[apache2?,fpm?] + >=dev-libs/libpcre2-10.30[unicode] + fpm? ( acl? ( sys-apps/acl ) ) + apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=] + <www-servers/apache-2.4[threads=] ) ) + argon2? ( app-crypt/argon2:= ) + 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 ) ) + bzip2? ( app-arch/bzip2:0= ) + cdb? ( || ( dev-db/cdb dev-db/tinycdb ) ) + coverage? ( dev-util/lcov ) + curl? ( >=net-misc/curl-7.10.5 ) + enchant? ( app-text/enchant ) + firebird? ( dev-db/firebird ) + gd? ( virtual/jpeg:0 media-libs/libpng:0= >=sys-libs/zlib-1.2.0.4 ) + gdbm? ( >=sys-libs/gdbm-1.8.0:0= ) + gmp? ( dev-libs/gmp:0= ) + iconv? ( virtual/libiconv ) + imap? ( virtual/imap-c-client[kerberos=,ssl=] ) + intl? ( dev-libs/icu:= ) + iodbc? ( dev-db/libiodbc ) + kerberos? ( virtual/krb5 ) + 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 ) ) + lmdb? ( dev-db/lmdb:= ) + mssql? ( dev-db/freetds[mssql] ) + nls? ( sys-devel/gettext ) + oci8-instant-client? ( dev-db/oracle-instantclient-basic ) + odbc? ( >=dev-db/unixODBC-1.8.13 ) + postgres? ( dev-db/postgresql:* ) + qdbm? ( dev-db/qdbm ) + readline? ( sys-libs/readline:0= ) + recode? ( app-text/recode ) + session-mm? ( dev-libs/mm ) + simplexml? ( >=dev-libs/libxml2-2.6.8 ) + snmp? ( >=net-analyzer/net-snmp-5.2 ) + soap? ( >=dev-libs/libxml2-2.6.8 ) + sodium? ( dev-libs/libsodium:= ) + spell? ( >=app-text/aspell-0.50 ) + sqlite? ( >=dev-db/sqlite-3.7.6.3 ) + ssl? ( + !libressl? ( >=dev-libs/openssl-1.0.1:0= ) + libressl? ( dev-libs/libressl:0= ) + ) + tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) ) + tokyocabinet? ( dev-db/tokyocabinet ) + truetype? ( =media-libs/freetype-2* ) + unicode? ( dev-libs/oniguruma:= ) + wddx? ( >=dev-libs/libxml2-2.6.8 ) + webp? ( media-libs/libwebp:0= ) + xml? ( >=dev-libs/libxml2-2.6.8 ) + xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv ) + xmlreader? ( >=dev-libs/libxml2-2.6.8 ) + xmlwriter? ( >=dev-libs/libxml2-2.6.8 ) + xpm? ( x11-libs/libXpm ) + xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 ) + zip? ( >=sys-libs/zlib-1.2.0.4:0= ) + zip-encryption? ( >=dev-libs/libzip-1.2.0:= ) + zlib? ( >=sys-libs/zlib-1.2.0.4:0= ) +" + +RDEPEND="${COMMON_DEPEND} + virtual/mta + fpm? ( + selinux? ( sec-policy/selinux-phpfpm ) + systemd? ( sys-apps/systemd ) )" + +# Bison isn't actually needed when building from a release tarball +# However, the configure script will warn if it's absent or if you +# have an incompatible version installed. See bug 593278. +DEPEND="${COMMON_DEPEND} + app-arch/xz-utils + >=sys-devel/bison-3.0.1" + +# Without USE=readline or libedit, the interactive "php -a" CLI will hang. +REQUIRED_USE=" + || ( cli cgi fpm apache2 embed phpdbg ) + cli? ( ^^ ( readline libedit ) ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) + gd? ( zlib ) + simplexml? ( xml ) + soap? ( xml ) + wddx? ( xml ) + xmlrpc? ( || ( xml iconv ) ) + xmlreader? ( xml ) + xslt? ( xml ) + ldap-sasl? ( ldap ) + mhash? ( hash ) + phar? ( hash ) + qdbm? ( !gdbm ) + readline? ( !libedit ) + recode? ( !imap !mysqli !mysql ) + session-mm? ( session !threads ) + mysql? ( || ( mysqli pdo ) ) + zip-encryption? ( zip ) +" +PATCHES=( + "${FILESDIR}/php-freetype-2.9.1.patch" +) + +PHP_MV="$(get_major_version)" + +php_install_ini() { + local phpsapi="${1}" + + # work out where we are installing the ini file + php_set_ini_dir "${phpsapi}" + + # Always install the production INI file, bug 611214. + local phpinisrc="php.ini-production-${phpsapi}" + cp php.ini-production "${phpinisrc}" || die + + # default to /tmp for save_path, bug #282768 + sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die + + # Set the extension dir + sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \ + -i "${phpinisrc}" || die + + # 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 + + dodir "${PHP_INI_DIR#${EPREFIX}}" + insinto "${PHP_INI_DIR#${EPREFIX}}" + newins "${phpinisrc}" php.ini + + elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}" + elog + + dodir "${PHP_EXT_INI_DIR#${EPREFIX}}" + dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}" + + if use 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" + fi + + # SAPI-specific handling + if [[ "${sapi}" == "fpm" ]] ; then + einfo "Installing FPM config files php-fpm.conf and www.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,production} +} + +php_set_ini_dir() { + PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}" + PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext" + PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active" +} + +src_prepare() { + default + + # 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() { + addpredict /usr/share/snmp/mibs/.index #nowarn + addpredict /var/lib/net-snmp/mib_indexes #nowarn + + 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=( + --prefix="${PHP_DESTDIR}" + --mandir="${PHP_DESTDIR}/man" + --infodir="${PHP_DESTDIR}/info" + --libdir="${PHP_DESTDIR}/lib" + --with-libdir="$(get_libdir)" + --localstatedir="${EPREFIX}/var" + --without-pear + $(use_enable threads maintainer-zts) + ) + + our_conf+=( + $(use_with argon2 password-argon2 "${EPREFIX}/usr") + $(use_enable bcmath bcmath) + $(use_with bzip2 bz2 "${EPREFIX}/usr") + $(use_enable calendar calendar) + $(use_enable coverage gcov) + $(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 || use elibc_FreeBSD || 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 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 sodium sodium "${EPREFIX}/usr") + $(use_with sqlite sqlite3 "${EPREFIX}/usr") + $(use_enable sysvipc sysvmsg) + $(use_enable sysvipc sysvsem) + $(use_enable sysvipc sysvshm) + $(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 zip-encryption libzip "${EPREFIX}/usr") + $(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 || use lmdb || use tokyocabinet ; then + our_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") + $(use_with lmdb lmdb "${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 + # enable gd last, so configure can pick up the previous settings + our_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") + ) + fi + + # Interbase/firebird support + our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") ) + + # LDAP support + if use ldap ; then + our_conf+=( + $(use_with ldap ldap "${EPREFIX}/usr") + $(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr") + ) + fi + + # MySQL support + local mysqllib="mysqlnd" + local mysqlilib="mysqlnd" + + our_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}") ) + fi + + # ODBC support + our_conf+=( + $(use_with odbc unixODBC "${EPREFIX}/usr") + $(use_with iodbc iodbc "${EPREFIX}/usr") + ) + + # Oracle support + our_conf+=( $(use_with oci8-instant-client oci8) ) + + # 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) + ) + fi + + # readline/libedit support + our_conf+=( + $(use_with readline readline "${EPREFIX}/usr") + $(use_with libedit libedit "${EPREFIX}/usr") + ) + + # Session support + if use session ; then + our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") ) + else + our_conf+=( $(use_enable session session) ) + fi + + # Use pic for shared modules such as apache2's mod_php + our_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 + # --with-pcre-valgrind cannot be enabled with system pcre + # Many arches don't support pcre-jit + our_conf+=( + --with-pcre-regex="${EPREFIX}/usr" + --with-pcre-dir="${EPREFIX}/usr" + --without-pcre-valgrind + --without-pcre-jit + ) + + # Catch CFLAGS problems + # Fixes bug #14067. + # Changed order to run it in reverse for bug #32022 and #12021. + replace-cpu-flags "k6*" "i586" + + # Cache the ./configure test results between SAPIs. + our_conf+=( --cache-file="${T}/config.cache" ) + + # Support user-passed configuration parameters + our_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 + 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 -a "${S}" "${BUILD_DIR}" || die + cd "${BUILD_DIR}" || die + + local sapi_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) + if [[ "${one_sapi}" == "${sapi}" ]] ; then + sapi_conf+=( "--enable-${sapi}" ) + if [[ "fpm" == "${sapi}" ]] ; then + sapi_conf+=( + $(use_with acl fpm-acl) + $(use_with systemd fpm-systemd) + ) + fi + else + sapi_conf+=( "--disable-${sapi}" ) + fi + ;; + + apache2) + if [[ "${one_sapi}" == "${sapi}" ]] ; then + sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" ) + else + 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 + done +} + +src_compile() { + # snmp seems to run during src_compile, too (bug #324739) + addpredict /usr/share/snmp/mibs/.index #nowarn + addpredict /var/lib/net-snmp/mib_indexes #nowarn + + 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 + fi + done +} + +src_install() { + # see bug #324739 for what happens when we don't have that + addpredict /usr/share/snmp/mibs/.index #nowarn + + # grab the first SAPI that got built and install common files from there + local first_sapi="" + for sapi in $SAPIS ; do + if use $sapi ; then + first_sapi=$sapi + break + fi + done + + # Makefile forgets to create this before trying to write to it... + dodir "${PHP_DESTDIR#${EPREFIX}}/bin" + + # Install php environment (without any sapis) + cd "${WORKDIR}/sapis-build/$first_sapi" || die + emake INSTALL_ROOT="${D}" \ + install-build install-headers install-programs + + 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}" + + local sapi="", file="" + local sapi_list="" + + for sapi in ${SAPIS}; do + if use "${sapi}" ; then + einfo "Installing SAPI: ${sapi}" + cd "${WORKDIR}/sapis-build/${sapi}" || die + + 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)" + keepdir "/usr/$(get_libdir)/apache2/modules" + else + # needed each time, php_install_ini would reset it + local dest="${PHP_DESTDIR#${EPREFIX}}" + into "${dest}" + case "$sapi" in + cli) + source="sapi/cli/php" + ;; + cgi) + source="sapi/cgi/php-cgi" + ;; + fpm) + source="sapi/fpm/php-fpm" + ;; + 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}" + else + dobin "${source}" + local name="$(basename ${source})" + dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}" + fi + fi + + php_install_ini "${sapi}" + + # construct correct SAPI string for php-config + # thanks to ferringb for the bash voodoo + if [[ "${sapi}" == "apache2" ]]; then + sapi_list="${sapi_list:+${sapi_list} }apache2handler" + else + sapi_list="${sapi_list:+${sapi_list} }${sapi}" + fi + fi + done + + # Installing opcache module + if use opcache ; then + into "${PHP_DESTDIR#${EPREFIX}}" + dolib.so "modules/opcache$(get_libname)" + 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 + + # 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 + + if use fpm ; then + if use systemd; then + systemd_newunit "${FILESDIR}/php-fpm_at.service" \ + "php-fpm@${SLOT}.service" + else + systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \ + "php-fpm@${SLOT}.service" + fi + fi +} + +src_test() { + echo ">>> Test phase [test]: ${CATEGORY}/${PF}" + PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php" + if [[ ! -x "${PHP_BIN}" ]] ; then + ewarn "Test phase requires USE=cli, skipping" + return + else + export TEST_PHP_EXECUTABLE="${PHP_BIN}" + fi + + if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then + export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" + fi + + if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then + export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" + 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}" + + for name in ${EXPECTED_TEST_FAILURES}; do + mv "${name}.out" "${name}.out.orig" 2>/dev/null || die + done + + local failed="$(find -name '*.out')" + if [[ ${failed} != "" ]] ; then + ewarn "The following test cases failed unexpectedly:" + for name in ${failed}; do + ewarn " ${name/.out/}" + done + else + einfo "No unexpected test failures, all fine" + fi + + if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then + local passed="" + for name in ${EXPECTED_TEST_FAILURES}; do + [[ -f "${name}.diff" ]] && continue + passed="${passed} ${name}" + done + if [[ ${passed} != "" ]] ; then + einfo "The following test cases passed unexpectedly:" + for name in ${passed}; do + ewarn " ${passed}" + done + else + einfo "None of the known-to-fail tests passed, all fine" + fi + fi +} + +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 + fi + + # Create the symlinks for php + for m in ${SAPIS}; do + [[ ${m} == 'embed' ]] && continue; + if use $m ; then + local ci=$(eselect php show $m) + if [[ -z $ci ]]; then + eselect php set $m php${SLOT} || die + einfo "Switched ${m} to use php:${SLOT}" + einfo + elif [[ $ci != "php${SLOT}" ]] ; then + elog "To switch $m to use php:${SLOT}, run" + elog " eselect php set $m php${SLOT}" + elog + fi + 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 + fi + + # Warn about the removal of PHP_INI_VERSION if the user has it set. + if [[ -n "${PHP_INI_VERSION}" ]]; then + ewarn 'The PHP_INI_VERSION variable has been phased out. You may' + ewarn 'remove it from your configuration at your convenience. See' + ewarn + ewarn ' https://bugs.gentoo.org/611214' + ewarn + ewarn 'for more information.' + fi + + elog "For details on how version slotting works, please see" + elog "the wiki:" + elog + elog " https://wiki.gentoo.org/wiki/PHP" + 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. + eselect php cleanup +} |