diff options
author | Pedro Junior | 2018-08-27 23:49:32 -0300 |
---|---|---|
committer | Pedro Junior | 2018-08-27 23:49:32 -0300 |
commit | f4ff53a4908aac5e771f11523eb74eb593aea649 (patch) | |
tree | a9c448c0df3502097c13aca71d3bf499f98c1519 | |
download | aur-f4ff53a4908aac5e771f11523eb74eb593aea649.tar.gz |
Initial commit
Signed-off-by: Pedro Junior <vjuniorv@gmail.com>
-rw-r--r-- | .SRCINFO | 176 | ||||
-rw-r--r-- | PKGBUILD | 389 | ||||
-rw-r--r-- | apache.conf | 13 | ||||
-rw-r--r-- | apache.patch | 20 | ||||
-rw-r--r-- | enchant-2.patch | 84 | ||||
-rw-r--r-- | php-fpm.patch | 76 | ||||
-rw-r--r-- | php-fpm.tmpfiles | 1 | ||||
-rw-r--r-- | php-freetype-2.9.1.patch | 233 | ||||
-rw-r--r-- | php-icu-1100-Utilize-the-recommended-way-to-handle-the-icu-namespace.patch | 303 | ||||
-rw-r--r-- | php-icu-1101-Simplify-namespace-access.patch | 307 | ||||
-rw-r--r-- | php.ini.patch | 97 |
11 files changed, 1699 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..aeceea8b1752 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,176 @@ +pkgbase = php70-noconflict + pkgdesc = php 7.0 compiled as to not conflict with php 7.1+ + pkgver = 7.0.31 + pkgrel = 1 + url = http://www.php.net + arch = i686 + arch = x86_64 + license = PHP + makedepends = apache + makedepends = aspell + makedepends = c-client + makedepends = db + makedepends = enchant + makedepends = gd + makedepends = gmp + makedepends = icu + makedepends = libmcrypt + makedepends = libxslt + makedepends = libzip + makedepends = net-snmp + makedepends = postgresql-libs + makedepends = sqlite + makedepends = systemd + makedepends = tidy + makedepends = unixodbc + makedepends = curl + makedepends = libtool + makedepends = freetds + makedepends = pcre + source = https://php.net/distributions/php-7.0.31.tar.xz + source = https://php.net/distributions/php-7.0.31.tar.xz.asc + source = apache.patch + source = apache.conf + source = enchant-2.patch + source = php-fpm.patch + source = php-fpm.tmpfiles + source = php.ini.patch + source = php-icu-1100-Utilize-the-recommended-way-to-handle-the-icu-namespace.patch + source = php-icu-1101-Simplify-namespace-access.patch + source = php-freetype-2.9.1.patch + validpgpkeys = 1A4E8B7277C42E53DBA9C7B9BCAA30EA9C0D5763 + validpgpkeys = 6E4F6AB321FDC07F2C332E3AC2BF0BC433CFC8B3 + sha512sums = be09b810d63d0aa82ec193686f26cb2a76c16064f90a59ae5ade152cff196ece67a7e8bf1e640bf43913309c968c398231384b0b11be2b4429dd4672bcfce43e + sha512sums = 9bce62166ab26d2218a4ecc5caa7241d3fd8bed0c5e0ea86e424dc99b3bd1c7e5bc47fbc117e23fb143d10ff8d4f352909712254ab6bc610c4150f27ae668dff + sha512sums = f5e5431993c2e0c1806c4edf392030d0b605f4b3c4cebec036e810ff771b2327983f347221735673506e2c91ce2e18ad37ab7600261b684fe29491206171b4f3 + sha512sums = 30cdc281c6e288cf8a0bf58a0ad74ad5b4e8205d2b0b6ab465fad97d810f7bfae4581ad836712998e834d2e90d38cacd22f19bb01e77fc4c9d200d95613fc669 + sha512sums = 2d5f3aa71ce7d8da43f0f683f81b06258e3a0d95df4807a8acac91ff89fbe60484ef97856a908bce625b1610d0004767a6a8c622246086afe2f2d464977088b5 + sha512sums = e567dbe8b348364c0efb2d96492d4747e96f835adc2b3cb0c1563049fe6cabe9b1fde8ba24b690fb5d64339673e3088b2336f8cb5aa2c85e2f9fa50efd665865 + sha512sums = fde017c6382d687b80d660253cbe5d581ca886fee0d762bf519b245c6e39677194be542ec26c71c81d104422b444a0fdadd92ac1a17e9ea1e6ec34bfb204ca7d + sha512sums = a98bba8d648853d653946c7a379ef62760282d8856fc1f79f84d66ac3c2082ef62c2fc0ed6a6762b50560ac60168fcdf946536a99131d397e89e906ee855419c + sha512sums = 70c859feff58650ff4a291b1725bce8f290ac6d92cacc4420d3ead5cbbdbcf567cd0ed4d79fdd8b0435cf6833f7b50fff798b2fae274c5fb1bb37a0984a45f9d + sha512sums = 33d40f3ae500cf583519ecfa271e36d727c38ff4ea9547d3d2c4d51c9fadd317ed614a048077ebdb116e3c84c11db95e6455cdfc80d092d217d070c98af56525 + sha512sums = 0a06189f6fb3513cd2dcf9ddb590360475e2dd9a7aa8b13ab66c389c1ed40ce2361681f017cd3c6219f5b40a0a9d4978e57ca3ee4bacb7657db3285136fd2875 + +pkgname = php70-noconflict + pkgdesc = A general-purpose scripting language that is especially suited to web development + depends = libxml2 + depends = curl + depends = libzip + depends = pcre + provides = php=7.0.31 + backup = etc/php70/php.ini + +pkgname = php70-cgi-noconflict + pkgdesc = CGI and FCGI SAPI for PHP + depends = php70-noconflict + provides = php-cgi=7.0.31 + +pkgname = php70-apache-noconflict + pkgdesc = Apache SAPI for PHP + depends = php70-noconflict + depends = apache + provides = php-apache=7.0.31 + backup = etc/httpd/conf/extra/php70_module.conf + +pkgname = php70-fpm-noconflict + pkgdesc = FastCGI Process Manager for PHP + depends = php70-noconflict + depends = systemd + provides = php-fpm=7.0.31 + options = !emptydirs + backup = etc/php70/php-fpm.conf + backup = etc/php70/php-fpm.d/www.conf + +pkgname = php70-embed-noconflict + pkgdesc = Embedded PHP SAPI library + depends = php70-noconflict + depends = libsystemd + provides = php-embed=7.0.31 + options = !emptydirs + +pkgname = php70-phpdbg-noconflict + pkgdesc = Interactive PHP debugger + depends = php70-noconflict + provides = php-phpdbg=7.0.31 + options = !emptydirs + +pkgname = php70-dblib-noconflict + pkgdesc = dblib module for PHP + depends = php70-noconflict + depends = freetds + provides = php-dblib=7.0.31 + +pkgname = php70-enchant-noconflict + pkgdesc = enchant module for PHP + depends = php70-noconflict + depends = enchant + provides = php-enchant=7.0.31 + +pkgname = php70-gd-noconflict + pkgdesc = gd module for PHP + depends = php70-noconflict + depends = gd + provides = php-gd=7.0.31 + +pkgname = php70-imap-noconflict + pkgdesc = imap module for PHP + depends = php70-noconflict + depends = c-client + provides = php-imap=7.0.31 + +pkgname = php70-intl-noconflict + pkgdesc = intl module for PHP + depends = php70-noconflict + depends = icu + provides = php-intl=7.0.31 + +pkgname = php70-mcrypt-noconflict + pkgdesc = mcrypt module for PHP + depends = php70-noconflict + depends = libmcrypt + depends = libtool + provides = php-mcrypt=7.0.31 + +pkgname = php70-odbc-noconflict + pkgdesc = ODBC modules for PHP + depends = php70-noconflict + depends = unixodbc + provides = php-odbc=7.0.31 + +pkgname = php70-pgsql-noconflict + pkgdesc = PostgreSQL modules for PHP + depends = php70-noconflict + depends = postgresql-libs + provides = php-pgsql=7.0.31 + +pkgname = php70-pspell-noconflict + pkgdesc = pspell module for PHP + depends = php70-noconflict + depends = aspell + provides = php-pspell=7.0.31 + +pkgname = php70-snmp-noconflict + pkgdesc = snmp module for PHP + depends = php70-noconflict + depends = net-snmp + provides = php-snmp=7.0.31 + +pkgname = php70-sqlite-noconflict + pkgdesc = sqlite module for PHP + depends = php70-noconflict + depends = sqlite + provides = php-sqlite=7.0.31 + +pkgname = php70-tidy-noconflict + pkgdesc = tidy module for PHP + depends = php70-noconflict + depends = tidy + provides = php-tidy=7.0.31 + +pkgname = php70-xsl-noconflict + pkgdesc = xsl module for PHP + depends = php70-noconflict + depends = libxslt + provides = php-xsl=7.0.31 + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..0f0075e344b7 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,389 @@ +# Maintainer: Pedro Junior <pedro@sysnet.net.br> +# PHP 7.0 version of the original 7.1 package from Michael Taboada. + +pkgbase=php70-noconflict +_pkgbase=${pkgbase%70-noconflict} +_realpkg=${pkgbase%-noconflict} +pkgname=("${pkgbase}" + "${_realpkg}-"{cgi,apache,fpm,embed,phpdbg,dblib,enchant,gd,imap,intl,mcrypt,odbc,pgsql,pspell,snmp,sqlite,tidy,xsl}"-noconflict") +pkgver=7.0.31 +pkgrel=1 +pkgdesc="php 7.0 compiled as to not conflict with php 7.1+" +arch=('i686' 'x86_64') +license=('PHP') +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' 'freetds' 'pcre') +#checkdepends=('procps-ng') + +validpgpkeys=( + '1A4E8B7277C42E53DBA9C7B9BCAA30EA9C0D5763' + '6E4F6AB321FDC07F2C332E3AC2BF0BC433CFC8B3' +) + +source=( + "https://php.net/distributions/${_pkgbase}-${pkgver}.tar.xz"{,.asc} + 'apache.patch' + 'apache.conf' + 'enchant-2.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' + 'php-freetype-2.9.1.patch' +) +sha512sums=( + 'be09b810d63d0aa82ec193686f26cb2a76c16064f90a59ae5ade152cff196ece67a7e8bf1e640bf43913309c968c398231384b0b11be2b4429dd4672bcfce43e' + '9bce62166ab26d2218a4ecc5caa7241d3fd8bed0c5e0ea86e424dc99b3bd1c7e5bc47fbc117e23fb143d10ff8d4f352909712254ab6bc610c4150f27ae668dff' + 'f5e5431993c2e0c1806c4edf392030d0b605f4b3c4cebec036e810ff771b2327983f347221735673506e2c91ce2e18ad37ab7600261b684fe29491206171b4f3' + '30cdc281c6e288cf8a0bf58a0ad74ad5b4e8205d2b0b6ab465fad97d810f7bfae4581ad836712998e834d2e90d38cacd22f19bb01e77fc4c9d200d95613fc669' + '2d5f3aa71ce7d8da43f0f683f81b06258e3a0d95df4807a8acac91ff89fbe60484ef97856a908bce625b1610d0004767a6a8c622246086afe2f2d464977088b5' + 'e567dbe8b348364c0efb2d96492d4747e96f835adc2b3cb0c1563049fe6cabe9b1fde8ba24b690fb5d64339673e3088b2336f8cb5aa2c85e2f9fa50efd665865' + 'fde017c6382d687b80d660253cbe5d581ca886fee0d762bf519b245c6e39677194be542ec26c71c81d104422b444a0fdadd92ac1a17e9ea1e6ec34bfb204ca7d' + 'a98bba8d648853d653946c7a379ef62760282d8856fc1f79f84d66ac3c2082ef62c2fc0ed6a6762b50560ac60168fcdf946536a99131d397e89e906ee855419c' + '70c859feff58650ff4a291b1725bce8f290ac6d92cacc4420d3ead5cbbdbcf567cd0ed4d79fdd8b0435cf6833f7b50fff798b2fae274c5fb1bb37a0984a45f9d' + '33d40f3ae500cf583519ecfa271e36d727c38ff4ea9547d3d2c4d51c9fadd317ed614a048077ebdb116e3c84c11db95e6455cdfc80d092d217d070c98af56525' + '0a06189f6fb3513cd2dcf9ddb590360475e2dd9a7aa8b13ab66c389c1ed40ce2361681f017cd3c6219f5b40a0a9d4978e57ca3ee4bacb7657db3285136fd2875' +) + +prepare() { + cd ${srcdir}/${_pkgbase}-${pkgver} + + patch -p0 -i ${srcdir}/apache.patch + patch -p0 -i ${srcdir}/php-fpm.patch + patch -p0 -i ${srcdir}/php.ini.patch + patch -p0 -i ${srcdir}/enchant-2.patch + patch -p1 -i ${srcdir}/php-icu-1100-Utilize-the-recommended-way-to-handle-the-icu-namespace.patch + patch -p1 -i ${srcdir}/php-icu-1101-Simplify-namespace-access.patch + patch -p1 -i ${srcdir}/php-freetype-2.9.1.patch +} + +build() { + local _phpconfig="--srcdir=../${_pkgbase}-${pkgver} \ + --config-cache \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --sysconfdir=/etc/${_realpkg} \ + --localstatedir=/var \ + --libdir=/usr/lib/${_realpkg} \ + --datarootdir=/usr/share/${_realpkg} \ + --datadir=/usr/share/${_realpkg} \ + --program-suffix=${_realpkg#php} \ + --with-layout=GNU \ + --with-config-file-path=/etc/${_realpkg} \ + --with-config-file-scan-dir=/etc/${_realpkg}/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/${_realpkg}/modules + export EXTENSION_DIR + mkdir ${srcdir}/build + cd ${srcdir}/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 + + # apache + # reuse the previous run; this will save us a lot of time + cp -a ${srcdir}/build ${srcdir}/build-apache + cd ${srcdir}/build-apache + ./configure ${_phpconfig} \ + --with-apxs2 \ + ${_phpextensions} + make + + # phpdbg + cp -a ${srcdir}/build ${srcdir}/build-phpdbg + cd ${srcdir}/build-phpdbg + ./configure ${_phpconfig} \ + --enable-phpdbg \ + ${_phpextensions} + make +} + +#check() { +# 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' +# +# 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} +#} + +package_php70-noconflict() { + pkgdesc='A general-purpose scripting language that is especially suited to web development' + depends=('libxml2' 'curl' 'libzip' 'pcre') + backup=("etc/${_realpkg}/php.ini") + provides=("${_pkgbase}=${pkgver}") + + 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}/etc/${_realpkg}/php.ini + install -d -m755 ${pkgdir}/etc/${_realpkg}/conf.d/ + + # remove static modules + rm -f ${pkgdir}/usr/lib/${_realpkg}/modules/*.a + # remove modules provided by sub packages + rm -f ${pkgdir}/usr/lib/${_realpkg}/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/${_realpkg} + +# fix phar symlink + rm ${pkgdir}/usr/bin/phar + ln -sf phar.${_realpkg/php/phar} ${pkgdir}/usr/bin/${_realpkg/php/phar} + + # rename executables + mv ${pkgdir}/usr/bin/phar.{phar,${_realpkg/php/phar}} + + # rename man pages + mv ${pkgdir}/usr/share/man/man1/{phar,${_realpkg/php/phar}}.1 + mv ${pkgdir}/usr/share/man/man1/phar.{phar,${_realpkg/php/phar}}.1 + + # fix paths in executables + sed -i "/^includedir=/c \includedir=/usr/include/${_realpkg}" ${pkgdir}/usr/bin/${_realpkg/php/phpize} + sed -i "/^include_dir=/c \include_dir=/usr/include/${_realpkg}" ${pkgdir}/usr/bin/${_realpkg/php/php-config} + + # make phpize use php-config70 + sed -i "/^\[ --with-php-config=/c \[ --with-php-config=PATH Path to php-config [${_realpkg/php/php-config}]], ${_realpkg/php/php-config}, no)" ${pkgdir}/usr/lib/${_realpkg}/build/phpize.m4 +} + +package_php70-cgi-noconflict() { + pkgdesc='CGI and FCGI SAPI for PHP' + depends=("${pkgbase}") + provides=("${_pkgbase}-cgi=${pkgver}") + + cd ${srcdir}/build + make -j1 INSTALL_ROOT=${pkgdir} install-cgi +} + +package_php70-apache-noconflict() { + pkgdesc='Apache SAPI for PHP' + depends=("${pkgbase}" 'apache') + backup=("etc/httpd/conf/extra/${_realpkg}_module.conf") + provides=("${_pkgbase}-apache=${pkgver}") + echo "# End of LoadModule in httpd.conf - see ArchWiki Apache HTTP Server" + echo "LoadModule php7_module modules/libphp70.so" + echo "AddHandler php7-script .php" + echo "# End of Include List" + echo "Include conf/extra/php70_module.conf" + install -D -m755 ${srcdir}/build-apache/libs/libphp7.so ${pkgdir}/usr/lib/httpd/modules/lib${_realpkg}.so + install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/${_realpkg}_module.conf +} + +package_php70-fpm-noconflict() { + pkgdesc='FastCGI Process Manager for PHP' + depends=("${pkgbase}" 'systemd') + backup=("etc/${_realpkg}/php-fpm.conf" "etc/${_realpkg}/php-fpm.d/www.conf") + options=('!emptydirs') + provides=("${_pkgbase}-fpm=${pkgver}") + + cd ${srcdir}/build + make -j1 INSTALL_ROOT=${pkgdir} install-fpm + install -D -m644 sapi/fpm/php-fpm.service ${pkgdir}/usr/lib/systemd/system/${_realpkg}-fpm.service + install -D -m644 ${srcdir}/php-fpm.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/${_realpkg}-fpm.conf +} + +package_php70-embed-noconflict() { + pkgdesc='Embedded PHP SAPI library' + depends=("${pkgbase}" 'libsystemd') + options=('!emptydirs') + provides=("${_pkgbase}-embed=${pkgver}") + + cd ${srcdir}/build + make -j1 INSTALL_ROOT=${pkgdir} PHP_SAPI=embed install-sapi +# move libphp7.so to libphp-70.so -- note well: this is to prevent ldconfig +# from complaining about libphp7.so not being a symbolic link if another php7 is installed. +mv ${pkgdir}/usr/lib/libphp7.so ${pkgdir}/usr/lib/libphp-70.so +} + +package_php70-phpdbg-noconflict() { + pkgdesc='Interactive PHP debugger' + depends=("${pkgbase}") + options=('!emptydirs') + provides=("${_pkgbase}-phpdbg=${pkgver}") + + cd ${srcdir}/build-phpdbg + make -j1 INSTALL_ROOT=${pkgdir} install-phpdbg +} + +package_php70-dblib-noconflict() { + pkgdesc='dblib module for PHP' + depends=("${pkgbase}" 'freetds') + provides=("${_pkgbase}-dblib=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/pdo_dblib.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_dblib.so +} + +package_php70-enchant-noconflict() { + pkgdesc='enchant module for PHP' + depends=("${pkgbase}" 'enchant') + provides=("${_pkgbase}-enchant=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/enchant.so ${pkgdir}/usr/lib/${_realpkg}/modules/enchant.so +} + +package_php70-gd-noconflict() { + pkgdesc='gd module for PHP' + depends=("${pkgbase}" 'gd') + provides=("${_pkgbase}-gd=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/gd.so ${pkgdir}/usr/lib/${_realpkg}/modules/gd.so +} + +package_php70-imap-noconflict() { + pkgdesc='imap module for PHP' + depends=("${pkgbase}" 'c-client') + provides=("${_pkgbase}-imap=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/imap.so ${pkgdir}/usr/lib/${_realpkg}/modules/imap.so +} + +package_php70-intl-noconflict() { + pkgdesc='intl module for PHP' + depends=("${pkgbase}" 'icu') + provides=("${_pkgbase}-intl=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/intl.so ${pkgdir}/usr/lib/${_realpkg}/modules/intl.so +} + +package_php70-mcrypt-noconflict() { + pkgdesc='mcrypt module for PHP' + depends=("${pkgbase}" 'libmcrypt' 'libtool') + provides=("${_pkgbase}-mcrypt=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/mcrypt.so ${pkgdir}/usr/lib/${_realpkg}/modules/mcrypt.so +} + +package_php70-odbc-noconflict() { + pkgdesc='ODBC modules for PHP' + depends=("${pkgbase}" 'unixodbc') + provides=("${_pkgbase}-odbc=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/odbc.so ${pkgdir}/usr/lib/${_realpkg}/modules/odbc.so + install -D -m755 ${srcdir}/build/modules/pdo_odbc.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_odbc.so +} + +package_php70-pgsql-noconflict() { + pkgdesc='PostgreSQL modules for PHP' + depends=("${pkgbase}" 'postgresql-libs') + provides=("${_pkgbase}-pgsql=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/pgsql.so ${pkgdir}/usr/lib/${_realpkg}/modules/pgsql.so + install -D -m755 ${srcdir}/build/modules/pdo_pgsql.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_pgsql.so +} + +package_php70-pspell-noconflict() { + pkgdesc='pspell module for PHP' + depends=("${pkgbase}" 'aspell') + provides=("${_pkgbase}-pspell=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/pspell.so ${pkgdir}/usr/lib/${_realpkg}/modules/pspell.so +} + +package_php70-snmp-noconflict() { + pkgdesc='snmp module for PHP' + depends=("${pkgbase}" 'net-snmp') + provides=("${_pkgbase}-snmp=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/snmp.so ${pkgdir}/usr/lib/${_realpkg}/modules/snmp.so +} + +package_php70-sqlite-noconflict() { + pkgdesc='sqlite module for PHP' + depends=("${pkgbase}" 'sqlite') + provides=("${_pkgbase}-sqlite=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/sqlite3.so ${pkgdir}/usr/lib/${_realpkg}/modules/sqlite3.so + install -D -m755 ${srcdir}/build/modules/pdo_sqlite.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_sqlite.so +} + +package_php70-tidy-noconflict() { + pkgdesc='tidy module for PHP' + depends=("${pkgbase}" 'tidy') + provides=("${_pkgbase}-tidy=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/tidy.so ${pkgdir}/usr/lib/${_realpkg}/modules/tidy.so +} + +package_php70-xsl-noconflict() { + pkgdesc='xsl module for PHP' + depends=("${pkgbase}" 'libxslt') + provides=("${_pkgbase}-xsl=${pkgver}") + + install -D -m755 ${srcdir}/build/modules/xsl.so ${pkgdir}/usr/lib/${_realpkg}/modules/xsl.so +} + diff --git a/apache.conf b/apache.conf new file mode 100644 index 000000000000..dd5acf40b589 --- /dev/null +++ b/apache.conf @@ -0,0 +1,13 @@ +# Required modules: dir_module, php7_module + +<IfModule dir_module> + <IfModule php7_module> + DirectoryIndex index.php index.html + <FilesMatch "\.php$"> + SetHandler application/x-httpd-php + </FilesMatch> + <FilesMatch "\.phps$"> + SetHandler application/x-httpd-php-source + </FilesMatch> + </IfModule> +</IfModule>
\ No newline at end of file diff --git a/apache.patch b/apache.patch new file mode 100644 index 000000000000..aae3e3d9ac96 --- /dev/null +++ b/apache.patch @@ -0,0 +1,20 @@ +--- sapi/apache2handler/config.m4.orig ++++ sapi/apache2handler/config.m4 +@@ -122,7 +122,6 @@ + PHP_BUILD_THREAD_SAFE + fi + else +- APACHE_THREADED_MPM=`$APXS_HTTPD -V | grep 'threaded:.*yes'` + if test -n "$APACHE_THREADED_MPM"; then + PHP_BUILD_THREAD_SAFE + fi +--- configure.orig ++++ configure +@@ -6919,7 +6919,6 @@ + + fi + else +- APACHE_THREADED_MPM=`$APXS_HTTPD -V | grep 'threaded:.*yes'` + if test -n "$APACHE_THREADED_MPM"; then + + enable_maintainer_zts=yes diff --git a/enchant-2.patch b/enchant-2.patch new file mode 100644 index 000000000000..e582e54458fe --- /dev/null +++ b/enchant-2.patch @@ -0,0 +1,84 @@ +--- 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 + for i in $ENCHANT_SEARCH_DIRS; do +- if test -f $i/include/enchant/enchant.h; then ++ if test -f $i/include/enchant-2/enchant.h; then + ENCHANT_DIR=$i +- ENCHANT_INCDIR=$i/include/enchant ++ ENCHANT_INCDIR=$i/include/enchant-2 + elif test -f $i/include/enchant.h; then + ENCHANT_DIR=$i + ENCHANT_INCDIR=$i/include +@@ -31,7 +31,7 @@ + + AC_DEFINE(HAVE_ENCHANT,1,[ ]) + PHP_SUBST(ENCHANT_SHARED_LIBADD) +- PHP_ADD_LIBRARY_WITH_PATH(enchant, $ENCHANT_LIBDIR, ENCHANT_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(enchant-2, $ENCHANT_LIBDIR, ENCHANT_SHARED_LIBADD) + PHP_ADD_INCLUDE($ENCHANT_INCDIR) + PHP_CHECK_LIBRARY(enchant, enchant_broker_set_param, + [ +--- 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 + for i in $ENCHANT_SEARCH_DIRS; do +- if test -f $i/include/enchant/enchant.h; then ++ if test -f $i/include/enchant-2/enchant.h; then + ENCHANT_DIR=$i +- ENCHANT_INCDIR=$i/include/enchant ++ ENCHANT_INCDIR=$i/include/enchant-2 + elif test -f $i/include/enchant.h; then + ENCHANT_DIR=$i + ENCHANT_INCDIR=$i/include +@@ -29862,7 +29862,7 @@ + + + if test "$ext_shared" = "yes"; then +- ENCHANT_SHARED_LIBADD="-lenchant $ENCHANT_SHARED_LIBADD" ++ ENCHANT_SHARED_LIBADD="-lenchant-2 $ENCHANT_SHARED_LIBADD" + if test -n "$ENCHANT_LIBDIR"; then + + if test "$ENCHANT_LIBDIR" != "/usr/$PHP_LIBDIR" && test "$ENCHANT_LIBDIR" != "/usr/lib"; then +--- 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]); + } +- enchant_dict_free_suggestions(pdict->pdict, suggs); ++ enchant_dict_free_string_list(pdict->pdict, suggs); + } + + +@@ -802,7 +802,7 @@ + add_next_index_string(return_value, suggs[i]); + } + +- enchant_dict_free_suggestions(pdict->pdict, suggs); ++ enchant_dict_free_string_list(pdict->pdict, suggs); + } + } + /* }}} */ +@@ -822,7 +822,7 @@ + + PHP_ENCHANT_GET_DICT; + +- enchant_dict_add_to_personal(pdict->pdict, word, wordlen); ++ enchant_dict_add(pdict->pdict, word, wordlen); + } + /* }}} */ + +@@ -860,7 +860,7 @@ + + PHP_ENCHANT_GET_DICT; + +- RETURN_BOOL(enchant_dict_is_in_session(pdict->pdict, word, wordlen)); ++ RETURN_BOOL(enchant_dict_is_added(pdict->pdict, word, wordlen)); + } + /* }}} */ + diff --git a/php-fpm.patch b/php-fpm.patch new file mode 100644 index 000000000000..6c19d0763b72 --- /dev/null +++ b/php-fpm.patch @@ -0,0 +1,76 @@ +--- sapi/fpm/Makefile.frag.orig ++++ sapi/fpm/Makefile.frag +@@ -15,8 +15,8 @@ + else \ + echo "Installing PHP FPM defconfig: $(INSTALL_ROOT)$(sysconfdir)/" && \ + $(mkinstalldirs) $(INSTALL_ROOT)$(sysconfdir)/php-fpm.d; \ +- $(INSTALL_DATA) sapi/fpm/php-fpm.conf $(INSTALL_ROOT)$(sysconfdir)/php-fpm.conf.default; \ +- $(INSTALL_DATA) sapi/fpm/www.conf $(INSTALL_ROOT)$(sysconfdir)/php-fpm.d/www.conf.default; \ ++ $(INSTALL_DATA) sapi/fpm/php-fpm.conf $(INSTALL_ROOT)$(sysconfdir)/php-fpm.conf; \ ++ $(INSTALL_DATA) sapi/fpm/www.conf $(INSTALL_ROOT)$(sysconfdir)/php-fpm.d/www.conf; \ + fi + + @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 @@ + ; Pid file + ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ + ; Default Value: none +-;pid = run/php-fpm.pid ++;pid = /run/php70-fpm/php-fpm.pid + + ; Error log file + ; If it's set to "syslog", log is sent to syslogd instead of being written + ; in a local file. + ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ + ; 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 ++++ sapi/fpm/www.conf.in +@@ -33,7 +33,7 @@ + ; (IPv6 and IPv4-mapped) on a specific port; + ; '/path/to/unix/socket' - to listen on a unix socket. + ; Note: This value is mandatory. +-listen = 127.0.0.1:9000 ++listen = /run/php70-fpm/php-fpm.sock + + ; Set listen(2) backlog. + ; Default Value: 511 (-1 on FreeBSD and OpenBSD) +@@ -44,8 +44,8 @@ + ; BSD-derived systems allow connections regardless of permissions. + ; Default Values: user and group are set as the running user + ; mode is set to 0660 +-;listen.owner = @php_fpm_user@ +-;listen.group = @php_fpm_group@ ++listen.owner = @php_fpm_user@ ++listen.group = @php_fpm_group@ + ;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. +@@ -352,7 +352,7 @@ + ; Chdir to this directory at the start. + ; Note: relative path can be used. + ; Default Value: current directory or / when chroot +-;chdir = /var/www ++;chdir = /srv/http + + ; Redirect worker stdout and stderr into main error log. If not set, stdout and + ; stderr will be redirected to /dev/null according to FastCGI specs. +--- sapi/fpm/php-fpm.service.in.orig ++++ sapi/fpm/php-fpm.service.in +@@ -4,8 +4,8 @@ + + [Service] + Type=@php_fpm_systemd@ +-PIDFile=@EXPANDED_LOCALSTATEDIR@/run/php-fpm.pid +-ExecStart=@EXPANDED_SBINDIR@/php-fpm --nodaemonize --fpm-config @EXPANDED_SYSCONFDIR@/php-fpm.conf ++PIDFile=/run/php70-fpm/php-fpm.pid ++ExecStart=@sbindir@/php-fpm70 --nodaemonize --fpm-config @sysconfdir@/php-fpm.conf + ExecReload=/bin/kill -USR2 $MAINPID + + [Install] diff --git a/php-fpm.tmpfiles b/php-fpm.tmpfiles new file mode 100644 index 000000000000..a156fd41c09a --- /dev/null +++ b/php-fpm.tmpfiles @@ -0,0 +1 @@ +d /run/php70-fpm 755 root root
\ No newline at end of file diff --git a/php-freetype-2.9.1.patch b/php-freetype-2.9.1.patch new file mode 100644 index 000000000000..02dfd9ce3cd4 --- /dev/null +++ b/php-freetype-2.9.1.patch @@ -0,0 +1,233 @@ +--- a/ext/gd/config.m4 2018-04-24 11:09:54.000000000 -0400 ++++ b/ext/gd/config.m4 2018-05-04 15:18:49.867283889 -0400 +@@ -186,21 +186,36 @@ + AC_DEFUN([PHP_GD_FREETYPE2],[ + if test "$PHP_FREETYPE_DIR" != "no"; then + +- for i in $PHP_FREETYPE_DIR /usr/local /usr; do +- if test -f "$i/bin/freetype-config"; then +- FREETYPE2_DIR=$i +- FREETYPE2_CONFIG="$i/bin/freetype-config" +- break ++ AC_PATH_PROG(PKG_CONFIG, pkg-config, no) ++ AC_MSG_CHECKING(for freetype2) ++ ++ if test -x "$PKG_CONFIG" && $PKG_CONFIG --exists freetype2 ; then ++ ++ FREETYPE2_CFLAGS=`$PKG_CONFIG --cflags freetype2` ++ FREETYPE2_LIBS=`$PKG_CONFIG --libs freetype2` ++ FREETYPE2_VERSION=`$PKG_CONFIG --modversion freetype2` ++ FREETYPE2_DIR="found" ++ ++ AC_MSG_RESULT(from pkgconfig: version $FREETYPE2_VERSION found) ++ else ++ ++ for i in $PHP_FREETYPE_DIR /usr/local /usr; do ++ if test -f "$i/bin/freetype-config"; then ++ FREETYPE2_DIR=$i ++ FREETYPE2_CONFIG="$i/bin/freetype-config" ++ break ++ fi ++ done ++ ++ if test -z "$FREETYPE2_DIR"; then ++ AC_MSG_ERROR([freetype-config not found.]) + fi +- done + +- if test -z "$FREETYPE2_DIR"; then +- AC_MSG_ERROR([freetype-config not found.]) ++ FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags` ++ FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs` ++ AC_MSG_RESULT(found via freetype-config) + fi + +- FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags` +- FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs` +- + PHP_EVAL_INCLINE($FREETYPE2_CFLAGS) + PHP_EVAL_LIBLINE($FREETYPE2_LIBS, GD_SHARED_LIBADD) + AC_DEFINE(HAVE_LIBFREETYPE,1,[ ]) +--- a/configure 2018-04-24 11:10:05.000000000 -0400 ++++ b/configure 2018-05-04 15:18:45.626367913 -0400 +@@ -34348,21 +34348,79 @@ + + if test "$PHP_FREETYPE_DIR" != "no"; then + +- for i in $PHP_FREETYPE_DIR /usr/local /usr; do +- if test -f "$i/bin/freetype-config"; then +- FREETYPE2_DIR=$i +- FREETYPE2_CONFIG="$i/bin/freetype-config" +- break ++ # Extract the first word of "pkg-config", so it can be a program name with args. ++set dummy pkg-config; ac_word=$2 ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } ++if ${ac_cv_path_PKG_CONFIG+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ case $PKG_CONFIG in ++ [\\/]* | ?:[\\/]*) ++ ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ++ ;; ++ *) ++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ++ ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" ++ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++ done ++IFS=$as_save_IFS ++ ++ test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" ++ ;; ++esac ++fi ++PKG_CONFIG=$ac_cv_path_PKG_CONFIG ++if test -n "$PKG_CONFIG"; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 ++$as_echo "$PKG_CONFIG" >&6; } ++else ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++fi ++ ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for freetype2" >&5 ++$as_echo_n "checking for freetype2... " >&6; } ++ ++ ++ if test -x "$PKG_CONFIG" && $PKG_CONFIG --exists freetype2 ; then ++ ++ FREETYPE2_CFLAGS=`$PKG_CONFIG --cflags freetype2` ++ FREETYPE2_LIBS=`$PKG_CONFIG --libs freetype2` ++ FREETYPE2_VERSION=`$PKG_CONFIG --modversion freetype2` ++ FREETYPE2_DIR="found" ++ ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: from pkgconfig: version $FREETYPE2_VERSION found" >&5 ++$as_echo "from pkgconfig: version $FREETYPE2_VERSION found" >&6; } ++ else ++ ++ for i in $PHP_FREETYPE_DIR /usr/local /usr; do ++ if test -f "$i/bin/freetype-config"; then ++ FREETYPE2_DIR=$i ++ FREETYPE2_CONFIG="$i/bin/freetype-config" ++ break ++ fi ++ done ++ ++ if test -z "$FREETYPE2_DIR"; then ++ as_fn_error $? "freetype-config not found." "$LINENO" 5 + fi +- done + +- if test -z "$FREETYPE2_DIR"; then +- as_fn_error $? "freetype-config not found." "$LINENO" 5 ++ FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags` ++ FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs` ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: found via freetype-config" >&5 ++$as_echo "found via freetype-config" >&6; } + fi + +- FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags` +- FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs` +- + + for ac_i in $FREETYPE2_CFLAGS; do + case $ac_i in +@@ -36019,21 +36076,78 @@ + + if test "$PHP_FREETYPE_DIR" != "no"; then + +- for i in $PHP_FREETYPE_DIR /usr/local /usr; do +- if test -f "$i/bin/freetype-config"; then +- FREETYPE2_DIR=$i +- FREETYPE2_CONFIG="$i/bin/freetype-config" +- break ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for freetype2" >&5 ++$as_echo_n "checking for freetype2... " >&6; } ++ # Extract the first word of "pkg-config", so it can be a program name with args. ++set dummy pkg-config; ac_word=$2 ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } ++if ${ac_cv_path_PKG_CONFIG+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ case $PKG_CONFIG in ++ [\\/]* | ?:[\\/]*) ++ ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ++ ;; ++ *) ++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ++ ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" ++ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++ done ++IFS=$as_save_IFS ++ ++ test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" ++ ;; ++esac ++fi ++PKG_CONFIG=$ac_cv_path_PKG_CONFIG ++if test -n "$PKG_CONFIG"; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 ++$as_echo "$PKG_CONFIG" >&6; } ++else ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++fi ++ ++ ++ ++ if test -x "$PKG_CONFIG" && $PKG_CONFIG --exists freetype2 ; then ++ ++ FREETYPE2_CFLAGS=`$PKG_CONFIG --cflags freetype2` ++ FREETYPE2_LIBS=`$PKG_CONFIG --libs freetype2` ++ FREETYPE2_VERSION=`$PKG_CONFIG --modversion freetype2` ++ ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: from pkgconfig: version $FREETYPE_VERSON found" >&5 ++$as_echo "from pkgconfig: version $FREETYPE_VERSON found" >&6; } ++ else ++ ++ for i in $PHP_FREETYPE_DIR /usr/local /usr; do ++ if test -f "$i/bin/freetype-config"; then ++ FREETYPE2_DIR=$i ++ FREETYPE2_CONFIG="$i/bin/freetype-config" ++ break ++ fi ++ done ++ ++ if test -z "$FREETYPE2_DIR"; then ++ as_fn_error $? "freetype-config not found." "$LINENO" 5 + fi +- done + +- if test -z "$FREETYPE2_DIR"; then +- as_fn_error $? "freetype-config not found." "$LINENO" 5 ++ FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags` ++ FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs` ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: found via freetype-config" >&5 ++$as_echo "found via freetype-config" >&6; } + fi + +- FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags` +- FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs` +- + + for ac_i in $FREETYPE2_CFLAGS; do + case $ac_i in 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 000000000000..e24205504be8 --- /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 000000000000..84e8145ab44c --- /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 new file mode 100644 index 000000000000..66f1c0c5bd20 --- /dev/null +++ b/php.ini.patch @@ -0,0 +1,97 @@ +--- php.ini-production.orig ++++ php.ini-production +@@ -718,7 +718,7 @@ + + ; Directory in which the loadable extensions (modules) reside. + ; http://php.net/extension-dir +-; extension_dir = "./" ++extension_dir = "/usr/lib/php70/modules/" + ; On windows: + ; extension_dir = "ext" + +@@ -868,47 +868,44 @@ + ; If you only provide the name of the extension, PHP will look for it in its + ; default extension directory. + ; +-; Windows Extensions +-; Note that ODBC support is built in, so no dll is needed for it. +-; 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+). +-; Be sure to appropriately set the extension_dir directive. +-; +-;extension=php_bz2.dll +-;extension=php_curl.dll +-;extension=php_fileinfo.dll +-;extension=php_ftp.dll +-;extension=php_gd2.dll +-;extension=php_gettext.dll +-;extension=php_gmp.dll +-;extension=php_intl.dll +-;extension=php_imap.dll +-;extension=php_interbase.dll +-;extension=php_ldap.dll +-;extension=php_mbstring.dll +-;extension=php_exif.dll ; Must be after mbstring as it depends on it +-;extension=php_mysqli.dll +-;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client +-;extension=php_openssl.dll +-;extension=php_pdo_firebird.dll +-;extension=php_pdo_mysql.dll +-;extension=php_pdo_oci.dll +-;extension=php_pdo_odbc.dll +-;extension=php_pdo_pgsql.dll +-;extension=php_pdo_sqlite.dll +-;extension=php_pgsql.dll +-;extension=php_shmop.dll +- +-; The MIBS data available in the PHP distribution must be installed. +-; See http://www.php.net/manual/en/snmp.installation.php +-;extension=php_snmp.dll +- +-;extension=php_soap.dll +-;extension=php_sockets.dll +-;extension=php_sqlite3.dll +-;extension=php_tidy.dll +-;extension=php_xmlrpc.dll +-;extension=php_xsl.dll ++;extension=bcmath.so ++;extension=bz2.so ++;extension=calendar.so ++extension=curl.so ++;extension=dba.so ++;extension=enchant.so ++;extension=exif.so ++;extension=ftp.so ++;extension=gd.so ++;extension=gettext.so ++;extension=gmp.so ++;extension=iconv.so ++;extension=imap.so ++;extension=intl.so ++;extension=ldap.so ++;extension=mcrypt.so ++;extension=mysqli.so ++;extension=odbc.so ++;zend_extension=opcache.so ++;extension=pdo_dblib.so ++;extension=pdo_mysql.so ++;extension=pdo_odbc.so ++;extension=pdo_pgsql.so ++;extension=pdo_sqlite.so ++;extension=pgsql.so ++;extension=pspell.so ++;extension=shmop.so ++;extension=snmp.so ++;extension=soap.so ++;extension=sockets.so ++;extension=sqlite3.so ++;extension=sysvmsg.so ++;extension=sysvsem.so ++;extension=sysvshm.so ++;extension=tidy.so ++;extension=xmlrpc.so ++;extension=xsl.so ++extension=zip.so + + ;;;;;;;;;;;;;;;;;;; + ; Module Settings ; |