summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilliam Gathoye2019-02-11 10:47:11 +0100
committerWilliam Gathoye2019-02-11 12:44:56 +0100
commit34f31391f9ced7be094ea4f44436fd87c70c9560 (patch)
tree03e6a64f96b6350663cc4fdbce9b7532e9e6fdbe
parent7b4b62774789582eddfcaafb477b652002570802 (diff)
downloadaur-34f31391f9ced7be094ea4f44436fd87c70c9560.tar.gz
Rewrite package and upgrade to 7.1.26
-rw-r--r--.SRCINFO87
-rw-r--r--PKGBUILD614
-rw-r--r--apache.conf6
-rw-r--r--apache.patch2
-rw-r--r--enchant-2.patch20
-rw-r--r--freetype2.patch100
-rw-r--r--php-fpm.patch22
-rw-r--r--php-fpm.tmpfiles2
-rw-r--r--php-icu-1100-Utilize-the-recommended-way-to-handle-the-icu-namespace.patch303
-rw-r--r--php-icu-1101-Simplify-namespace-access.patch307
-rw-r--r--php.ini.patch14
11 files changed, 1133 insertions, 344 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 02448b35891..fe15399572a 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,13 +1,13 @@
pkgbase = php71
- pkgver = 7.1.16
+ pkgdesc = A general-purpose scripting language that is especially suited to web development (old stable 7.0 series)
+ pkgver = 7.1.26
pkgrel = 1
url = http://www.php.net
+ arch = i686
arch = x86_64
license = PHP
- checkdepends = procps-ng
makedepends = apache
makedepends = aspell
- makedepends = c-client
makedepends = db
makedepends = enchant
makedepends = gd
@@ -27,20 +27,33 @@ pkgbase = php71
makedepends = postfix
makedepends = freetds
makedepends = pcre
- source = https://php.net/distributions/php-7.1.16.tar.xz
+ makedepends = c-client
+ makedepends = tidyhtml
+ source = https://php.net/distributions/php-7.1.26.tar.xz
+ source = https://php.net/distributions/php-7.1.26.tar.xz.asc
source = apache.patch
source = apache.conf
+ source = enchant-2.patch
+ source = freetype2.patch
source = php-fpm.patch
source = php-fpm.tmpfiles
source = php.ini.patch
- source = enchant-2.patch
- sha512sums = 98e96f06a4912cfa6926be2f292ce7120ca893c9b779b2efef4120c1df3580fa427cd58f5e4977edb01a0ae3b85660d6ca79b2bd79b6cd830cd77f6c6588b5ea
- sha512sums = 65ea5cb38c1fc1874b2a4d08bc52443f9ed5dcc92cf99023a74292c78f9074516296f56c768f7efa8a1f0838feac47b356d3da6fdb1199419bebec3a93204ae6
- sha512sums = fc3d711033c8b7ead910826d7c0d4479b481fa9d84c3147b1d33ef9b1e3d3d073a8d17a7c7f66db30d710be1c9b17d2b5536a74a4f05c4ff88b9339e95dd244a
- sha512sums = ef2724cedec46a6955355fc75406efa2895545f2ebcdfcee06ce6f3c9a20f8348a291ac78ab1e384b703095d317f59504b787f21074f841c45e53a98955af0c1
- sha512sums = 209a8b2f9e2e25887c86e126c2761aae329e2bf9456a5de735f3ae264bd2be21e7646cc1954c1417e4c74f8d2d6b0f6081aa74a5af48f6b97484bab0d4e72fcf
- sha512sums = 6cad4077ae1401b2b5395518ffb609055c5591710f141b90cc38c77bc16837d2f1bf7a161c4e64a33eb64b4e48bb3c54f88fcf830c30789d33d8e5cfcd3119db
- sha512sums = 89993be67988f6db09e1102214a41fdb7223274bc6ca71f1defc5fe9548d832485f7133b8ba82860f04da00c7f655d701c7550460c0172a2a2d31ef3f3f96038
+ source = php-icu-1100-Utilize-the-recommended-way-to-handle-the-icu-namespace.patch
+ source = php-icu-1101-Simplify-namespace-access.patch
+ validpgpkeys = A917B1ECDA84AEC2B568FED6F50ABC807BD5DCD0
+ validpgpkeys = 528995BFEDFBA7191D46839EF9BA0ADA31CBD89E
+ validpgpkeys = 1729F83938DA44E27BA0F4D3DBDB397470D12172
+ sha512sums = 3c80dce2d5dcbf6f253ca4ca4e4ce01fdd3a3d31a6e6045f539fefadc1ea3c391d4d4995600a4ff758ab0361e0ec2244e2eaa6591ecb3e9b8e8a9c44f67a5b32
+ sha512sums = 63335127162972b311f4fe5b016471e699056894aebe6cde2cb908b4a345e328dca4eefbe5c1466642d5fe9b47f19e6ed48be4ca14663378cc15d1d02c57a23c
+ sha512sums = f5e5431993c2e0c1806c4edf392030d0b605f4b3c4cebec036e810ff771b2327983f347221735673506e2c91ce2e18ad37ab7600261b684fe29491206171b4f3
+ sha512sums = 30cdc281c6e288cf8a0bf58a0ad74ad5b4e8205d2b0b6ab465fad97d810f7bfae4581ad836712998e834d2e90d38cacd22f19bb01e77fc4c9d200d95613fc669
+ sha512sums = 2d5f3aa71ce7d8da43f0f683f81b06258e3a0d95df4807a8acac91ff89fbe60484ef97856a908bce625b1610d0004767a6a8c622246086afe2f2d464977088b5
+ sha512sums = a664b69aea8c21c50c852f918515d9fe1a931d7f88ec77ec86a20810266515745430d89513ee2e0bb301a29f1fc7ab0d2634076830b4da8ea1e47467fb658678
+ sha512sums = 62d85a59e3dd649caeb04a6b7e3fc94e99a2f03e4357c69697bb187bf1dba205021fe492c5beee7cf2156b3fbd7f447e74a01ed2e7f5fd7b3edc9a77582e89c7
+ sha512sums = fde017c6382d687b80d660253cbe5d581ca886fee0d762bf519b245c6e39677194be542ec26c71c81d104422b444a0fdadd92ac1a17e9ea1e6ec34bfb204ca7d
+ sha512sums = b6ff1c8575c7564ede17ec8c959141a065a9c4e3cba059a1138b9ecc85f23632d7e5980d65742f7fc1ce404ce613f7abb2f5f7a45039d606c9c590ccf3a2301d
+ sha512sums = 70c859feff58650ff4a291b1725bce8f290ac6d92cacc4420d3ead5cbbdbcf567cd0ed4d79fdd8b0435cf6833f7b50fff798b2fae274c5fb1bb37a0984a45f9d
+ sha512sums = 33d40f3ae500cf583519ecfa271e36d727c38ff4ea9547d3d2c4d51c9fadd317ed614a048077ebdb116e3c84c11db95e6455cdfc80d092d217d070c98af56525
pkgname = php71
pkgdesc = A general-purpose scripting language that is especially suited to web development
@@ -48,119 +61,115 @@ pkgname = php71
depends = curl
depends = libzip
depends = pcre
- provides = php=7.1.16
- backup = opt/php71etc/php/php.ini
+ provides = php=7.1.26
+ backup = etc/php71/php.ini
pkgname = php71-cgi
pkgdesc = CGI and FCGI SAPI for PHP
depends = php71
- provides = php-cgi
+ provides = php-cgi=7.1.26
pkgname = php71-apache
pkgdesc = Apache SAPI for PHP
depends = php71
depends = apache
- provides = php-apache
- backup = opt/php71etc/httpd/conf/extra/php7_module.conf
+ backup = etc/httpd/conf/extra/php71_module.conf
pkgname = php71-fpm
pkgdesc = FastCGI Process Manager for PHP
depends = php71
depends = systemd
- provides = php-fpm
options = !emptydirs
- backup = opt/php71etc/php/php-fpm.conf
- backup = opt/php71etc/php/php-fpm.d/www.conf
+ backup = etc/php71/php-fpm.conf
+ backup = etc/php71/php-fpm.d/php-fpm.conf
pkgname = php71-embed
pkgdesc = Embedded PHP SAPI library
depends = php71
- depends = libsystemd
- provides = php-embed
+ provides = php71-embed=7.1.26
options = !emptydirs
pkgname = php71-phpdbg
pkgdesc = Interactive PHP debugger
depends = php71
- provides = php-phpdbg
+ provides = php71-phpdbg=7.1.26
options = !emptydirs
pkgname = php71-dblib
pkgdesc = dblib module for PHP
depends = php71
- depends = freetds
- provides = php-dblib
+ provides = php71-dblib=7.1.26
pkgname = php71-enchant
pkgdesc = enchant module for PHP
depends = php71
depends = enchant
- provides = php-enchant
+ provides = php71-enchant=7.1.26
pkgname = php71-gd
pkgdesc = gd module for PHP
depends = php71
depends = gd
- provides = php-gd
+ provides = php71-gd=7.1.26
pkgname = php71-imap
pkgdesc = imap module for PHP
depends = php71
depends = c-client
- provides = php-imap
+ provides = php71-imap=7.1.26
pkgname = php71-intl
pkgdesc = intl module for PHP
depends = php71
depends = icu
- provides = php-intl
+ provides = php71-intl=7.1.26
pkgname = php71-mcrypt
pkgdesc = mcrypt module for PHP
depends = php71
depends = libmcrypt
- depends = libtool
- provides = php-mcrypt
+ depends = libltdl
+ provides = php71-mcrypt=7.1.26
pkgname = php71-odbc
pkgdesc = ODBC modules for PHP
depends = php71
depends = unixodbc
- provides = php-odbc
+ provides = php71-odbc=7.1.26
pkgname = php71-pgsql
pkgdesc = PostgreSQL modules for PHP
depends = php71
depends = postgresql-libs
- provides = php-pgsql
+ provides = php71-pgsql=7.1.26
pkgname = php71-pspell
pkgdesc = pspell module for PHP
depends = php71
depends = aspell
- provides = php-pspell
+ provides = php71-pspell=7.1.26
pkgname = php71-snmp
pkgdesc = snmp module for PHP
depends = php71
depends = net-snmp
- provides = php-snmp
+ provides = php71-snmp=7.1.26
pkgname = php71-sqlite
pkgdesc = sqlite module for PHP
depends = php71
depends = sqlite
- provides = php-sqlite
+ provides = php71-sqlite=7.1.26
pkgname = php71-tidy
pkgdesc = tidy module for PHP
depends = php71
- depends = tidy
- provides = php-tidy
+ depends = tidyhtml
+ provides = php71-tidy=7.1.26
pkgname = php71-xsl
pkgdesc = xsl module for PHP
depends = php71
depends = libxslt
- provides = php-xsl
+ provides = php71-xsl=7.1.26
diff --git a/PKGBUILD b/PKGBUILD
index 6b05953b53a..00ac7f4e6d1 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,358 +1,434 @@
-# Maintainer: Maxwell Pray a.k.a. Synthead <synthead@gmail.com>
-# Contributor: Pierre Schmitz <pierre@archlinux.de>
+# Maintainer: William Gathoye <william + aur at gathoye dot be>
+# Maintainer: Maxwell Pray a.k.a. Synthead <synthead at gmail dot com>
+# Contributor: Pierre Schmitz <pierre at archlinux dot de>
+# Credit goes also to the maintainers and contributors of other PHP versions in
+# AUR or official Arch Linux repositories. Specific patches might include code
+# from other open source projects. In that case, credit is attributed in the
+# specific commit.
pkgbase=php71
-_pkgbase=php
-pkgname=("$pkgbase"
- "$pkgbase-cgi"
- "$pkgbase-apache"
- "$pkgbase-fpm"
- "$pkgbase-embed"
- "$pkgbase-phpdbg"
- "$pkgbase-dblib"
- "$pkgbase-enchant"
- "$pkgbase-gd"
- "$pkgbase-imap"
- "$pkgbase-intl"
- "$pkgbase-mcrypt"
- "$pkgbase-odbc"
- "$pkgbase-pgsql"
- "$pkgbase-pspell"
- "$pkgbase-snmp"
- "$pkgbase-sqlite"
- "$pkgbase-tidy"
- "$pkgbase-xsl")
-pkgver=7.1.16
+_pkgbase=${pkgbase%71}
+pkgname=(
+ "${pkgbase}"
+ "${pkgbase}-cgi"
+ "${pkgbase}-apache"
+ "${pkgbase}-fpm"
+ "${pkgbase}-embed"
+ "${pkgbase}-phpdbg"
+ "${pkgbase}-dblib"
+ "${pkgbase}-enchant"
+ "${pkgbase}-gd"
+ "${pkgbase}-imap"
+ "${pkgbase}-intl"
+ "${pkgbase}-mcrypt"
+ "${pkgbase}-odbc"
+ "${pkgbase}-pgsql"
+ "${pkgbase}-pspell"
+ "${pkgbase}-snmp"
+ "${pkgbase}-sqlite"
+ "${pkgbase}-tidy"
+ "${pkgbase}-xsl"
+)
+pkgver=7.1.26
+_pkgver=${pkgbase//php}
pkgrel=1
-arch=('x86_64')
-license=('PHP')
+pkgdesc='A general-purpose scripting language that is especially suited to web development (old stable 7.0 series)'
+arch=('i686' 'x86_64')
url='http://www.php.net'
-makedepends=('apache' 'aspell' 'c-client' 'db' 'enchant' 'gd' 'gmp' 'icu' 'libmcrypt' 'libxslt' 'libzip' 'net-snmp'
- 'postgresql-libs' 'sqlite' 'systemd' 'tidy' 'unixodbc' 'curl' 'libtool' 'postfix' 'freetds' 'pcre')
-checkdepends=('procps-ng')
-source=("https://php.net/distributions/${_pkgbase}-${pkgver}.tar.xz"
- 'apache.patch' 'apache.conf' 'php-fpm.patch' 'php-fpm.tmpfiles' 'php.ini.patch' 'enchant-2.patch')
-sha512sums=('98e96f06a4912cfa6926be2f292ce7120ca893c9b779b2efef4120c1df3580fa427cd58f5e4977edb01a0ae3b85660d6ca79b2bd79b6cd830cd77f6c6588b5ea'
- '65ea5cb38c1fc1874b2a4d08bc52443f9ed5dcc92cf99023a74292c78f9074516296f56c768f7efa8a1f0838feac47b356d3da6fdb1199419bebec3a93204ae6'
- 'fc3d711033c8b7ead910826d7c0d4479b481fa9d84c3147b1d33ef9b1e3d3d073a8d17a7c7f66db30d710be1c9b17d2b5536a74a4f05c4ff88b9339e95dd244a'
- 'ef2724cedec46a6955355fc75406efa2895545f2ebcdfcee06ce6f3c9a20f8348a291ac78ab1e384b703095d317f59504b787f21074f841c45e53a98955af0c1'
- '209a8b2f9e2e25887c86e126c2761aae329e2bf9456a5de735f3ae264bd2be21e7646cc1954c1417e4c74f8d2d6b0f6081aa74a5af48f6b97484bab0d4e72fcf'
- '6cad4077ae1401b2b5395518ffb609055c5591710f141b90cc38c77bc16837d2f1bf7a161c4e64a33eb64b4e48bb3c54f88fcf830c30789d33d8e5cfcd3119db'
- '89993be67988f6db09e1102214a41fdb7223274bc6ca71f1defc5fe9548d832485f7133b8ba82860f04da00c7f655d701c7550460c0172a2a2d31ef3f3f96038')
-
-_optdir=/opt/$pkgbase
+license=('PHP')
-prepare() {
- cd ${srcdir}/${_pkgbase}-${pkgver}
+makedepends=(
+ 'apache' 'aspell' 'db' 'enchant' 'gd' 'gmp' 'icu' 'libmcrypt' 'libxslt'
+ 'libzip' 'net-snmp' 'postgresql-libs' 'sqlite' 'systemd' 'tidy' 'unixodbc'
+ 'curl' 'libtool' 'postfix' 'freetds' 'pcre' 'c-client' 'tidyhtml'
+)
+
+source=(
+ "https://php.net/distributions/${_pkgbase}-${pkgver}.tar.xz"{,.asc}
+ 'apache.patch'
+ 'apache.conf'
+ 'enchant-2.patch'
+ 'freetype2.patch'
+ 'php-fpm.patch'
+ 'php-fpm.tmpfiles'
+ 'php.ini.patch'
+ 'php-icu-1100-Utilize-the-recommended-way-to-handle-the-icu-namespace.patch'
+ 'php-icu-1101-Simplify-namespace-access.patch'
+)
+sha512sums=(
+ '3c80dce2d5dcbf6f253ca4ca4e4ce01fdd3a3d31a6e6045f539fefadc1ea3c391d4d4995600a4ff758ab0361e0ec2244e2eaa6591ecb3e9b8e8a9c44f67a5b32'
+ '63335127162972b311f4fe5b016471e699056894aebe6cde2cb908b4a345e328dca4eefbe5c1466642d5fe9b47f19e6ed48be4ca14663378cc15d1d02c57a23c'
+ 'f5e5431993c2e0c1806c4edf392030d0b605f4b3c4cebec036e810ff771b2327983f347221735673506e2c91ce2e18ad37ab7600261b684fe29491206171b4f3'
+ '30cdc281c6e288cf8a0bf58a0ad74ad5b4e8205d2b0b6ab465fad97d810f7bfae4581ad836712998e834d2e90d38cacd22f19bb01e77fc4c9d200d95613fc669'
+ '2d5f3aa71ce7d8da43f0f683f81b06258e3a0d95df4807a8acac91ff89fbe60484ef97856a908bce625b1610d0004767a6a8c622246086afe2f2d464977088b5'
+ 'a664b69aea8c21c50c852f918515d9fe1a931d7f88ec77ec86a20810266515745430d89513ee2e0bb301a29f1fc7ab0d2634076830b4da8ea1e47467fb658678'
+ '62d85a59e3dd649caeb04a6b7e3fc94e99a2f03e4357c69697bb187bf1dba205021fe492c5beee7cf2156b3fbd7f447e74a01ed2e7f5fd7b3edc9a77582e89c7'
+ 'fde017c6382d687b80d660253cbe5d581ca886fee0d762bf519b245c6e39677194be542ec26c71c81d104422b444a0fdadd92ac1a17e9ea1e6ec34bfb204ca7d'
+ 'b6ff1c8575c7564ede17ec8c959141a065a9c4e3cba059a1138b9ecc85f23632d7e5980d65742f7fc1ce404ce613f7abb2f5f7a45039d606c9c590ccf3a2301d'
+ '70c859feff58650ff4a291b1725bce8f290ac6d92cacc4420d3ead5cbbdbcf567cd0ed4d79fdd8b0435cf6833f7b50fff798b2fae274c5fb1bb37a0984a45f9d'
+ '33d40f3ae500cf583519ecfa271e36d727c38ff4ea9547d3d2c4d51c9fadd317ed614a048077ebdb116e3c84c11db95e6455cdfc80d092d217d070c98af56525'
+)
+
+validpgpkeys=(
+ # PGP keys from PHP maintainer (upstream)
+ # src.: https://secure.php.net/downloads.php#gpg-7.1
+ # pub 4096R/7BD5DCD0 2016-05-07
+ # Key fingerprint = A917 B1EC DA84 AEC2 B568 FED6 F50A BC80 7BD5 DCD0
+ # uid Davey Shafik <davey@php.net>
+ #
+ # pub 2048R/31CBD89E 2016-12-08
+ # Key fingerprint = 5289 95BF EDFB A719 1D46 839E F9BA 0ADA 31CB D89E
+ # uid Joe Watkins <krakjoe@php.net>
+ #
+ # pub 4096R/70D12172 2017-04-14 [expires: 2024-04-21]
+ # Key fingerprint = 1729 F839 38DA 44E2 7BA0 F4D3 DBDB 3974 70D1 2172
+ # uid Sara Golemon <pollita@php.net>
+ #
+ # If you trust them, you can import them with
+ # gpg --recv-keys A917B1ECDA84AEC2B568FED6F50ABC807BD5DCD0 528995BFEDFBA7191D46839EF9BA0ADA31CBD89E 1729F83938DA44E27BA0F4D3DBDB397470D12172
+ # Receiving GPG keys might fail with the following error message:
+ # gpg: keyserver receive failed: Connection refused
+ # If this happens, just check your DNS or use another one.
+ 'A917B1ECDA84AEC2B568FED6F50ABC807BD5DCD0'
+ '528995BFEDFBA7191D46839EF9BA0ADA31CBD89E'
+ '1729F83938DA44E27BA0F4D3DBDB397470D12172'
+)
- patch -p0 -i ${srcdir}/apache.patch
- patch -p0 -i ${srcdir}/php-fpm.patch
- patch -p0 -i ${srcdir}/php.ini.patch
- patch -p1 -i ../enchant-2.patch
+prepare() {
+ cd ${_pkgbase}-${pkgver}
+
+ patch -p0 -i ../apache.patch
+ patch -p0 -i ../enchant-2.patch
+ patch -p0 -i ../freetype2.patch
+ patch -p0 -i ../php-fpm.patch
+ patch -p1 -i ../php-icu-1100-Utilize-the-recommended-way-to-handle-the-icu-namespace.patch
+ patch -p1 -i ../php-icu-1101-Simplify-namespace-access.patch
+ patch -p0 -i ../php.ini.patch
}
build() {
- local _phpconfig="--srcdir=../${_pkgbase}-${pkgver} \
- --config-cache \
- --prefix=${_optdir}/usr \
- --sbindir=${_optdir}/usr/bin \
- --sysconfdir=${_optdir}/etc/php \
- --localstatedir=${_optdir}/var \
- --with-layout=GNU \
- --with-config-file-path=${_optdir}/etc/php \
- --with-config-file-scan-dir=${_optdir}/etc/php/conf.d \
- --disable-rpath \
- --mandir=${_optdir}/usr/share/man \
- --without-pear \
- "
-
- local _phpextensions="\
- --enable-bcmath=shared \
- --enable-calendar=shared \
- --enable-dba=shared \
- --enable-exif=shared \
- --enable-ftp=shared \
- --enable-gd-native-ttf \
- --enable-intl=shared \
- --enable-mbstring \
- --enable-shmop=shared \
- --enable-soap=shared \
- --enable-sockets=shared \
- --enable-sysvmsg=shared \
- --enable-sysvsem=shared \
- --enable-sysvshm=shared \
- --enable-zip=shared \
- --with-bz2=shared \
- --with-curl=shared \
- --with-db4=/usr \
- --with-enchant=shared,/usr \
- --with-freetype-dir=/usr \
- --with-gd=shared,/usr \
- --with-gdbm \
- --with-gettext=shared \
- --with-gmp=shared \
- --with-iconv=shared \
- --with-imap-ssl \
- --with-imap=shared \
- --with-kerberos=/usr \
- --with-ldap=shared \
- --with-ldap-sasl \
- --with-libzip \
- --with-mhash \
- --with-mysql-sock=/run/mysqld/mysqld.sock \
- --with-mysqli=shared,mysqlnd \
- --with-openssl \
- --with-pcre-regex=/usr \
- --with-pdo-dblib=shared,/usr \
- --with-pdo-mysql=shared,mysqlnd \
- --with-pdo-odbc=shared,unixODBC,/usr \
- --with-pdo-pgsql=shared \
- --with-pdo-sqlite=shared,/usr \
- --with-pgsql=shared \
- --with-pspell=shared \
- --with-readline \
- --with-snmp=shared \
- --with-mcrypt=shared \
- --with-sqlite3=shared,/usr \
- --with-tidy=shared \
- --with-unixODBC=shared,/usr \
- --with-xmlrpc=shared \
- --with-xsl=shared \
- --with-zlib \
- --enable-pcntl \
- "
-
- EXTENSION_DIR=${_optdir}/usr/lib/php/modules
- export EXTENSION_DIR
-
- [[ -d ${srcdir}/build ]] && rm -r ${srcdir}/build
-
- mkdir ${srcdir}/build
- cd ${srcdir}/build
- ln -s ../${_pkgbase}-${pkgver}/configure
-
- # http://site.icu-project.org/download/61#TOC-Migration-Issues
- CPPFLAGS+=' -DU_USING_ICU_NAMESPACE=1'
-
- ./configure ${_phpconfig} \
- --enable-cgi \
- --enable-fpm \
- --with-fpm-systemd \
- --with-fpm-acl \
- --with-fpm-user=http \
- --with-fpm-group=http \
- --enable-embed=shared \
- ${_phpextensions}
- make
-
- # apache
- # reuse the previous run; this will save us a lot of time
- [[ -d ${srcdir}/build-apache ]] && rm -r ${srcdir}/build-apache
- cp -a ${srcdir}/build ${srcdir}/build-apache
- cd ${srcdir}/build-apache
- ./configure ${_phpconfig} \
- --with-apxs2 \
- ${_phpextensions}
- make
-
- # phpdbg
- [[ -d ${srcdir}/build-phpdbg ]] && rm -r ${srcdir}/build-phpdbg
- cp -a ${srcdir}/build ${srcdir}/build-phpdbg
- cd ${srcdir}/build-phpdbg
- ./configure ${_phpconfig} \
- --enable-phpdbg \
- ${_phpextensions}
- make
+ local phpConfig="\
+ --srcdir=../${_pkgbase}-${pkgver} \
+ --config-cache \
+ --prefix=/usr \
+ --sbindir=/usr/bin \
+ --sysconfdir=/etc/${pkgbase} \
+ --localstatedir=/var \
+ --libdir=/usr/lib/${pkgbase} \
+ --datarootdir=/usr/share/${pkgbase} \
+ --datadir=/usr/share/${pkgbase} \
+ --program-suffix=${pkgbase#php} \
+ --with-layout=GNU \
+ --with-config-file-path=/etc/${pkgbase} \
+ --with-config-file-scan-dir=/etc/${pkgbase}/conf.d \
+ --disable-rpath \
+ --without-pear \
+ "
+
+ local phpExtensions="\
+ --enable-bcmath=shared \
+ --enable-calendar=shared \
+ --enable-dba=shared \
+ --enable-exif=shared \
+ --enable-ftp=shared \
+ --enable-gd-native-ttf \
+ --enable-intl=shared \
+ --enable-mbstring \
+ --enable-shmop=shared \
+ --enable-soap=shared \
+ --enable-sockets=shared \
+ --enable-sysvmsg=shared \
+ --enable-sysvsem=shared \
+ --enable-sysvshm=shared \
+ --enable-zip=shared \
+ --with-bz2=shared \
+ --with-curl=shared \
+ --with-db4=/usr \
+ --with-enchant=shared,/usr \
+ --with-freetype-dir=/usr \
+ --with-gd=shared,/usr \
+ --with-gdbm \
+ --with-gettext=shared \
+ --with-gmp=shared \
+ --with-iconv=shared \
+ --with-imap-ssl \
+ --with-imap=shared \
+ --with-kerberos=/usr \
+ --with-ldap=shared \
+ --with-ldap-sasl \
+ --with-libzip \
+ --with-mcrypt=shared \
+ --with-mhash \
+ --with-mysql-sock=/run/mysqld/mysqld.sock \
+ --with-mysqli=shared,mysqlnd \
+ --with-openssl \
+ --with-pcre-regex=/usr \
+ --with-pdo-dblib=shared,/usr \
+ --with-pdo-mysql=shared,mysqlnd \
+ --with-pdo-odbc=shared,unixODBC,/usr \
+ --with-pdo-pgsql=shared \
+ --with-pdo-sqlite=shared,/usr \
+ --with-pgsql=shared \
+ --with-pspell=shared \
+ --with-readline \
+ --with-snmp=shared \
+ --with-sqlite3=shared,/usr \
+ --with-tidy=shared \
+ --with-unixODBC=shared,/usr \
+ --with-xmlrpc=shared \
+ --with-xsl=shared \
+ --with-zlib \
+ --enable-pcntl \
+ "
+
+ EXTENSION_DIR=/usr/lib/${pkgbase}/modules
+ export EXTENSION_DIR
+
+ mkdir build
+ cd build
+ ln -s ../${_pkgbase}-${pkgver}/configure
+ ./configure ${phpConfig} \
+ --enable-cgi \
+ --enable-fpm \
+ --with-fpm-systemd \
+ --with-fpm-acl \
+ --with-fpm-user=http \
+ --with-fpm-group=http \
+ --enable-embed=shared \
+ ${phpExtensions}
+ make
+ cd ../
+
+ # apache
+ # Reuse the previous configure step in order to save time
+ cp -a build build-apache
+ cd build-apache
+ ./configure ${phpConfig} \
+ --with-apxs2 \
+ ${phpExtensions}
+ make
+ cd ../
+
+ # phpdbg
+ cp -a build build-phpdbg
+ cd build-phpdbg
+ ./configure ${phpConfig} \
+ --enable-phpdbg \
+ ${phpExtensions}
+ make
}
check() {
- cd ${srcdir}/${_pkgbase}-${pkgver}
+ cd ${srcdir}/${_pkgbase}-${pkgver}
- # Check if sendmail was configured correctly (FS#47600)
- ${srcdir}/build/sapi/cli/php -n -r 'echo ini_get("sendmail_path");' | grep -q '/usr/bin/sendmail'
+ # Check if sendmail was configured correctly (FS#47600)
+ ${srcdir}/build/sapi/cli/php -n -r 'echo ini_get("sendmail_path");' | grep -q '/usr/bin/sendmail'
- export REPORT_EXIT_STATUS=1
- export NO_INTERACTION=1
- export SKIP_ONLINE_TESTS=1
- export SKIP_SLOW_TESTS=1
+ export REPORT_EXIT_STATUS=1
+ export NO_INTERACTION=1
+ export SKIP_ONLINE_TESTS=1
+ export SKIP_SLOW_TESTS=1
- ${srcdir}/build/sapi/cli/php -n run-tests.php -n -P {tests,Zend}
+ ${srcdir}/build/sapi/cli/php -n run-tests.php -n -P {tests,Zend}
}
package_php71() {
- pkgdesc='A general-purpose scripting language that is especially suited to web development'
- provides=("${_pkgbase}=${pkgver}")
- depends=('libxml2' 'curl' 'libzip' 'pcre')
- backup=("${_optdir#/}etc/php/php.ini")
-
- cd ${srcdir}/build
- make -j1 INSTALL_ROOT=${pkgdir} install-{modules,cli,build,headers,programs,pharcmd}
- install -D -m644 ${srcdir}/${_pkgbase}-${pkgver}/php.ini-production ${pkgdir}${_optdir}/etc/php/php.ini
- install -d -m755 ${pkgdir}${_optdir}/etc/php/conf.d/
-
- # remove static modules
- rm -f ${pkgdir}${_optdir}/usr/lib/php/modules/*.a
- # remove modules provided by sub packages
- rm -f ${pkgdir}${_optdir}/usr/lib/php/modules/{enchant,gd,imap,intl,mcrypt,odbc,pdo_dblib,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so
- # remove empty directory
- rmdir ${pkgdir}${_optdir}/usr/include/php/include
+ pkgdesc='A general-purpose scripting language that is especially suited to web development'
+ depends=('libxml2' 'curl' 'libzip' 'pcre')
+ provides=("${_pkgbase}=$pkgver")
+ backup=("etc/${pkgbase}/php.ini")
+
+ cd build
+ make -j1 INSTALL_ROOT=${pkgdir} install-{modules,cli,build,headers,programs,pharcmd}
+ install -D -m644 ../${_pkgbase}-${pkgver}/php.ini-production ${pkgdir}/etc/${pkgbase}/php.ini
+ install -d -m755 ${pkgdir}/etc/${pkgbase}/conf.d/
+
+ # Remove static modules
+ rm -f ${pkgdir}/usr/lib/${pkgbase}/modules/*.a
+
+ # Remove modules provided by sub packages
+ rm -f ${pkgdir}/usr/lib/${pkgbase}/modules/{enchant,gd,imap,intl,mcrypt,odbc,pdo_dblib,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so
+
+ # Remove empty directory
+ rmdir ${pkgdir}/usr/include/php/include
+
+ # Move include directory
+ mv ${pkgdir}/usr/include/php ${pkgdir}/usr/include/${pkgbase}
+
+ # Fix phar symlink
+ rm ${pkgdir}/usr/bin/phar
+ ln -sf phar.${pkgbase/php/phar} ${pkgdir}/usr/bin/${pkgbase/php/phar}
+
+ # Rename executables
+ mv ${pkgdir}/usr/bin/phar.{phar,${pkgbase/php/phar}}
+
+ # Rename man pages
+ mv ${pkgdir}/usr/share/man/man1/{phar,${pkgbase/php/phar}}.1
+ mv ${pkgdir}/usr/share/man/man1/phar.{phar,${pkgbase/php/phar}}.1
+
+ # Fix paths in executables
+ sed -i "/^includedir=/c \includedir=/usr/include/${pkgbase}" ${pkgdir}/usr/bin/${pkgbase/php/phpize}
+ sed -i "/^include_dir=/c \include_dir=/usr/include/${pkgbase}" ${pkgdir}/usr/bin/${pkgbase/php/php-config}
+
+ # Make phpize use php-config70
+ sed -i "/^\[ --with-php-config=/c \[ --with-php-config=PATH Path to php-config [${pkgbase/php/php-config}]], ${pkgbase/php/php-config}, no)" ${pkgdir}/usr/lib/${pkgbase}/build/phpize.m4
}
package_php71-cgi() {
- pkgdesc='CGI and FCGI SAPI for PHP'
- provides=('php-cgi')
- depends=("$pkgbase")
+ pkgdesc='CGI and FCGI SAPI for PHP'
+ depends=("${pkgbase}")
+ provides=("${_pkgbase}-cgi=$pkgver")
- cd ${srcdir}/build
- make -j1 INSTALL_ROOT=${pkgdir} install-cgi
+ cd build
+ make INSTALL_ROOT=${pkgdir} install-cgi
}
package_php71-apache() {
- pkgdesc='Apache SAPI for PHP'
- provides=('php-apache')
- depends=("$pkgbase" 'apache')
- backup=("${_optdir#/}etc/httpd/conf/extra/php7_module.conf")
+ pkgdesc='Apache SAPI for PHP'
+ depends=("${pkgbase}" 'apache')
+ backup=("etc/httpd/conf/extra/${pkgbase}_module.conf")
- install -D -m755 ${srcdir}/build-apache/libs/libphp7.so ${pkgdir}/usr/lib/httpd/modules/${pkgbase}.so
- install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/${pkgbase}_module.conf
+ install -D -m755 build-apache/libs/libphp7.so ${pkgdir}/usr/lib/httpd/modules/lib${pkgbase}.so
+ install -D -m644 apache.conf ${pkgdir}/etc/httpd/conf/extra/${pkgbase}_module.conf
}
package_php71-fpm() {
- pkgdesc='FastCGI Process Manager for PHP'
- provides=('php-fpm')
- depends=("$pkgbase" 'systemd')
- backup=("${_optdir#/}etc/php/php-fpm.conf" "${_optdir#/}etc/php/php-fpm.d/www.conf")
- options=('!emptydirs')
-
- cd ${srcdir}/build
- make -j1 INSTALL_ROOT=${pkgdir} install-fpm
- install -D -m644 sapi/fpm/php-fpm.service ${pkgdir}/usr/lib/systemd/system/php71-fpm.service
- install -D -m644 ${srcdir}/php-fpm.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/php71-fpm.conf
+ pkgdesc='FastCGI Process Manager for PHP'
+ depends=("${pkgbase}" 'systemd')
+ backup=("etc/${pkgbase}/php-fpm.conf" "etc/${pkgbase}/php-fpm.d/php-fpm.conf")
+ options=('!emptydirs')
+
+ cd build
+ make INSTALL_ROOT=${pkgdir} install-fpm
+ cd ..
+ install -D -m644 build/sapi/fpm/php-fpm.service ${pkgdir}/usr/lib/systemd/system/${pkgbase}-fpm.service
+ install -D -m644 php-fpm.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/${pkgbase}-fpm.conf
}
package_php71-embed() {
- pkgdesc='Embedded PHP SAPI library'
- provides=('php-embed')
- depends=("$pkgbase" 'libsystemd')
- options=('!emptydirs')
-
- cd ${srcdir}/build
- make -j1 INSTALL_ROOT=${pkgdir} PHP_SAPI=embed install-sapi
+ pkgdesc='Embedded PHP SAPI library'
+ depends=("${pkgbase}")
+ provides=("${pkgbase}-embed=$pkgver")
+ options=('!emptydirs')
+
+ cd build
+ make INSTALL_ROOT=${pkgdir} PHP_SAPI=embed install-sapi
+ mv ${pkgdir}/usr/lib/libphp7.so ${pkgdir}/usr/lib/libphp-${_pkgver}.so
}
package_php71-phpdbg() {
- pkgdesc='Interactive PHP debugger'
- provides=('php-phpdbg')
- depends=("$pkgbase")
- options=('!emptydirs')
+ pkgdesc='Interactive PHP debugger'
+ depends=("${pkgbase}")
+ provides=("${pkgbase}-phpdbg=$pkgver")
+ options=('!emptydirs')
- cd ${srcdir}/build-phpdbg
- make -j1 INSTALL_ROOT=${pkgdir} install-phpdbg
+ cd build-phpdbg
+ make INSTALL_ROOT=${pkgdir} install-phpdbg
}
package_php71-dblib() {
- pkgdesc='dblib module for PHP'
- provides=('php-dblib')
- depends=("$pkgbase" 'freetds')
+ pkgdesc='dblib module for PHP'
+ depends=("${pkgbase}")
+ provides=("${pkgbase}-dblib=$pkgver")
- install -D -m755 ${srcdir}/build/modules/pdo_dblib.so ${pkgdir}${_optdir}/usr/lib/php/modules/pdo_dblib.so
+ install -D -m755 build/modules/pdo_dblib.so ${pkgdir}/usr/lib/${pkgbase}/modules/pdo_dblib.so
}
package_php71-enchant() {
- pkgdesc='enchant module for PHP'
- provides=('php-enchant')
- depends=("$pkgbase" 'enchant')
+ pkgdesc='enchant module for PHP'
+ depends=("${pkgbase}" 'enchant')
+ provides=("${pkgbase}-enchant=$pkgver")
- install -D -m755 ${srcdir}/build/modules/enchant.so ${pkgdir}${_optdir}/usr/lib/php/modules/enchant.so
+ install -D -m755 build/modules/enchant.so ${pkgdir}/usr/lib/${pkgbase}/modules/enchant.so
}
package_php71-gd() {
- pkgdesc='gd module for PHP'
- provides=('php-gd')
- depends=("$pkgbase" 'gd')
+ pkgdesc='gd module for PHP'
+ depends=("${pkgbase}" 'gd')
+ provides=("${pkgbase}-gd=$pkgver")
- install -D -m755 ${srcdir}/build/modules/gd.so ${pkgdir}${_optdir}/usr/lib/php/modules/gd.so
+ install -D -m755 build/modules/gd.so ${pkgdir}/usr/lib/${pkgbase}/modules/gd.so
}
package_php71-imap() {
- pkgdesc='imap module for PHP'
- provides=('php-imap')
- depends=("$pkgbase" 'c-client')
+ pkgdesc='imap module for PHP'
+ depends=("${pkgbase}" 'c-client')
+ provides=("${pkgbase}-imap=$pkgver")
- install -D -m755 ${srcdir}/build/modules/imap.so ${pkgdir}${_optdir}/usr/lib/php/modules/imap.so
+ install -D -m755 build/modules/imap.so ${pkgdir}/usr/lib/${pkgbase}/modules/imap.so
}
package_php71-intl() {
- pkgdesc='intl module for PHP'
- provides=('php-intl')
- depends=("$pkgbase" 'icu')
+ pkgdesc='intl module for PHP'
+ depends=("${pkgbase}" 'icu')
+ provides=("${pkgbase}-intl=$pkgver")
- install -D -m755 ${srcdir}/build/modules/intl.so ${pkgdir}${_optdir}/usr/lib/php/modules/intl.so
+ install -D -m755 build/modules/intl.so ${pkgdir}/usr/lib/${pkgbase}/modules/intl.so
}
package_php71-mcrypt() {
- pkgdesc='mcrypt module for PHP'
- provides=('php-mcrypt')
- depends=("$pkgbase" 'libmcrypt' 'libtool')
+ pkgdesc='mcrypt module for PHP'
+ depends=("${pkgbase}" 'libmcrypt' 'libltdl')
+ provides=("${pkgbase}-mcrypt=$pkgver")
- install -D -m755 ${srcdir}/build/modules/mcrypt.so ${pkgdir}${_optdir}/usr/lib/php/modules/mcrypt.so
+ install -D -m755 build/modules/mcrypt.so ${pkgdir}/usr/lib/${pkgbase}/modules/mcrypt.so
}
package_php71-odbc() {
- pkgdesc='ODBC modules for PHP'
- provides=('php-odbc')
- depends=("$pkgbase" 'unixodbc')
+ pkgdesc='ODBC modules for PHP'
+ depends=("${pkgbase}" 'unixodbc')
+ provides=("${pkgbase}-odbc=$pkgver")
- install -D -m755 ${srcdir}/build/modules/odbc.so ${pkgdir}${_optdir}/usr/lib/php/modules/odbc.so
- install -D -m755 ${srcdir}/build/modules/pdo_odbc.so ${pkgdir}${_optdir}/usr/lib/php/modules/pdo_odbc.so
+ install -D -m755 build/modules/odbc.so ${pkgdir}/usr/lib/${pkgbase}/modules/odbc.so
+ install -D -m755 build/modules/pdo_odbc.so ${pkgdir}/usr/lib/${pkgbase}/modules/pdo_odbc.so
}
package_php71-pgsql() {
- pkgdesc='PostgreSQL modules for PHP'
- provides=('php-pgsql')
- depends=("$pkgbase" 'postgresql-libs')
+ pkgdesc='PostgreSQL modules for PHP'
+ depends=("${pkgbase}" 'postgresql-libs')
+ provides=("${pkgbase}-pgsql=$pkgver")
- install -D -m755 ${srcdir}/build/modules/pgsql.so ${pkgdir}${_optdir}/usr/lib/php/modules/pgsql.so
- install -D -m755 ${srcdir}/build/modules/pdo_pgsql.so ${pkgdir}${_optdir}/usr/lib/php/modules/pdo_pgsql.so
+ install -D -m755 build/modules/pgsql.so ${pkgdir}/usr/lib/${pkgbase}/modules/pgsql.so
+ install -D -m755 build/modules/pdo_pgsql.so ${pkgdir}/usr/lib/${pkgbase}/modules/pdo_pgsql.so
}
package_php71-pspell() {
- pkgdesc='pspell module for PHP'
- provides=('php-pspell')
- depends=("$pkgbase" 'aspell')
+ pkgdesc='pspell module for PHP'
+ depends=("${pkgbase}" 'aspell')
+ provides=("${pkgbase}-pspell=$pkgver")
- install -D -m755 ${srcdir}/build/modules/pspell.so ${pkgdir}${_optdir}/usr/lib/php/modules/pspell.so
+ install -D -m755 build/modules/pspell.so ${pkgdir}/usr/lib/${pkgbase}/modules/pspell.so
}
package_php71-snmp() {
- pkgdesc='snmp module for PHP'
- provides=('php-snmp')
- depends=("$pkgbase" 'net-snmp')
+ pkgdesc='snmp module for PHP'
+ depends=("${pkgbase}" 'net-snmp')
+ provides=("${pkgbase}-snmp=$pkgver")
- install -D -m755 ${srcdir}/build/modules/snmp.so ${pkgdir}${_optdir}/usr/lib/php/modules/snmp.so
+ install -D -m755 build/modules/snmp.so ${pkgdir}/usr/lib/${pkgbase}/modules/snmp.so
}
package_php71-sqlite() {
- pkgdesc='sqlite module for PHP'
- provides=('php-sqlite')
- depends=("$pkgbase" 'sqlite')
+ pkgdesc='sqlite module for PHP'
+ depends=("${pkgbase}" 'sqlite')
+ provides=("${pkgbase}-sqlite=$pkgver")
- install -D -m755 ${srcdir}/build/modules/sqlite3.so ${pkgdir}${_optdir}/usr/lib/php/modules/sqlite3.so
- install -D -m755 ${srcdir}/build/modules/pdo_sqlite.so ${pkgdir}${_optdir}/usr/lib/php/modules/pdo_sqlite.so
+ install -D -m755 build/modules/sqlite3.so ${pkgdir}/usr/lib/${pkgbase}/modules/sqlite3.so
+ install -D -m755 build/modules/pdo_sqlite.so ${pkgdir}/usr/lib/${pkgbase}/modules/pdo_sqlite.so
}
package_php71-tidy() {
- pkgdesc='tidy module for PHP'
- provides=('php-tidy')
- depends=("$pkgbase" 'tidy')
+ pkgdesc='tidy module for PHP'
+ depends=("${pkgbase}" 'tidyhtml')
+ provides=("${pkgbase}-tidy=$pkgver")
- install -D -m755 ${srcdir}/build/modules/tidy.so ${pkgdir}${_optdir}/usr/lib/php/modules/tidy.so
+ install -D -m755 build/modules/tidy.so ${pkgdir}/usr/lib/${pkgbase}/modules/tidy.so
}
package_php71-xsl() {
- pkgdesc='xsl module for PHP'
- provides=('php-xsl')
- depends=("$pkgbase" 'libxslt')
+ pkgdesc='xsl module for PHP'
+ depends=("${pkgbase}" 'libxslt')
+ provides=("${pkgbase}-xsl=$pkgver")
- install -D -m755 ${srcdir}/build/modules/xsl.so ${pkgdir}${_optdir}/usr/lib/php/modules/xsl.so
+ install -D -m755 build/modules/xsl.so ${pkgdir}/usr/lib/${pkgbase}/modules/xsl.so
}
diff --git a/apache.conf b/apache.conf
index e0478fba9e1..dd5acf40b58 100644
--- a/apache.conf
+++ b/apache.conf
@@ -1,7 +1,7 @@
-# Required modules: dir_module, php71_module
+# Required modules: dir_module, php7_module
<IfModule dir_module>
- <IfModule php71_module>
+ <IfModule php7_module>
DirectoryIndex index.php index.html
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
@@ -10,4 +10,4 @@
SetHandler application/x-httpd-php-source
</FilesMatch>
</IfModule>
-</IfModule>
+</IfModule> \ No newline at end of file
diff --git a/apache.patch b/apache.patch
index 81b2cd8f753..aae3e3d9ac9 100644
--- a/apache.patch
+++ b/apache.patch
@@ -10,7 +10,7 @@
fi
--- configure.orig
+++ configure
-@@ -7018,7 +7018,6 @@
+@@ -6919,7 +6919,6 @@
fi
else
diff --git a/enchant-2.patch b/enchant-2.patch
index 93c0ce5c269..e582e54458f 100644
--- a/enchant-2.patch
+++ b/enchant-2.patch
@@ -1,5 +1,5 @@
---- php-7.1.13/ext/enchant/config.m4.orig 2018-01-03 02:32:29.000000000 +0000
-+++ php-7.1.13/ext/enchant/config.m4 2018-01-21 22:10:03.788875780 +0000
+--- ext/enchant/config.m4 2018-01-02 09:50:14.000000000 +0100
++++ ext/enchant/config.m4.new 2018-02-01 12:13:28.801708953 +0100
@@ -14,9 +14,9 @@
ENCHANT_SEARCH_DIRS="/usr/local /usr"
fi
@@ -21,8 +21,8 @@
PHP_ADD_INCLUDE($ENCHANT_INCDIR)
PHP_CHECK_LIBRARY(enchant, enchant_broker_set_param,
[
---- php-7.1.13/configure.orig 2018-01-21 22:03:51.494656374 +0000
-+++ php-7.1.13/configure 2018-01-21 22:12:35.932571143 +0000
+--- configure 2018-01-02 09:51:27.000000000 +0100
++++ configure.new 2018-02-01 12:16:17.950382811 +0100
@@ -29838,9 +29838,9 @@
ENCHANT_SEARCH_DIRS="/usr/local /usr"
fi
@@ -44,9 +44,9 @@
if test -n "$ENCHANT_LIBDIR"; then
if test "$ENCHANT_LIBDIR" != "/usr/$PHP_LIBDIR" && test "$ENCHANT_LIBDIR" != "/usr/lib"; then
---- php-7.2.1/ext/enchant/enchant.c.orig 2018-01-02 22:36:05.000000000 +0000
-+++ php-7.2.1/ext/enchant/enchant.c 2018-01-21 22:34:50.205791491 +0000
-@@ -741,7 +741,7 @@
+--- ext/enchant/enchant.c 2018-01-02 09:50:14.000000000 +0100
++++ ext/enchant/enchant.c.new 2018-02-01 12:19:00.228985343 +0100
+@@ -745,7 +745,7 @@
for (i = 0; i < n_sugg; i++) {
add_next_index_string(sugg, suggs[i]);
}
@@ -55,7 +55,7 @@
}
-@@ -798,7 +798,7 @@
+@@ -802,7 +802,7 @@
add_next_index_string(return_value, suggs[i]);
}
@@ -64,7 +64,7 @@
}
}
/* }}} */
-@@ -818,7 +818,7 @@
+@@ -822,7 +822,7 @@
PHP_ENCHANT_GET_DICT;
@@ -73,7 +73,7 @@
}
/* }}} */
-@@ -856,7 +856,7 @@
+@@ -860,7 +860,7 @@
PHP_ENCHANT_GET_DICT;
diff --git a/freetype2.patch b/freetype2.patch
new file mode 100644
index 00000000000..0585d51363d
--- /dev/null
+++ b/freetype2.patch
@@ -0,0 +1,100 @@
+--- configure.orig
++++ configure
+@@ -34202,23 +34202,36 @@ $as_echo "If configure fails try --with-xpm-dir=<DIR>" >&6; }
+ done
+
+ if test -z "$FREETYPE2_DIR"; then
+- as_fn_error $? "freetype-config not found." "$LINENO" 5
++ for i in $PHP_FREETYPE_DIR /usr/local /usr; do
++ if test -f "$i/bin/pkg-config"; then
++ PKGCONFIG_DIR=$i
++ PKGCONFIG_CONFIG="$i/bin/pkg-config"
++ break
++ fi
++ done
++ if test -z "$PKGCONFIG_DIR"; then
++ as_fn_error $? "freetype-config and pkg-config not found." "$LINENO" 5
++ else
++ FREETYPE2_CFLAGS=`$PKGCONFIG_CONFIG --cflags freetype2`
++ FREETYPE2_LIBS=`$PKGCONFIG_CONFIG --libs freetype2`
++ fi
++ else
++ FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
++ FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
+ fi
+
+- FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
+- FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
+
+
+- for ac_i in $FREETYPE2_CFLAGS; do
+- case $ac_i in
+- -I*)
+- ac_ii=`echo $ac_i|cut -c 3-`
++ for ac_i in $FREETYPE2_CFLAGS; do
++ case $ac_i in
++ -I*)
++ ac_ii=`echo $ac_i|cut -c 3-`
+
+- if test "$ac_ii" != "/usr/include"; then
++ if test "$ac_ii" != "/usr/include"; then
+
+- if test -z "$ac_ii" || echo "$ac_ii" | grep '^/' >/dev/null ; then
+- ai_p=$ac_ii
+- else
++ if test -z "$ac_ii" || echo "$ac_ii" | grep '^/' >/dev/null ; then
++ ai_p=$ac_ii
++ else
+
+ ep_dir=`echo $ac_ii|$SED 's%/*[^/][^/]*/*$%%'`
+
+--- configure.orig
++++ configure
+@@ -35890,23 +35890,34 @@ $as_echo "If configure fails try --with-xpm-dir=<DIR>" >&6; }
+ done
+
+ if test -z "$FREETYPE2_DIR"; then
+- as_fn_error $? "freetype-config not found." "$LINENO" 5
++ for i in $PHP_FREETYPE_DIR /usr/local /usr; do
++ if test -f "$i/bin/pkg-config"; then
++ PKGCONFIG_DIR=$i
++ PKGCONFIG_CONFIG="$i/bin/pkg-config"
++ break
++ fi
++ done
++ if test -z "$PKGCONFIG_DIR"; then
++ as_fn_error $? "freetype-config and pkg-config not found." "$LINENO" 5
++ else
++ FREETYPE2_CFLAGS=`$PKGCONFIG_CONFIG --cflags freetype2`
++ FREETYPE2_LIBS=`$PKGCONFIG_CONFIG --libs freetype2`
++ fi
++ else
++ FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
++ FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
+ fi
+
+- FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
+- FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
++ for ac_i in $FREETYPE2_CFLAGS; do
++ case $ac_i in
++ -I*)
++ ac_ii=`echo $ac_i|cut -c 3-`
+
++ if test "$ac_ii" != "/usr/include"; then
+
+- for ac_i in $FREETYPE2_CFLAGS; do
+- case $ac_i in
+- -I*)
+- ac_ii=`echo $ac_i|cut -c 3-`
+-
+- if test "$ac_ii" != "/usr/include"; then
+-
+- if test -z "$ac_ii" || echo "$ac_ii" | grep '^/' >/dev/null ; then
+- ai_p=$ac_ii
+- else
++ if test -z "$ac_ii" || echo "$ac_ii" | grep '^/' >/dev/null ; then
++ ai_p=$ac_ii
++ else
+
+ ep_dir=`echo $ac_ii|$SED 's%/*[^/][^/]*/*$%%'`
+
diff --git a/php-fpm.patch b/php-fpm.patch
index f13521b76ff..cd0c495511f 100644
--- a/php-fpm.patch
+++ b/php-fpm.patch
@@ -13,13 +13,13 @@
@echo "Installing PHP FPM man page: $(INSTALL_ROOT)$(mandir)/man8/"
--- sapi/fpm/php-fpm.conf.in.orig
+++ sapi/fpm/php-fpm.conf.in
-@@ -14,14 +14,14 @@
+@@ -17,14 +17,14 @@
; Pid file
; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@
; Default Value: none
-;pid = run/php-fpm.pid
-+;pid = /opt/php71/run/php-fpm/php-fpm.pid
-
++;pid = /run/php71-fpm/php-fpm.pid
+
; Error log file
; If it's set to "syslog", log is sent to syslogd instead of being written
; into a local file.
@@ -27,7 +27,7 @@
; Default Value: log/php-fpm.log
-;error_log = log/php-fpm.log
+error_log = syslog
-
+
; syslog_facility is used to specify what type of program is logging the
; message. This lets syslogd specify that messages from different facilities
--- sapi/fpm/www.conf.in.orig
@@ -37,7 +37,7 @@
; '/path/to/unix/socket' - to listen on a unix socket.
; Note: This value is mandatory.
-listen = 127.0.0.1:9000
-+listen = /opt/php71/run/php-fpm/php-fpm.sock
++listen = /run/php70-fpm/php-fpm.sock
; Set listen(2) backlog.
; Default Value: 511 (-1 on FreeBSD and OpenBSD)
@@ -52,7 +52,7 @@
;listen.mode = 0660
; When POSIX Access Control Lists are supported you can set them using
; these options, value is a comma separated list of user/group names.
-@@ -356,7 +356,7 @@
+@@ -352,7 +352,7 @@
; Chdir to this directory at the start.
; Note: relative path can be used.
; Default Value: current directory or / when chroot
@@ -63,12 +63,14 @@
; stderr will be redirected to /dev/null according to FastCGI specs.
--- sapi/fpm/php-fpm.service.in.orig
+++ sapi/fpm/php-fpm.service.in
-@@ -8,7 +8,7 @@
+@@ -4,8 +4,8 @@
[Service]
Type=@php_fpm_systemd@
-PIDFile=@EXPANDED_LOCALSTATEDIR@/run/php-fpm.pid
-+PIDFile=/opt/php71/run/php-fpm/php-fpm.pid
- ExecStart=@EXPANDED_SBINDIR@/php-fpm --nodaemonize --fpm-config @EXPANDED_SYSCONFDIR@/php-fpm.conf
+-ExecStart=@EXPANDED_SBINDIR@/php-fpm --nodaemonize --fpm-config @EXPANDED_SYSCONFDIR@/php-fpm.conf
++PIDFile=/run/php71-fpm/php-fpm.pid
++ExecStart=@sbindir@/php-fpm71 --nodaemonize --fpm-config @sysconfdir@/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID
- PrivateTmp=true
+
+ [Install]
diff --git a/php-fpm.tmpfiles b/php-fpm.tmpfiles
index 1544819f277..a156fd41c09 100644
--- a/php-fpm.tmpfiles
+++ b/php-fpm.tmpfiles
@@ -1 +1 @@
-d /opt/php71/run/php-fpm 755 root root
+d /run/php70-fpm 755 root root \ No newline at end of file
diff --git a/php-icu-1100-Utilize-the-recommended-way-to-handle-the-icu-namespace.patch b/php-icu-1100-Utilize-the-recommended-way-to-handle-the-icu-namespace.patch
new file mode 100644
index 00000000000..e24205504be
--- /dev/null
+++ b/php-icu-1100-Utilize-the-recommended-way-to-handle-the-icu-namespace.patch
@@ -0,0 +1,303 @@
+From 8d35a423838eb462cd39ee535c5d003073cc5f22 Mon Sep 17 00:00:00 2001
+From: Anatol Belski <ab@php.net>
+Date: Sat, 31 Mar 2018 18:51:03 +0200
+Subject: [PATCH] Utilize the recommended way to handle the icu namespace
+
+---
+ ext/intl/breakiterator/breakiterator_class.cpp | 1 +
+ ext/intl/breakiterator/breakiterator_class.h | 2 ++
+ ext/intl/breakiterator/breakiterator_methods.cpp | 2 ++
+ ext/intl/breakiterator/codepointiterator_internal.cpp | 2 ++
+ ext/intl/breakiterator/codepointiterator_internal.h | 3 +++
+ ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp | 3 +++
+ ext/intl/calendar/calendar_class.cpp | 3 +++
+ ext/intl/calendar/calendar_class.h | 2 ++
+ ext/intl/calendar/calendar_methods.cpp | 2 ++
+ ext/intl/calendar/gregoriancalendar_methods.cpp | 7 +++++++
+ ext/intl/common/common_date.cpp | 3 +++
+ ext/intl/common/common_date.h | 2 ++
+ ext/intl/common/common_enum.h | 1 +
+ ext/intl/dateformat/dateformat_format_object.cpp | 6 ++++++
+ ext/intl/dateformat/dateformat_helpers.cpp | 2 ++
+ ext/intl/dateformat/dateformat_helpers.h | 5 +++++
+ ext/intl/intl_convertcpp.h | 2 ++
+ ext/intl/msgformat/msgformat_helpers.cpp | 10 ++++++++++
+ ext/intl/timezone/timezone_class.cpp | 2 ++
+ ext/intl/timezone/timezone_class.h | 2 ++
+ ext/intl/timezone/timezone_methods.cpp | 4 ++++
+ 21 files changed, 66 insertions(+)
+
+--- a/ext/intl/breakiterator/breakiterator_class.cpp
++++ b/ext/intl/breakiterator/breakiterator_class.cpp
+@@ -38,6 +38,7 @@ extern "C" {
+ }
+
+ using PHP::CodePointBreakIterator;
++using U_ICU_NAMESPACE::RuleBasedBreakIterator;
+
+ /* {{{ Global variables */
+ zend_class_entry *BreakIterator_ce_ptr;
+--- a/ext/intl/breakiterator/breakiterator_class.h
++++ b/ext/intl/breakiterator/breakiterator_class.h
+@@ -26,6 +26,8 @@
+
+ #ifndef USE_BREAKITERATOR_POINTER
+ typedef void BreakIterator;
++#else
++using U_ICU_NAMESPACE::BreakIterator;
+ #endif
+
+ typedef struct {
+--- a/ext/intl/breakiterator/breakiterator_methods.cpp
++++ b/ext/intl/breakiterator/breakiterator_methods.cpp
+@@ -32,6 +32,8 @@ extern "C" {
+ }
+
+ using PHP::CodePointBreakIterator;
++using U_ICU_NAMESPACE::BreakIterator;
++using U_ICU_NAMESPACE::Locale;
+
+ U_CFUNC PHP_METHOD(BreakIterator, __construct)
+ {
+--- a/ext/intl/breakiterator/codepointiterator_internal.cpp
++++ b/ext/intl/breakiterator/codepointiterator_internal.cpp
+@@ -33,6 +33,8 @@ typedef union {
+
+ using namespace PHP;
+
++using U_ICU_NAMESPACE::UCharCharacterIterator;
++
+ UOBJECT_DEFINE_RTTI_IMPLEMENTATION(CodePointBreakIterator);
+
+ CodePointBreakIterator::CodePointBreakIterator()
+--- a/ext/intl/breakiterator/codepointiterator_internal.h
++++ b/ext/intl/breakiterator/codepointiterator_internal.h
+@@ -18,8 +18,11 @@
+ #define CODEPOINTITERATOR_INTERNAL_H
+
+ #include <unicode/brkiter.h>
++#include <unicode/unistr.h>
+
+ using U_ICU_NAMESPACE::BreakIterator;
++using U_ICU_NAMESPACE::CharacterIterator;
++using U_ICU_NAMESPACE::UnicodeString;
+
+ namespace PHP {
+
+--- a/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
++++ b/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
+@@ -26,6 +26,9 @@ extern "C" {
+ #include "../intl_convertcpp.h"
+ #include "../intl_common.h"
+
++using U_ICU_NAMESPACE::RuleBasedBreakIterator;
++using U_ICU_NAMESPACE::Locale;
++
+ static inline RuleBasedBreakIterator *fetch_rbbi(BreakIterator_object *bio) {
+ return (RuleBasedBreakIterator*)bio->biter;
+ }
+--- a/ext/intl/calendar/calendar_class.cpp
++++ b/ext/intl/calendar/calendar_class.cpp
+@@ -34,6 +34,9 @@ extern "C" {
+ #include <assert.h>
+ }
+
++using U_ICU_NAMESPACE::GregorianCalendar;
++using U_ICU_NAMESPACE::Locale;
++
+ /* {{{ Global variables */
+ zend_class_entry *Calendar_ce_ptr;
+ zend_class_entry *GregorianCalendar_ce_ptr;
+--- a/ext/intl/calendar/calendar_class.h
++++ b/ext/intl/calendar/calendar_class.h
+@@ -26,6 +26,8 @@
+
+ #ifndef USE_CALENDAR_POINTER
+ typedef void Calendar;
++#else
++using U_ICU_NAMESPACE::Calendar;
+ #endif
+
+ typedef struct {
+--- a/ext/intl/calendar/calendar_methods.cpp
++++ b/ext/intl/calendar/calendar_methods.cpp
+@@ -40,6 +40,8 @@ extern "C" {
+ }
+ #include "../common/common_enum.h"
+
++using U_ICU_NAMESPACE::Locale;
++
+ U_CFUNC PHP_METHOD(IntlCalendar, __construct)
+ {
+ zend_throw_exception( NULL,
+--- a/ext/intl/calendar/gregoriancalendar_methods.cpp
++++ b/ext/intl/calendar/gregoriancalendar_methods.cpp
+@@ -23,6 +23,8 @@
+ #include <unicode/locid.h>
+ #include <unicode/calendar.h>
+ #include <unicode/gregocal.h>
++#include <unicode/ustring.h>
++
+ extern "C" {
+ #include "../php_intl.h"
+ #include "../intl_common.h"
+@@ -34,6 +36,11 @@ extern "C" {
+ #include "zend_exceptions.h"
+ }
+
++using U_ICU_NAMESPACE::GregorianCalendar;
++using U_ICU_NAMESPACE::Locale;
++using U_ICU_NAMESPACE::UnicodeString;
++using U_ICU_NAMESPACE::StringPiece;
++
+ static inline GregorianCalendar *fetch_greg(Calendar_object *co) {
+ return (GregorianCalendar*)co->ucal;
+ }
+--- a/ext/intl/common/common_date.cpp
++++ b/ext/intl/common/common_date.cpp
+@@ -25,4 +25,7 @@
+ #include <ext/date/php_date.h>
+ }
+
++using U_ICU_NAMESPACE::TimeZone;
++using U_ICU_NAMESPACE::UnicodeString;
++
+ #ifndef INFINITY
+--- a/ext/intl/common/common_date.h
++++ b/ext/intl/common/common_date.h
+@@ -28,6 +28,8 @@ U_CDECL_END
+
+ #include <unicode/timezone.h>
+
++using U_ICU_NAMESPACE::TimeZone;
++
+ U_CFUNC TimeZone *timezone_convert_datetimezone(int type, void *object, int is_datetime, intl_error *outside_error, const char *func);
+ U_CFUNC int intl_datetime_decompose(zval *z, double *millis, TimeZone **tz,
+ intl_error *err, const char *func);
+--- a/ext/intl/common/common_enum.h
++++ b/ext/intl/common/common_enum.h
+@@ -75,6 +75,7 @@ U_CFUNC zval *zoi_with_current_get_curre
+ U_CFUNC void zoi_with_current_invalidate_current(zend_object_iterator *iter);
+
+ #ifdef __cplusplus
++using U_ICU_NAMESPACE::StringEnumeration;
+ U_CFUNC void IntlIterator_from_StringEnumeration(StringEnumeration *se, zval *object);
+ #endif
+
+--- a/ext/intl/dateformat/dateformat_format_object.cpp
++++ b/ext/intl/dateformat/dateformat_format_object.cpp
+@@ -33,6 +33,12 @@ extern "C" {
+ #include "../common/common_date.h"
+ }
+
++using U_ICU_NAMESPACE::Locale;
++using U_ICU_NAMESPACE::DateFormat;
++using U_ICU_NAMESPACE::GregorianCalendar;
++using U_ICU_NAMESPACE::StringPiece;
++using U_ICU_NAMESPACE::SimpleDateFormat;
++
+ static const DateFormat::EStyle valid_styles[] = {
+ DateFormat::kNone,
+ DateFormat::kFull,
+--- a/ext/intl/dateformat/dateformat_helpers.cpp
++++ b/ext/intl/dateformat/dateformat_helpers.cpp
+@@ -28,6 +28,8 @@ extern "C" {
+ #include "../calendar/calendar_class.h"
+ }
+
++using U_ICU_NAMESPACE::GregorianCalendar;
++
+ int datefmt_process_calendar_arg(zval* calendar_zv,
+ Locale const& locale,
+ const char *func_name,
+--- a/ext/intl/dateformat/dateformat_helpers.h
++++ b/ext/intl/dateformat/dateformat_helpers.h
+@@ -22,11 +22,16 @@
+ #endif
+
+ #include <unicode/calendar.h>
++#include <unicode/datefmt.h>
+
+ extern "C" {
+ #include "../php_intl.h"
+ }
+
++using U_ICU_NAMESPACE::Locale;
++using U_ICU_NAMESPACE::Calendar;
++using U_ICU_NAMESPACE::DateFormat;
++
+ int datefmt_process_calendar_arg(zval* calendar_zv,
+ Locale const& locale,
+ const char *func_name,
+--- a/ext/intl/intl_convertcpp.h
++++ b/ext/intl/intl_convertcpp.h
+@@ -26,6 +26,8 @@
+ #include <unicode/unistr.h>
+ #include <zend_types.h>
+
++using U_ICU_NAMESPACE::UnicodeString;
++
+ int intl_stringFromChar(UnicodeString &ret, char *str, size_t str_len, UErrorCode *status);
+
+ zend_string* intl_charFromString(const UnicodeString &from, UErrorCode *status);
+--- a/ext/intl/msgformat/msgformat_helpers.cpp
++++ b/ext/intl/msgformat/msgformat_helpers.cpp
+@@ -76,6 +76,16 @@ MessageFormatAdapter::getMessagePattern(
+ #endif
+ U_NAMESPACE_END
+
++using U_ICU_NAMESPACE::Formattable;
++using U_ICU_NAMESPACE::Format;
++using U_ICU_NAMESPACE::DateFormat;
++using U_ICU_NAMESPACE::MessageFormat;
++#ifdef HAS_MESSAGE_PATTERN
++using U_ICU_NAMESPACE::MessagePattern;
++#endif
++using U_ICU_NAMESPACE::MessageFormatAdapter;
++using U_ICU_NAMESPACE::FieldPosition;
++
+ U_CFUNC int32_t umsg_format_arg_count(UMessageFormat *fmt)
+ {
+ int32_t fmt_count = 0;
+--- a/ext/intl/timezone/timezone_class.cpp
++++ b/ext/intl/timezone/timezone_class.cpp
+@@ -37,6 +37,8 @@ extern "C" {
+ #include <ext/date/php_date.h>
+ }
+
++using U_ICU_NAMESPACE::Calendar;
++
+ /* {{{ Global variables */
+ U_CDECL_BEGIN
+ zend_class_entry *TimeZone_ce_ptr = NULL;
+--- a/ext/intl/timezone/timezone_class.h
++++ b/ext/intl/timezone/timezone_class.h
+@@ -29,6 +29,8 @@
+
+ #ifndef USE_TIMEZONE_POINTER
+ typedef void TimeZone;
++#else
++using U_ICU_NAMESPACE::TimeZone;
+ #endif
+
+ typedef struct {
+--- a/ext/intl/timezone/timezone_methods.cpp
++++ b/ext/intl/timezone/timezone_methods.cpp
+@@ -23,6 +23,7 @@
+ #include <unicode/locid.h>
+ #include <unicode/timezone.h>
+ #include <unicode/ustring.h>
++#include <unicode/calendar.h>
+ #include "intl_convertcpp.h"
+
+ #include "../common/common_date.h"
+@@ -37,6 +38,9 @@ extern "C" {
+ }
+ #include "common/common_enum.h"
+
++using U_ICU_NAMESPACE::Locale;
++using U_ICU_NAMESPACE::Calendar;
++
+ U_CFUNC PHP_METHOD(IntlTimeZone, __construct)
+ {
+ zend_throw_exception( NULL,
diff --git a/php-icu-1101-Simplify-namespace-access.patch b/php-icu-1101-Simplify-namespace-access.patch
new file mode 100644
index 00000000000..84e8145ab44
--- /dev/null
+++ b/php-icu-1101-Simplify-namespace-access.patch
@@ -0,0 +1,307 @@
+From d8200e48857aeaf09f7127751efc5632ef7660a7 Mon Sep 17 00:00:00 2001
+From: Anatol Belski <ab@php.net>
+Date: Sun, 1 Apr 2018 01:03:40 +0200
+Subject: [PATCH] Simplify namespace access
+
+The icu namespace is an alias which resolves to the real namespace.
+---
+ ext/intl/breakiterator/breakiterator_class.cpp | 2 +-
+ ext/intl/breakiterator/breakiterator_class.h | 2 +-
+ ext/intl/breakiterator/breakiterator_methods.cpp | 4 ++--
+ ext/intl/breakiterator/codepointiterator_internal.cpp | 2 +-
+ ext/intl/breakiterator/codepointiterator_internal.h | 6 +++---
+ ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp | 4 ++--
+ ext/intl/calendar/calendar_class.cpp | 4 ++--
+ ext/intl/calendar/calendar_class.h | 2 +-
+ ext/intl/calendar/calendar_methods.cpp | 2 +-
+ ext/intl/calendar/gregoriancalendar_methods.cpp | 8 ++++----
+ ext/intl/common/common_date.cpp | 4 ++--
+ ext/intl/common/common_date.h | 2 +-
+ ext/intl/common/common_enum.h | 2 +-
+ ext/intl/dateformat/dateformat_format_object.cpp | 10 +++++-----
+ ext/intl/dateformat/dateformat_helpers.cpp | 2 +-
+ ext/intl/dateformat/dateformat_helpers.h | 6 +++---
+ ext/intl/intl_convertcpp.h | 2 +-
+ ext/intl/msgformat/msgformat_helpers.cpp | 14 +++++++-------
+ ext/intl/timezone/timezone_class.cpp | 2 +-
+ ext/intl/timezone/timezone_class.h | 2 +-
+ ext/intl/timezone/timezone_methods.cpp | 4 ++--
+ 21 files changed, 43 insertions(+), 43 deletions(-)
+
+--- a/ext/intl/breakiterator/breakiterator_class.cpp
++++ b/ext/intl/breakiterator/breakiterator_class.cpp
+@@ -38,7 +38,7 @@ extern "C" {
+ }
+
+ using PHP::CodePointBreakIterator;
+-using U_ICU_NAMESPACE::RuleBasedBreakIterator;
++using icu::RuleBasedBreakIterator;
+
+ /* {{{ Global variables */
+ zend_class_entry *BreakIterator_ce_ptr;
+--- a/ext/intl/breakiterator/breakiterator_class.h
++++ b/ext/intl/breakiterator/breakiterator_class.h
+@@ -27,7 +27,7 @@
+ #ifndef USE_BREAKITERATOR_POINTER
+ typedef void BreakIterator;
+ #else
+-using U_ICU_NAMESPACE::BreakIterator;
++using icu::BreakIterator;
+ #endif
+
+ typedef struct {
+--- a/ext/intl/breakiterator/breakiterator_methods.cpp
++++ b/ext/intl/breakiterator/breakiterator_methods.cpp
+@@ -32,8 +32,8 @@ extern "C" {
+ }
+
+ using PHP::CodePointBreakIterator;
+-using U_ICU_NAMESPACE::BreakIterator;
+-using U_ICU_NAMESPACE::Locale;
++using icu::BreakIterator;
++using icu::Locale;
+
+ U_CFUNC PHP_METHOD(BreakIterator, __construct)
+ {
+--- a/ext/intl/breakiterator/codepointiterator_internal.cpp
++++ b/ext/intl/breakiterator/codepointiterator_internal.cpp
+@@ -33,7 +33,7 @@ typedef union {
+
+ using namespace PHP;
+
+-using U_ICU_NAMESPACE::UCharCharacterIterator;
++using icu::UCharCharacterIterator;
+
+ UOBJECT_DEFINE_RTTI_IMPLEMENTATION(CodePointBreakIterator);
+
+--- a/ext/intl/breakiterator/codepointiterator_internal.h
++++ b/ext/intl/breakiterator/codepointiterator_internal.h
+@@ -20,9 +20,9 @@
+ #include <unicode/brkiter.h>
+ #include <unicode/unistr.h>
+
+-using U_ICU_NAMESPACE::BreakIterator;
+-using U_ICU_NAMESPACE::CharacterIterator;
+-using U_ICU_NAMESPACE::UnicodeString;
++using icu::BreakIterator;
++using icu::CharacterIterator;
++using icu::UnicodeString;
+
+ namespace PHP {
+
+--- a/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
++++ b/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
+@@ -26,8 +26,8 @@ extern "C" {
+ #include "../intl_convertcpp.h"
+ #include "../intl_common.h"
+
+-using U_ICU_NAMESPACE::RuleBasedBreakIterator;
+-using U_ICU_NAMESPACE::Locale;
++using icu::RuleBasedBreakIterator;
++using icu::Locale;
+
+ static inline RuleBasedBreakIterator *fetch_rbbi(BreakIterator_object *bio) {
+ return (RuleBasedBreakIterator*)bio->biter;
+--- a/ext/intl/calendar/calendar_class.cpp
++++ b/ext/intl/calendar/calendar_class.cpp
+@@ -34,8 +34,8 @@ extern "C" {
+ #include <assert.h>
+ }
+
+-using U_ICU_NAMESPACE::GregorianCalendar;
+-using U_ICU_NAMESPACE::Locale;
++using icu::GregorianCalendar;
++using icu::Locale;
+
+ /* {{{ Global variables */
+ zend_class_entry *Calendar_ce_ptr;
+--- a/ext/intl/calendar/calendar_class.h
++++ b/ext/intl/calendar/calendar_class.h
+@@ -27,7 +27,7 @@
+ #ifndef USE_CALENDAR_POINTER
+ typedef void Calendar;
+ #else
+-using U_ICU_NAMESPACE::Calendar;
++using icu::Calendar;
+ #endif
+
+ typedef struct {
+--- a/ext/intl/calendar/calendar_methods.cpp
++++ b/ext/intl/calendar/calendar_methods.cpp
+@@ -40,7 +40,7 @@ extern "C" {
+ }
+ #include "../common/common_enum.h"
+
+-using U_ICU_NAMESPACE::Locale;
++using icu::Locale;
+
+ U_CFUNC PHP_METHOD(IntlCalendar, __construct)
+ {
+--- a/ext/intl/calendar/gregoriancalendar_methods.cpp
++++ b/ext/intl/calendar/gregoriancalendar_methods.cpp
+@@ -36,10 +36,10 @@ extern "C" {
+ #include "zend_exceptions.h"
+ }
+
+-using U_ICU_NAMESPACE::GregorianCalendar;
+-using U_ICU_NAMESPACE::Locale;
+-using U_ICU_NAMESPACE::UnicodeString;
+-using U_ICU_NAMESPACE::StringPiece;
++using icu::GregorianCalendar;
++using icu::Locale;
++using icu::UnicodeString;
++using icu::StringPiece;
+
+ static inline GregorianCalendar *fetch_greg(Calendar_object *co) {
+ return (GregorianCalendar*)co->ucal;
+--- a/ext/intl/common/common_date.cpp
++++ b/ext/intl/common/common_date.cpp
+@@ -25,8 +25,8 @@ extern "C" {
+ #include <ext/date/php_date.h>
+ }
+
+-using U_ICU_NAMESPACE::TimeZone;
+-using U_ICU_NAMESPACE::UnicodeString;
++using icu::TimeZone;
++using icu::UnicodeString;
+
+ #include "zend_portability.h"
+
+--- a/ext/intl/common/common_date.h
++++ b/ext/intl/common/common_date.h
+@@ -28,7 +28,7 @@ U_CDECL_END
+
+ #include <unicode/timezone.h>
+
+-using U_ICU_NAMESPACE::TimeZone;
++using icu::TimeZone;
+
+ U_CFUNC TimeZone *timezone_convert_datetimezone(int type, void *object, int is_datetime, intl_error *outside_error, const char *func);
+ U_CFUNC int intl_datetime_decompose(zval *z, double *millis, TimeZone **tz,
+--- a/ext/intl/common/common_enum.h
++++ b/ext/intl/common/common_enum.h
+@@ -75,7 +75,7 @@ U_CFUNC zval *zoi_with_current_get_curre
+ U_CFUNC void zoi_with_current_invalidate_current(zend_object_iterator *iter);
+
+ #ifdef __cplusplus
+-using U_ICU_NAMESPACE::StringEnumeration;
++using icu::StringEnumeration;
+ U_CFUNC void IntlIterator_from_StringEnumeration(StringEnumeration *se, zval *object);
+ #endif
+
+--- a/ext/intl/dateformat/dateformat_format_object.cpp
++++ b/ext/intl/dateformat/dateformat_format_object.cpp
+@@ -33,11 +33,11 @@ extern "C" {
+ #include "../common/common_date.h"
+ }
+
+-using U_ICU_NAMESPACE::Locale;
+-using U_ICU_NAMESPACE::DateFormat;
+-using U_ICU_NAMESPACE::GregorianCalendar;
+-using U_ICU_NAMESPACE::StringPiece;
+-using U_ICU_NAMESPACE::SimpleDateFormat;
++using icu::Locale;
++using icu::DateFormat;
++using icu::GregorianCalendar;
++using icu::StringPiece;
++using icu::SimpleDateFormat;
+
+ static const DateFormat::EStyle valid_styles[] = {
+ DateFormat::kNone,
+--- a/ext/intl/dateformat/dateformat_helpers.cpp
++++ b/ext/intl/dateformat/dateformat_helpers.cpp
+@@ -28,7 +28,7 @@ extern "C" {
+ #include "../calendar/calendar_class.h"
+ }
+
+-using U_ICU_NAMESPACE::GregorianCalendar;
++using icu::GregorianCalendar;
+
+ int datefmt_process_calendar_arg(zval* calendar_zv,
+ Locale const& locale,
+--- a/ext/intl/dateformat/dateformat_helpers.h
++++ b/ext/intl/dateformat/dateformat_helpers.h
+@@ -28,9 +28,9 @@ extern "C" {
+ #include "../php_intl.h"
+ }
+
+-using U_ICU_NAMESPACE::Locale;
+-using U_ICU_NAMESPACE::Calendar;
+-using U_ICU_NAMESPACE::DateFormat;
++using icu::Locale;
++using icu::Calendar;
++using icu::DateFormat;
+
+ int datefmt_process_calendar_arg(zval* calendar_zv,
+ Locale const& locale,
+--- a/ext/intl/intl_convertcpp.h
++++ b/ext/intl/intl_convertcpp.h
+@@ -26,7 +26,7 @@
+ #include <unicode/unistr.h>
+ #include <zend_types.h>
+
+-using U_ICU_NAMESPACE::UnicodeString;
++using icu::UnicodeString;
+
+ int intl_stringFromChar(UnicodeString &ret, char *str, size_t str_len, UErrorCode *status);
+
+--- a/ext/intl/msgformat/msgformat_helpers.cpp
++++ b/ext/intl/msgformat/msgformat_helpers.cpp
+@@ -76,15 +76,15 @@ MessageFormatAdapter::getMessagePattern(
+ #endif
+ U_NAMESPACE_END
+
+-using U_ICU_NAMESPACE::Formattable;
+-using U_ICU_NAMESPACE::Format;
+-using U_ICU_NAMESPACE::DateFormat;
+-using U_ICU_NAMESPACE::MessageFormat;
++using icu::Formattable;
++using icu::Format;
++using icu::DateFormat;
++using icu::MessageFormat;
+ #ifdef HAS_MESSAGE_PATTERN
+-using U_ICU_NAMESPACE::MessagePattern;
++using icu::MessagePattern;
+ #endif
+-using U_ICU_NAMESPACE::MessageFormatAdapter;
+-using U_ICU_NAMESPACE::FieldPosition;
++using icu::MessageFormatAdapter;
++using icu::FieldPosition;
+
+ U_CFUNC int32_t umsg_format_arg_count(UMessageFormat *fmt)
+ {
+--- a/ext/intl/timezone/timezone_class.cpp
++++ b/ext/intl/timezone/timezone_class.cpp
+@@ -37,7 +37,7 @@ extern "C" {
+ #include <ext/date/php_date.h>
+ }
+
+-using U_ICU_NAMESPACE::Calendar;
++using icu::Calendar;
+
+ /* {{{ Global variables */
+ U_CDECL_BEGIN
+--- a/ext/intl/timezone/timezone_class.h
++++ b/ext/intl/timezone/timezone_class.h
+@@ -30,7 +30,7 @@
+ #ifndef USE_TIMEZONE_POINTER
+ typedef void TimeZone;
+ #else
+-using U_ICU_NAMESPACE::TimeZone;
++using icu::TimeZone;
+ #endif
+
+ typedef struct {
+--- a/ext/intl/timezone/timezone_methods.cpp
++++ b/ext/intl/timezone/timezone_methods.cpp
+@@ -38,8 +38,8 @@ extern "C" {
+ }
+ #include "common/common_enum.h"
+
+-using U_ICU_NAMESPACE::Locale;
+-using U_ICU_NAMESPACE::Calendar;
++using icu::Locale;
++using icu::Calendar;
+
+ U_CFUNC PHP_METHOD(IntlTimeZone, __construct)
+ {
diff --git a/php.ini.patch b/php.ini.patch
index 62634ad3fd8..faa94793b01 100644
--- a/php.ini.patch
+++ b/php.ini.patch
@@ -1,18 +1,13 @@
--- php.ini-production.orig
+++ php.ini-production
-@@ -733,7 +733,7 @@
-
+@@ -734,5 +734,5 @@
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
-; extension_dir = "./"
-+extension_dir = "/opt/php71/usr/lib/php/modules/"
++extension_dir = "/usr/lib/php71/modules/"
; On windows:
; extension_dir = "ext"
-
-@@ -883,47 +883,44 @@
- ; If you only provide the name of the extension, PHP will look for it in its
- ; default extension directory.
- ;
+@@ -886,41 +886,38 @@
-; Windows Extensions
-; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5+)
-; extension folders as well as the separate PECL DLL download (PHP 5+).
@@ -92,6 +87,3 @@
+;extension=xmlrpc.so
+;extension=xsl.so
+extension=zip.so
-
- ;;;;;;;;;;;;;;;;;;;
- ; Module Settings ;